:root{--gold:#c9a73f;--gold-dark:#9d7b20;--ink:#17130b;--ink-2:#2a2418;--cream:#f8f5ec;--line:#e9e1cc;--white:#fff;--danger:#b94747;--shadow:0 14px 40px rgba(52,39,9,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Tahoma,"Segoe UI",Arial,sans-serif;background:linear-gradient(180deg,#fbfaf6 0,#f6f1e5 100%);color:var(--ink);direction:rtl;min-height:100vh}
a{color:inherit}.top{min-height:82px;background:linear-gradient(135deg,#17130b,#2b2415);color:#fff;padding:10px 22px;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid rgba(201,167,63,.7);position:sticky;top:0;z-index:20;box-shadow:0 8px 30px rgba(0,0,0,.10)}
.brand{display:flex;align-items:center;gap:14px}.brand img{width:66px;height:58px;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.12))}.brand-text{display:flex;flex-direction:column;gap:3px}.brand-text strong{font-size:20px;color:#f3df9c}.brand-text small{font-size:12px;color:#d8d0bd}.user-box{display:flex;align-items:center;gap:12px;font-size:13px}.user-box a{color:#f3df9c;text-decoration:none;border:1px solid rgba(201,167,63,.35);padding:8px 11px;border-radius:9px}.user-box a:hover{background:rgba(201,167,63,.12)}
.wrap{display:grid;grid-template-columns:235px 1fr;min-height:calc(100vh - 82px)}.side{background:#211c12;padding:22px 14px;border-left:1px solid #392f18}.side-title{color:#8f815f;font-size:12px;padding:0 12px 10px}.side a{display:block;color:#eee7d6;text-decoration:none;padding:12px 14px;border-radius:11px;margin:5px 0;transition:.18s}.side a:hover,.side a.active{background:linear-gradient(90deg,rgba(201,167,63,.18),rgba(201,167,63,.07));color:#f7dfa0;border-right:3px solid var(--gold)}
.main{padding:24px;min-width:0}.page-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px}.page-head h1{margin:4px 0 0;font-size:25px}.eyebrow{color:var(--gold-dark);font-weight:700;font-size:12px;letter-spacing:.3px}.muted{color:#7a715e}.footer{text-align:center;color:#9b8c69;font-size:12px;padding:28px 8px 10px}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card,.panel{background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow)}.card{position:relative;overflow:hidden}.card:before{content:"";position:absolute;right:0;top:0;width:5px;height:100%;background:linear-gradient(var(--gold),#e7cf7a)}.card b{font-size:27px;display:block;margin-top:10px;color:#7b5b10}.panel h2,.panel h3{color:#302715}
.btn{background:linear-gradient(135deg,var(--gold-dark),var(--gold));color:#fff;border:0;border-radius:11px;padding:10px 15px;text-decoration:none;display:inline-block;cursor:pointer;font-weight:700;box-shadow:0 6px 16px rgba(157,123,32,.18)}.btn:hover{filter:brightness(.97);transform:translateY(-1px)}.btn.red{background:#9f2940}.btn.gray{background:#6b6558}.btn-wide{width:100%;padding:12px}
table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden}th,td{padding:12px;border-bottom:1px solid #eee7d8;text-align:right}th{background:#f7f1e2;color:#66521d;font-size:13px}tr:last-child td{border-bottom:0}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #ddd4c0;border-radius:10px;margin-top:6px;background:#fff;color:var(--ink);outline:none;transition:.15s}input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,167,63,.12)}label{font-size:13px;color:#4d4637}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.badge{padding:5px 9px;border-radius:999px;background:#f0ece2;font-size:12px}.ok{background:#dff4e6}.warn{background:#fff1c7}.danger{background:#f7d9df}.alert{padding:11px 12px;border-radius:10px;margin:12px 0;font-size:13px}
.login-page{display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 10%,rgba(201,167,63,.12),transparent 34%),linear-gradient(135deg,#f9f7f0,#efe8d6)}.login-shell{width:min(940px,100%);display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border:1px solid #e9dfc5;border-radius:26px;overflow:hidden;box-shadow:0 28px 80px rgba(58,44,10,.16)}.login-brand-panel{background:linear-gradient(150deg,#17130b,#302715);color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:42px;min-height:560px;position:relative}.login-brand-panel:after{content:"";position:absolute;inset:18px;border:1px solid rgba(201,167,63,.28);border-radius:18px;pointer-events:none}.login-logo{width:min(330px,86%);max-height:320px;object-fit:contain;filter:drop-shadow(0 12px 22px rgba(0,0,0,.18))}.login-brand-panel h1{color:#f1d77f;margin:14px 0 8px}.login-brand-panel p{color:#d6cdb8;max-width:340px;line-height:1.8}.login-card{padding:54px 46px;display:flex;flex-direction:column;justify-content:center}.login-card h2{font-size:28px;margin:6px 0}.login-form{display:grid;gap:18px;margin-top:22px}
@media(max-width:900px){.wrap{grid-template-columns:1fr}.side{display:flex;overflow:auto;padding:10px;background:#211c12}.side-title{display:none}.side a{white-space:nowrap;margin:0 3px}.cards{grid-template-columns:1fr 1fr}.grid2{grid-template-columns:1fr}.login-shell{grid-template-columns:1fr}.login-brand-panel{min-height:300px;padding:28px}.login-logo{width:230px;max-height:210px}.login-card{padding:34px 28px}}
@media(max-width:560px){.top{padding:9px 12px}.brand img{width:52px;height:48px}.brand-text strong{font-size:16px}.brand-text small{display:none}.user-box span{display:none}.main{padding:13px}.cards{grid-template-columns:1fr}.page-head h1{font-size:22px}.login-page{padding:12px}.login-shell{border-radius:20px}.login-brand-panel{min-height:245px}.login-logo{width:190px}.login-card{padding:28px 22px}}
.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.btn.small{padding:7px 10px;font-size:12px}.btn.light{background:#f2ead5;color:#6f5616;box-shadow:none;border:1px solid #dfcf9f}.status-tentative{background:#fff1c7;color:#7d5e00}.status-confirmed{background:#dcebf8;color:#15547b}.status-paid{background:#dff4e6;color:#1d6b38}.status-completed{background:#ece9e2;color:#5d574b}.status-cancelled{background:#f7d9df;color:#8e2637}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.detail{background:#faf7ef;border:1px solid #eee3c8;border-radius:12px;padding:12px}.detail small{display:block;color:#84775e;margin-bottom:5px}.detail strong{font-size:15px}.toolbar{display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:14px}.toolbar form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.cal-head{padding:9px;text-align:center;color:#76633a;font-weight:700}.cal-day{min-height:116px;background:#fff;border:1px solid #e9e1cc;border-radius:13px;padding:8px;position:relative}.cal-day.other{opacity:.42}.cal-day.today{outline:2px solid #c9a73f}.cal-num{font-weight:700;color:#6b5a35;margin-bottom:6px}.cal-event{display:block;text-decoration:none;padding:5px 7px;border-radius:8px;margin:4px 0;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-event.morning{background:#fff1c7;color:#725200}.cal-event.evening{background:#e8e1f6;color:#49377c}.cal-event.full{background:#dcebf8;color:#15547b}.summary-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.print-only{display:none}.contract{max-width:900px;margin:auto;background:#fff;padding:30px;border:1px solid #e6dcc3}.contract-logo{display:block;width:190px;max-height:140px;object-fit:contain;margin:0 auto 12px}.contract h2{text-align:center;color:#7b5b10}.contract table{margin:18px 0}.signatures{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:60px;text-align:center}.receipt{max-width:650px;margin:auto}.notice{padding:12px 14px;border:1px dashed #d4c28e;border-radius:12px;background:#fffaf0;color:#6a5521}.filter-input{max-width:260px}
@media(max-width:900px){.detail-grid{grid-template-columns:1fr 1fr}.calendar{min-width:780px}.calendar-wrap{overflow:auto}.summary-row{grid-template-columns:1fr}}
@media(max-width:560px){.detail-grid{grid-template-columns:1fr}.toolbar form{width:100%}.filter-input{max-width:none}}
@media print{.top,.side,.page-head,.footer,.no-print{display:none!important}.wrap{display:block}.main{padding:0}.panel,.contract{box-shadow:none;border:0}.print-only{display:block}body{background:#fff}.contract{max-width:none}}
.whatsapp{background:#1f8f5f}.inline-form{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.inline-form input,.inline-form select{width:auto;min-width:130px;margin-top:0}.mini-edit,.review-box{display:grid;gap:8px;padding:12px;background:#fbf8ef;border:1px solid #eadfbe;border-radius:10px;margin-top:8px}details summary{cursor:pointer;list-style:none}.public-page{background:linear-gradient(180deg,#17130b 0,#2b2415 36%,#f8f5ec 36%);min-height:100vh;padding:24px}.public-shell{max-width:900px;margin:auto}.public-hero{text-align:center;color:#fff;padding:24px 20px 38px}.public-hero img{width:220px;max-height:180px;object-fit:contain}.public-hero h1{color:#f1d77f;margin:8px 0}.public-hero p{max-width:650px;margin:auto;color:#ddd4c0;line-height:1.9}.public-card{background:#fff;border-radius:24px;padding:28px;box-shadow:0 20px 60px rgba(0,0,0,.15);border:1px solid #eadfbe}.public-footer{text-align:center;padding:20px;color:#6f654f}.success-big{text-align:center;padding:30px}.success-big h2{color:#1d6b38}.contract-meta{text-align:center;color:#796b4e}.terms{line-height:2}.cards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
@media(max-width:560px){.public-page{padding:10px}.public-card{padding:18px;border-radius:18px}.public-hero img{width:170px}.inline-form input,.inline-form select{width:100%}}
/* v0.6 mobile-first */
.landing-page{display:grid;place-items:center;padding:18px;background:radial-gradient(circle at 50% 0,rgba(201,167,63,.18),transparent 40%),#f7f3e8}.landing{text-align:center;width:min(720px,100%)}.landing-logo{width:220px;max-height:190px;object-fit:contain}.landing h1{margin:8px 0}.landing-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:28px 0}.landing-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px 18px;text-decoration:none;box-shadow:var(--shadow);display:grid;gap:8px}.landing-card b{font-size:22px;color:var(--gold-dark)}.landing-card span{color:#746b58}.landing-card.dark{background:#211c12;color:#fff}.landing-card.dark b{color:#f0d67f}.landing-wa{display:inline-block;text-decoration:none;color:#6d571c;font-weight:700}.quick-home{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.quick-home a{min-height:110px;background:#fff;border:1px solid var(--line);border-radius:18px;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:26px;box-shadow:var(--shadow)}.quick-home b{font-size:14px}.month-days{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.day-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px}.day-card.today{outline:2px solid var(--gold)}.day-card header{display:flex;justify-content:space-between;margin-bottom:10px}.day-card header b{font-size:22px}.period-slots{display:grid;gap:7px}.slot{padding:9px;border-radius:10px;text-decoration:none;display:grid;gap:2px}.slot small{font-size:11px}.slot.free{background:#edf7ef;color:#28643a}.slot.booked{background:#f4e7e8;color:#8e2637}.occasion-row{display:grid;grid-template-columns:2fr 1fr auto auto;gap:10px;align-items:end;padding:10px 0;border-bottom:1px solid var(--line)}.occasion-row .check{display:flex;align-items:center;gap:6px;padding-bottom:10px}.occasion-row .check input{width:auto;margin:0}.reminder-row{display:flex;justify-content:space-between;align-items:center;padding:12px;border-bottom:1px solid var(--line)}.reminder-row small{display:block;color:#776d59;margin-top:4px}.mobile-bookings{display:grid;gap:8px}.mobile-bookings a{padding:12px;background:#faf7ef;border-radius:12px;text-decoration:none;display:grid;gap:4px}.mobile-bookings span{font-size:12px;color:#776d59}.occupancy-hero{background:linear-gradient(135deg,#211c12,#3b301a);color:#fff;border-radius:20px;padding:22px;margin-bottom:16px}.occupancy-hero h2{color:#f0d67f;margin:0 0 8px}.empty-days{display:flex;gap:8px;flex-wrap:wrap}.empty-days a{padding:10px 13px;border-radius:10px;background:#f2ead5;text-decoration:none;color:#6f5616}.table-scroll{overflow:auto}
@media(max-width:900px){.month-days{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){body{font-size:15px}.top{position:static}.side{position:sticky;top:0;z-index:10}.main{padding:10px}.page-head{margin:8px 2px 12px}.quick-home{grid-template-columns:repeat(2,1fr);gap:8px}.quick-home a{min-height:92px}.month-days{grid-template-columns:1fr;gap:8px}.day-card{padding:10px}.period-slots{grid-template-columns:repeat(3,1fr)}.slot{min-height:66px;justify-content:center}.slot small{font-size:10px}.quick-grid{grid-template-columns:1fr!important}.occasion-row{grid-template-columns:1fr 1fr}.occasion-row .btn{width:100%}.landing-actions{grid-template-columns:1fr}.landing-card{padding:24px 16px}.cards{grid-template-columns:repeat(2,1fr)}.card{padding:14px}.card b{font-size:22px}.detail-grid{grid-template-columns:1fr 1fr}.reminder-row{align-items:flex-start;gap:8px}.toolbar{align-items:stretch}.toolbar .actions{width:100%}.toolbar .actions .btn{flex:1;text-align:center}}

/* v0.6.8 - صورة القاعة كخلفية للصفحة الرئيسية */
.landing-page{
  position:relative;
  min-height:100vh;
  padding:20px;
  background:
    linear-gradient(rgba(18,14,8,.48),rgba(18,14,8,.64)),
    url('landing-hall.jpg') center center/cover no-repeat fixed;
}
.landing-page:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.26));}
.landing{position:relative;z-index:1;background:rgba(255,255,255,.88);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);border:1px solid rgba(255,255,255,.48);border-radius:28px;padding:28px;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.landing-logo{filter:drop-shadow(0 5px 14px rgba(0,0,0,.15))}
.landing h1{color:#6d5317}.landing>p{color:#514834;font-weight:700}
@media(max-width:600px){.landing-page{padding:12px;background-attachment:scroll}.landing{padding:20px 14px;border-radius:22px}.landing-logo{width:170px;max-height:145px}.landing-actions{margin:20px 0;gap:10px}}


/* v0.6.10 - تحسين شامل للهاتف والتنقل */
.nav-icon{
  width:30px;height:30px;min-width:30px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:9px;background:rgba(201,167,63,.12);
  color:#f1d77f;font-size:20px;font-weight:900;line-height:1;
}
.side a{display:flex;align-items:center;gap:10px}
.side a.active .nav-icon,.side a:hover .nav-icon{background:rgba(201,167,63,.24)}
.nav-label{line-height:1.2}

@media(max-width:700px){
  body{font-size:16px;padding-bottom:8px}
  .top{
    min-height:68px;padding:8px 10px;position:sticky;top:0;
    border-bottom-width:1px;
  }
  .brand{gap:8px;min-width:0}
  .brand img{width:48px;height:46px}
  .brand-text{min-width:0}
  .brand-text strong{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}
  .brand-text small{display:none}
  .user-box{gap:6px}
  .user-box span{display:none}
  .user-box a{padding:9px 12px;font-size:13px;border-radius:10px}

  .wrap{display:block;min-height:calc(100vh - 68px)}
  .side{
    position:sticky;top:68px;z-index:18;
    display:flex;gap:7px;overflow-x:auto;overflow-y:hidden;
    padding:8px 8px 9px;background:#211c12;
    border-left:0;border-bottom:1px solid #392f18;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .side::-webkit-scrollbar{display:none}
  .side-title{display:none}
  .side a{
    flex:0 0 82px;min-height:64px;margin:0;padding:7px 5px;
    border-radius:12px;display:flex;flex-direction:column;
    justify-content:center;align-items:center;gap:5px;text-align:center;
    white-space:normal;border:1px solid rgba(255,255,255,.04);
  }
  .side a.active{border-right:1px solid rgba(201,167,63,.5);background:rgba(201,167,63,.18)}
  .nav-icon{width:34px;height:34px;min-width:34px;font-size:23px;border-radius:10px}
  .nav-label{font-size:11px;line-height:1.15}

  .main{padding:12px 10px 20px}
  .page-head{margin:4px 2px 12px}
  .page-head h1{font-size:22px;margin-top:2px}
  .eyebrow{font-size:11px}

  .quick-home{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .quick-home a{
    min-height:105px;padding:12px 8px;border-radius:18px;
    font-size:34px;gap:10px;
  }
  .quick-home b{font-size:15px}

  .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .card,.panel{border-radius:16px;padding:14px;box-shadow:0 7px 22px rgba(52,39,9,.08)}
  .card b{font-size:23px;margin-top:7px}

  .btn{
    min-height:44px;padding:11px 14px;border-radius:12px;
    font-size:14px;display:inline-flex;align-items:center;justify-content:center;
  }
  .btn.small{min-height:40px;padding:9px 11px;font-size:13px}
  .btn-wide{min-height:48px}

  input,select,textarea{
    min-height:46px;padding:11px 12px;border-radius:12px;font-size:16px;
  }
  textarea{min-height:92px}
  label{font-size:14px;font-weight:700}

  .grid2,.detail-grid,.summary-row{grid-template-columns:1fr!important}
  .detail{padding:13px;border-radius:12px}
  .toolbar{gap:8px}
  .toolbar,.toolbar form,.actions{width:100%}
  .toolbar .btn,.actions .btn{flex:1}
  .inline-form{width:100%}
  .inline-form input,.inline-form select{width:100%;min-width:0}

  .table-scroll{overflow:auto;border-radius:14px;-webkit-overflow-scrolling:touch}
  table{min-width:680px}
  th,td{padding:11px 10px;font-size:13px}

  .month-days{grid-template-columns:1fr!important}
  .day-card{padding:12px;border-radius:15px}
  .period-slots{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px}
  .slot{min-height:68px;padding:9px;display:flex;flex-direction:column;justify-content:center}
  .slot small{font-size:11px}

  .reminder-row{flex-direction:column;align-items:stretch}
  .reminder-row .actions{display:grid;grid-template-columns:1fr 1fr}
  .mobile-bookings a{padding:14px;border-radius:13px}
  .mobile-bookings b{font-size:15px}
  .mobile-bookings span{font-size:12px;line-height:1.6}

  .permission-grid{grid-template-columns:1fr!important}
  .permission-item{min-height:52px;padding:12px!important;font-size:14px}
  .permission-item input{width:24px!important;height:24px!important}

  .occasion-row{grid-template-columns:1fr!important}
  .occasion-row .check{padding-bottom:0}
  .public-page{padding:8px}
  .public-card{padding:16px;border-radius:18px}

  .footer{padding-bottom:18px}
}
@media(max-width:390px){
  .cards{grid-template-columns:1fr}
  .quick-home a{min-height:96px}
  .brand-text strong{max-width:145px}
}
