/* ===== from PHP lines 159-764 ===== */
:root{
  --bg:#f5f3ef;--surface:#ffffff;--border:rgba(0,0,0,0.08);
  --accent:#e8462a;--accent2:#c93820;
  --teal:#0d9488;--gold:#d97706;--blue:#2563eb;--green:#059669;
  --text:#1a1a1a;--text2:#3d3d3d;--muted:#5e5e5e;
  --shadow-sm:0 2px 8px rgba(0,0,0,0.06);
  --shadow:0 8px 32px rgba(0,0,0,0.10);
  --shadow-lg:0 20px 60px rgba(0,0,0,0.15);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{font-family:'Tajawal',sans-serif;background:var(--bg);color:var(--text);line-height:1.6}
a{text-decoration:none;color:inherit}
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-thumb{background:rgba(232,70,42,0.3);border-radius:3px}

/* NAV */
nav{
  position:fixed;top:0;left:0;right:0;z-index:500;height:68px;
  background:rgba(245,243,239,0.94);backdrop-filter:blur(24px);
  border-bottom:1px solid var(--border);
  display:flex;align-items:center;padding:0 48px;gap:28px;
}
.logo{
  font-size:30px;font-weight:900;letter-spacing:-1px;flex-shrink:0;
  background:linear-gradient(135deg,#e8462a,#d97706);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.logo-img{height:112px;width:auto;display:block;flex-shrink:0}
.nav-links{display:flex;gap:4px;flex:1;justify-content:center}
.nav-link{
  padding:8px 16px;border-radius:8px;font-size:14px;font-weight:600;
  color:var(--muted);transition:all .2s;cursor:pointer;
  border:none;background:transparent;font-family:'Tajawal',sans-serif;
}
.nav-link:hover{color:var(--text);background:rgba(0,0,0,0.05)}
.nav-right{display:flex;gap:8px;align-items:center;flex-shrink:0}
.btn{
  padding:9px 20px;border-radius:10px;
  font-family:'Tajawal',sans-serif;font-size:14px;font-weight:700;
  cursor:pointer;transition:all .22s;border:none;
}
.btn-ghost{background:transparent;color:var(--text2);border:1.5px solid rgba(0,0,0,0.12)}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}
.btn-primary{
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  color:white;box-shadow:0 4px 16px rgba(232,70,42,0.3);
}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(232,70,42,0.4)}
.nav-user{
  display:flex;align-items:center;gap:8px;padding:5px 12px 5px 6px;
  border-radius:24px;background:white;border:1.5px solid var(--border);
  cursor:pointer;position:relative;
}
.nav-avatar{
  width:32px;height:32px;border-radius:50%;
  background:linear-gradient(135deg,var(--accent),var(--gold));
  display:flex;align-items:center;justify-content:center;
  font-size:13px;font-weight:800;color:white;flex-shrink:0;
}
.nav-dd{
  position:absolute;top:calc(100% + 8px);left:0;min-width:190px;
  background:white;border:1.5px solid var(--border);border-radius:14px;
  box-shadow:var(--shadow-lg);display:none;overflow:hidden;z-index:600;
}
.nav-dd.open{display:block}
.nav-dd a{
  display:flex;align-items:center;gap:10px;padding:12px 16px;
  font-size:13px;font-weight:600;color:var(--text2);transition:background .15s;
}
.nav-dd a:hover{background:var(--bg)}
.nav-dd a.danger{color:#dc2626}
.nav-dd a.danger:hover{background:#fee2e2}
.nav-dd a i{width:15px;font-size:13px;color:var(--muted)}
.nav-dd a.danger i{color:#dc2626}
.nav-dd-sep{height:1px;background:var(--border);margin:4px 0}

/* LOGIN OVERLAY */
.login-overlay{
  position:fixed;inset:0;z-index:2000;
  background:rgba(0,0,0,0.65);backdrop-filter:blur(10px);
  display:flex;align-items:center;justify-content:center;padding:20px;
  animation:fadeIn .25s ease;
}
.login-box{
  background:white;border-radius:26px;width:100%;max-width:440px;
  overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
  max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);
  box-shadow:0 40px 80px rgba(0,0,0,0.35);
  animation:slideUp .35s ease;
}
.login-head{
  background:linear-gradient(135deg,#1a1208 0%,#2d1f0e 50%,#0f1a1a 100%);
  padding:40px;text-align:center;position:relative;
}
.login-head-logo{
  font-size:38px;font-weight:900;
  background:linear-gradient(135deg,#fb923c,#fbbf24);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  margin-bottom:8px;
}
.login-head-logo-img{height:152px;width:auto;margin:0 auto 10px;display:block}
.login-head p{color:rgba(255,255,255,0.5);font-size:14px}
.close-btn{
  position:absolute;top:16px;left:16px;
  width:32px;height:32px;border-radius:50%;
  background:rgba(255,255,255,0.1);border:none;color:rgba(255,255,255,0.6);
  font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:all .2s;
}
.close-btn:hover{background:rgba(255,255,255,0.2);color:white}
.login-body{padding:32px}
.field{margin-bottom:16px}
.field label{font-size:13px;font-weight:700;color:var(--muted);display:block;margin-bottom:8px}
.field input{
  width:100%;padding:13px 16px;
  border:1.5px solid rgba(0,0,0,0.1);border-radius:12px;
  font-family:'Tajawal',sans-serif;font-size:14px;color:var(--text);
  background:var(--bg);outline:none;transition:all .2s;
}
.field input:focus{border-color:var(--accent);background:white;box-shadow:0 0 0 3px rgba(232,70,42,0.08)}
.submit-btn{
  width:100%;padding:14px;border-radius:12px;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  color:white;border:none;font-family:'Tajawal',sans-serif;
  font-size:16px;font-weight:700;cursor:pointer;
  box-shadow:0 6px 20px rgba(232,70,42,0.35);transition:all .22s;
  display:flex;align-items:center;justify-content:center;gap:8px;margin-top:6px;
}
.submit-btn:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(232,70,42,0.45)}
.error-box{
  background:#fef2f2;border:1px solid #fecaca;border-radius:10px;
  padding:12px 16px;margin-bottom:18px;font-size:14px;color:#b91c1c;
  display:flex;align-items:center;gap:8px;
}
.login-footer-note{text-align:center;margin-top:18px;font-size:13px;color:var(--muted)}
.login-footer-note a{color:var(--accent);font-weight:700}

/* BIOMETRIC LOGIN */
.bio-divider{display:flex;align-items:center;gap:12px;margin:20px 0 16px;color:var(--muted);font-size:12px;font-weight:700}
.bio-divider::before,.bio-divider::after{content:'';flex:1;height:1px;background:rgba(0,0,0,0.1)}
.bio-btn{
  width:100%;padding:13px;border-radius:12px;
  background:white;color:var(--text2);border:1.5px solid rgba(0,0,0,0.12);
  font-family:'Tajawal',sans-serif;font-size:15px;font-weight:700;cursor:pointer;
  display:flex;align-items:center;justify-content:center;gap:9px;transition:all .2s;
}
.bio-btn:hover{border-color:var(--accent);color:var(--accent);background:rgba(232,70,42,0.04)}
.bio-btn i{font-size:17px}
.bio-btn[disabled]{opacity:.5;cursor:not-allowed}
.bio-msg{text-align:center;font-size:12.5px;color:var(--muted);margin-top:10px;min-height:16px}
.bio-msg.error{color:#b91c1c}
.bio-msg.success{color:var(--green)}

@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes slideUp{from{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}

/* HERO */
#hero{
  min-height:100vh;padding-top:68px;
  background:linear-gradient(160deg,#111008 0%,#1e1508 40%,#0d1818 100%);
  display:flex;align-items:center;position:relative;overflow:hidden;
}
.hero-bg{
  position:absolute;inset:0;
  background-image:url('hubbus_background.png');
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
}
.hero-bg::after{
  content:'';
  position:absolute;inset:0;
  background:
    linear-gradient(160deg,rgba(17,16,8,0.72) 0%,rgba(30,21,8,0.65) 40%,rgba(13,24,24,0.72) 100%),
    radial-gradient(ellipse 60% 60% at 15% 50%,rgba(232,70,42,0.10) 0%,transparent 70%),
    radial-gradient(ellipse 50% 50% at 80% 25%,rgba(13,148,136,0.08) 0%,transparent 65%);
}
.hero-grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,0.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,0.018) 1px,transparent 1px);
  background-size:64px 64px;
  z-index:1;
}
/* animated road line at bottom */
.hero-road{
  position:absolute;bottom:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,transparent 0%,rgba(232,70,42,0.5) 30%,rgba(217,119,6,0.5) 50%,rgba(232,70,42,0.5) 70%,transparent 100%);
  animation:roadPulse 4s ease-in-out infinite;
}
@keyframes roadPulse{0%,100%{opacity:.4;transform:scaleX(.9)}50%{opacity:1;transform:scaleX(1)}}
.bus-float{position:absolute;opacity:.05;font-size:26px;animation:floatAcross 22s linear infinite}
.bus-float:nth-child(1){top:18%;animation-duration:26s;animation-delay:0s}
.bus-float:nth-child(2){top:52%;animation-duration:19s;animation-delay:-9s}
.bus-float:nth-child(3){top:34%;animation-duration:23s;animation-delay:-16s}
@keyframes floatAcross{
  0%{right:-6%;opacity:0} 4%{opacity:.05}
  96%{opacity:.05} 100%{right:108%;opacity:0}
}

.hero-inner{
  position:relative;z-index:10;max-width:1120px;width:100%;
  margin:0 auto;padding:80px 48px 60px;
  display:grid;grid-template-columns:1fr 460px;gap:60px;align-items:center;
}
.hero-badge{
  display:inline-flex;align-items:center;gap:8px;
  padding:6px 16px;border-radius:50px;
  background:rgba(232,70,42,0.14);border:1px solid rgba(232,70,42,0.28);
  font-size:13px;font-weight:700;color:#f87171;margin-bottom:28px;
  animation:fadeD .6s ease both;
}
.hero-title{
  font-size:clamp(38px,5vw,64px);font-weight:900;line-height:1.1;
  color:white;margin-bottom:20px;animation:fadeD .7s .08s ease both;
}
.hero-title span{
  background:linear-gradient(125deg,#fb923c 0%,#fbbf24 50%,#fb923c 100%);
  background-size:200%;
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  animation:shimmer 4s linear infinite;
}
@keyframes shimmer{0%{background-position:0%}100%{background-position:200%}}
.hero-sub{font-size:17px;color:rgba(255,255,255,0.55);margin-bottom:36px;font-weight:400;max-width:470px;animation:fadeD .7s .16s ease both}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;animation:fadeD .7s .24s ease both}
.h-btn-main{
  padding:15px 32px;border-radius:13px;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  color:white;border:none;font-family:'Tajawal',sans-serif;font-size:16px;font-weight:700;
  cursor:pointer;box-shadow:0 8px 28px rgba(232,70,42,0.4);transition:all .25s;
  display:flex;align-items:center;gap:9px;
}
.h-btn-main:hover{transform:translateY(-2px);box-shadow:0 12px 36px rgba(232,70,42,0.5)}
.h-btn-sec{
  padding:15px 28px;border-radius:13px;
  background:rgba(255,255,255,0.07);color:rgba(255,255,255,0.85);
  border:1.5px solid rgba(255,255,255,0.18);
  font-family:'Tajawal',sans-serif;font-size:16px;font-weight:700;cursor:pointer;
  transition:all .25s;display:flex;align-items:center;gap:9px;backdrop-filter:blur(8px);
}
.h-btn-sec:hover{background:rgba(255,255,255,0.13);border-color:rgba(255,255,255,0.32)}
.hero-trust{display:flex;align-items:center;gap:14px;margin-top:30px;animation:fadeD .7s .32s ease both}
.t-avatars{display:flex}
.t-av{
  width:36px;height:36px;border-radius:50%;border:2.5px solid rgba(255,255,255,0.12);
  background:linear-gradient(135deg,var(--accent),var(--gold));
  display:flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:800;color:white;margin-right:-10px;flex-shrink:0;
}
.hero-trust p{font-size:13px;color:rgba(255,255,255,0.5);margin-right:8px}
.hero-trust strong{color:rgba(255,255,255,0.82);font-weight:700}

/* BOOKING CARD */
.bcard{background:white;border-radius:24px;padding:28px;box-shadow:0 24px 64px rgba(0,0,0,0.22);animation:fadeL .8s .2s ease both}
.bcard h3{font-size:18px;font-weight:800;margin-bottom:20px;color:var(--text);display:flex;align-items:center;gap:9px}
.btabs{display:flex;gap:5px;margin-bottom:20px;background:var(--bg);border-radius:10px;padding:4px}
.btab{
  flex:1;padding:9px 5px;border:none;border-radius:8px;
  font-family:'Tajawal',sans-serif;font-size:13px;font-weight:700;
  cursor:pointer;transition:all .2s;color:var(--muted);background:transparent;
}
.btab.active{background:white;color:var(--accent);box-shadow:var(--shadow-sm)}
.fg{margin-bottom:14px;position:relative}
.fl{font-size:12px;font-weight:700;color:var(--muted);margin-bottom:6px;display:block}
.fi{
  width:100%;padding:12px 14px 12px 42px;
  border:1.5px solid rgba(0,0,0,0.1);border-radius:11px;
  font-family:'Tajawal',sans-serif;font-size:14px;color:var(--text);
  background:var(--bg);transition:all .2s;outline:none;
}
.fi:focus{border-color:var(--accent);background:white;box-shadow:0 0 0 3px rgba(232,70,42,0.08)}
.fi-ico{position:absolute;bottom:13px;right:14px;font-size:15px;color:var(--muted);pointer-events:none}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.swap-btn{
  width:32px;height:32px;border-radius:50%;
  background:white;border:1.5px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;transition:all .22s;margin:0 auto 14px;
  font-size:14px;color:var(--muted);
}
.swap-btn:hover{border-color:var(--accent);color:var(--accent);transform:rotate(180deg)}
.bsubmit{
  width:100%;padding:14px;border-radius:12px;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  color:white;border:none;font-family:'Tajawal',sans-serif;
  font-size:16px;font-weight:700;cursor:pointer;
  box-shadow:0 6px 20px rgba(232,70,42,0.35);transition:all .22s;
  display:flex;align-items:center;justify-content:center;gap:8px;margin-top:6px;
}
.bsubmit:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(232,70,42,0.45)}
.bpills{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}
.bpill{font-size:11px;padding:4px 10px;border-radius:50px;background:rgba(0,0,0,0.05);color:var(--muted);font-weight:600;display:flex;align-items:center;gap:4px}

@keyframes fadeD{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeL{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:translateX(0)}}
@keyframes fadeU{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}

/* STATS */
#stats{background:white;border-bottom:1px solid var(--border);padding:32px 48px}
.stats-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.sc{display:flex;align-items:center;gap:14px;padding:20px;border-radius:14px;background:var(--bg)}
.sc-ico{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.sc-ico.r{background:rgba(232,70,42,0.1);color:var(--accent)}
.sc-ico.g{background:rgba(217,119,6,0.1);color:var(--gold)}
.sc-ico.gr{background:rgba(5,150,105,0.1);color:var(--green)}
.sc-ico.b{background:rgba(37,99,235,0.1);color:var(--blue)}
.sc-info h3{font-size:26px;font-weight:900;line-height:1;margin-bottom:4px}
.sc-info p{font-size:13px;color:var(--muted);font-weight:500}

/* SECTIONS */
.sec{padding:96px 48px}
.sec-inner{max-width:1100px;margin:0 auto}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:1px;color:var(--accent);text-transform:uppercase;margin-bottom:12px}
.sh{font-size:clamp(28px,3.5vw,44px);font-weight:900;line-height:1.15;margin-bottom:14px}
.ss{font-size:17px;color:var(--muted);font-weight:400}
.sec-hdr{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:48px}
.view-all{font-size:14px;font-weight:700;color:var(--accent);display:flex;align-items:center;gap:6px;white-space:nowrap;transition:gap .2s}
.view-all:hover{gap:10px}

/* STAR COLOR — used in testimonials */
.s{color:#fbbf24;font-size:12px}

/* HOW */
.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;position:relative;margin-top:56px}
.how-line{position:absolute;top:62px;right:25%;left:25%;height:2px;background:repeating-linear-gradient(90deg,var(--border) 0,var(--border) 8px,transparent 8px,transparent 18px);z-index:0}
.step{background:var(--bg);border-radius:20px;padding:32px 24px;text-align:center;position:relative;z-index:1;border:1.5px solid var(--border);transition:all .3s}
.step:hover{background:white;box-shadow:var(--shadow);transform:translateY(-4px)}
.step-n{position:absolute;top:-16px;right:24px;width:32px;height:32px;border-radius:50%;background:var(--accent);color:white;font-size:14px;font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(232,70,42,0.4)}
.step-ico{width:72px;height:72px;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:30px;margin:0 auto 20px}
.step h3{font-size:18px;font-weight:800;margin-bottom:10px}
.step p{font-size:14px;color:var(--muted);line-height:1.7}

/* FEATURES */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.feat{background:white;border-radius:18px;padding:28px;border:1.5px solid var(--border);transition:all .3s}
.feat:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.feat-ico{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:18px}
.feat h3{font-size:17px;font-weight:800;margin-bottom:8px}
.feat p{font-size:13px;color:var(--muted);line-height:1.7}

/* TESTIMONIALS */
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tc{background:var(--bg);border-radius:18px;padding:26px;border:1.5px solid var(--border)}
.tc-stars{display:flex;gap:3px;margin-bottom:14px}
.tc-text{font-size:15px;color:var(--text2);line-height:1.78;margin-bottom:18px;font-style:italic}
.tc-author{display:flex;align-items:center;gap:12px}
.tc-av{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--gold));display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;color:white;flex-shrink:0}
.tc-name{font-size:14px;font-weight:800}
.tc-loc{font-size:12px;color:var(--muted);margin-top:2px}

/* CITIES */
.cg{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:12px}
.city{background:white;border-radius:14px;padding:18px 14px;text-align:center;border:1.5px solid var(--border);transition:all .25s;cursor:pointer}
.city:hover{border-color:var(--accent);background:rgba(232,70,42,0.04);transform:translateY(-2px)}
.city-ico{font-size:28px;margin-bottom:8px}
.city-nm{font-size:14px;font-weight:700;color:var(--text2)}
.city-rt{font-size:11px;color:var(--muted);margin-top:3px}

/* CTA */
#cta{
  background:linear-gradient(145deg,#111008 0%,#1e1508 50%,#0d1818 100%);
  padding:100px 48px;text-align:center;position:relative;overflow:hidden;
}
#cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 60% at center,rgba(232,70,42,0.09) 0%,transparent 70%)}
.cta-inner{position:relative;z-index:1;max-width:700px;margin:0 auto}
.cta-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:50px;background:rgba(232,70,42,0.14);border:1px solid rgba(232,70,42,0.28);font-size:13px;font-weight:700;color:#f87171;margin-bottom:24px}
#cta h2{font-size:clamp(28px,4vw,50px);font-weight:900;color:white;line-height:1.15;margin-bottom:16px}
#cta p{font-size:17px;color:rgba(255,255,255,0.5);margin-bottom:36px}
.cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.cta-main{padding:16px 36px;border-radius:14px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:white;border:none;font-family:'Tajawal',sans-serif;font-size:16px;font-weight:700;cursor:pointer;box-shadow:0 8px 28px rgba(232,70,42,0.4);transition:all .25s}
.cta-main:hover{transform:translateY(-2px);box-shadow:0 14px 40px rgba(232,70,42,0.5)}
.cta-sec{padding:16px 36px;border-radius:14px;background:rgba(255,255,255,0.07);color:rgba(255,255,255,0.85);border:1.5px solid rgba(255,255,255,0.18);font-family:'Tajawal',sans-serif;font-size:16px;font-weight:700;cursor:pointer;transition:all .25s;backdrop-filter:blur(8px)}
.cta-sec:hover{background:rgba(255,255,255,0.13)}

/* FOOTER */
footer{background:#0e0c07;border-top:1px solid rgba(255,255,255,0.05);padding:64px 48px 28px}
.fg-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
.f-logo{font-size:32px;font-weight:900;background:linear-gradient(135deg,#e8462a,#d97706);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:12px}
.f-logo-img{height:38px;width:auto;margin-bottom:12px;display:block}
.f-desc{font-size:14px;color:rgba(255,255,255,0.38);line-height:1.78;max-width:260px}
.social-row{display:flex;gap:8px;margin-top:20px}
.sbtn{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.09);color:rgba(255,255,255,0.45);font-size:15px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}
.sbtn:hover{background:rgba(232,70,42,0.18);border-color:rgba(232,70,42,0.35);color:#f87171}
.f-col h4{font-size:14px;font-weight:800;color:rgba(255,255,255,0.8);margin-bottom:16px}
.f-links{list-style:none}
.f-links li{margin-bottom:10px}
.f-links a{font-size:13px;color:rgba(255,255,255,0.38);transition:color .2s}
.f-links a:hover{color:rgba(255,255,255,0.78)}
.f-bottom{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding-top:24px;border-top:1px solid rgba(255,255,255,0.05)}
.f-bottom p{font-size:13px;color:rgba(255,255,255,0.28)}
.f-badges{display:flex;gap:8px}
.fb{font-size:11px;padding:4px 10px;border-radius:50px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.07);color:rgba(255,255,255,0.32);display:flex;align-items:center;gap:5px}

/* REVEAL */
.reveal{opacity:0;transform:translateY(24px);transition:all .65s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.rd1{transition-delay:.1s}.rd2{transition-delay:.2s}.rd3{transition-delay:.3s}.rd4{transition-delay:.4s}.rd5{transition-delay:.5s}

/* RESPONSIVE */
@media(max-width:920px){
  nav{padding:0 20px}.nav-links{display:none}
  .hero-inner{grid-template-columns:1fr;padding:60px 24px 40px}
  .bcard{animation:fadeU .8s .3s ease both}
  .hero-title,.hero-sub,.hero-trust{text-align:center;justify-content:center}
  .hero-ctas{justify-content:center}
  .sec-hdr{flex-direction:column;gap:16px;align-items:flex-start}
  .how-grid,.feat-grid,.tgrid{grid-template-columns:1fr}.how-line{display:none}
  .stats-grid{grid-template-columns:1fr 1fr}
  .fg-grid{grid-template-columns:1fr 1fr;gap:32px}
  .sec{padding:64px 24px}
  #stats{padding:24px}
}
@media(max-width:480px){
  .stats-grid{grid-template-columns:1fr}.fg-grid{grid-template-columns:1fr}.frow{grid-template-columns:1fr}
}

/* ══════════════════════════════════════════════
   MOBILE APP SCREEN — شاشة تطبيق مستقلة للجوال
══════════════════════════════════════════════ */
.ma-root{display:none;background:var(--bg);min-height:100dvh;position:relative}
.ma-header{
  background:linear-gradient(160deg,#111008 0%,#1e1508 45%,#0d1818 100%);
  padding:calc(env(safe-area-inset-top,0px) + 20px) 16px 60px;
  position:relative;overflow:visible;
}
/* عنصر منفصل يحمل توهّج الخلفية بدل overflow:hidden على الهيدر (حتى لا تُقص القائمة المنسدلة) */
.ma-header::after{content:'';position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.ma-header::before{
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(ellipse 70% 60% at 15% 0%,rgba(232,70,42,0.20) 0%,transparent 70%),
    radial-gradient(ellipse 60% 50% at 95% 15%,rgba(13,148,136,0.14) 0%,transparent 65%);
}
.ma-header-top{display:flex;align-items:center;justify-content:space-between;gap:8px;position:relative;z-index:20;min-width:0}
.ma-logo{height:82px;width:auto;margin:-6px 0 -18px;flex-shrink:1;min-width:0;max-width:52%;object-fit:contain}
.ma-header-actions{display:flex;align-items:center;gap:7px;flex-shrink:0}
.ma-icon-btn{
  width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,0.1);
  border:1px solid rgba(255,255,255,0.14);color:rgba(255,255,255,0.85);
  display:flex;align-items:center;justify-content:center;font-size:15px;cursor:pointer;
  position:relative;
}
.ma-dot{position:absolute;top:6px;left:7px;width:7px;height:7px;border-radius:50%;background:#ef4444;border:1.5px solid #1a1409}
.ma-login-btn{
  display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 14px;
  border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--gold));
  border:none;color:#fff;font-family:'Tajawal',sans-serif;font-size:13px;font-weight:800;
  cursor:pointer;flex-shrink:0;white-space:nowrap;box-shadow:0 6px 16px rgba(232,70,42,0.35);
}
.ma-login-btn i{font-size:14px}
.ma-login-btn:active{transform:scale(.96)}

/* ── مبدّل اللغة (دروب ليست بأعلام) ── */
.lang-dd{position:relative;display:inline-flex;flex-shrink:0}
.lang-flag{width:26px;height:19px;padding:0;border:1.5px solid rgba(0,0,0,.12);border-radius:5px;
  overflow:hidden;background:none;display:inline-flex;line-height:0;flex-shrink:0}
.lang-flag svg{width:100%;height:100%;display:block}
/* زر الفتح — يظهر علم اللغة الحالية فقط */
.lang-dd-trigger{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;cursor:pointer;
  background:rgba(0,0,0,.03);border:1px solid rgba(0,0,0,.12);border-radius:8px;
  transition:background .15s,border-color .15s}
.lang-dd-trigger:hover{background:rgba(0,0,0,.06)}
.lang-dd-trigger .lang-flag{display:none;border-color:rgba(0,0,0,.18)}
.lang-dd-trigger .lang-flag.active{display:inline-flex}
.lang-dd-caret{font-size:10px;color:#888;transition:transform .2s}
.lang-dd.open .lang-dd-caret{transform:rotate(180deg)}
/* القائمة المنسدلة */
.lang-dd-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:150px;z-index:1200;
  background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:10px;
  box-shadow:0 10px 30px rgba(0,0,0,.16);padding:5px;
  opacity:0;visibility:hidden;transform:translateY(-6px);transition:all .18s;overflow:hidden}
.lang-dd.open .lang-dd-menu{opacity:1;visibility:visible;transform:translateY(0)}
.lang-opt{display:flex;align-items:center;gap:9px;width:100%;padding:8px 10px;cursor:pointer;
  background:none;border:0;border-radius:7px;font:inherit;font-size:14px;color:#222;text-align:right;
  transition:background .12s}
.lang-opt:hover{background:rgba(232,70,42,.08)}
.lang-opt.active{background:rgba(232,70,42,.1);font-weight:700}
.lang-opt-name{flex:1}
/* نسخة الهيدر الداكن (جوال) */
.lang-dd--mobile .lang-dd-trigger{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.28)}
.lang-dd--mobile .lang-dd-trigger:hover{background:rgba(255,255,255,.24)}
.lang-dd--mobile .lang-dd-caret{color:rgba(255,255,255,.85)}
.lang-dd--mobile .lang-flag{width:24px;height:17px}
.lang-dd--mobile .lang-dd-menu{left:auto;right:0;z-index:3000}

/* إخفاء شريط وأدوات Google Translate مع الاحتفاظ بعملها */
.goog-te-banner-frame,.goog-te-gadget-icon,#goog-gt-tt,.goog-te-balloon-frame{display:none!important}
.goog-te-gadget{height:0;overflow:hidden;font-size:0!important}
.skiptranslate>iframe{display:none!important;visibility:hidden!important}
/* شريط “Translated by Google” بالنسخة الجديدة من الأداة */
.skiptranslate,
iframe.skiptranslate,
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf,
.VIpgJd-ZVi9od-aZ2wEe-OiiCO,
.VIpgJd-ZVi9od-ORHb-OEVmcd,
.VIpgJd-ZVi9od-l4eHX-hSRGPd,
.VIpgJd-ZVi9od-l9xktf-hSRGPd,
.VIpgJd-ZVi9od-xl07Ob-OEVmcd{display:none!important}
/* تلميح/تظليل النص المترجم عند المرور */
.goog-tooltip,.goog-tooltip *{display:none!important}
.goog-text-highlight{background:none!important;box-shadow:none!important;border:0!important}
body{top:0!important;position:static!important}
font[style]{background:none!important;box-shadow:none!important}
.ma-avatar{
  width:38px;height:38px;border-radius:12px;
  background:linear-gradient(135deg,var(--accent),var(--gold));
  display:flex;align-items:center;justify-content:center;
  font-size:14px;font-weight:800;color:white;cursor:pointer;flex-shrink:0;
}
.ma-greeting{position:relative;z-index:1;margin-top:2px}
.ma-greeting h1{color:white;font-size:21px;font-weight:900;margin-bottom:4px}
.ma-greeting p{color:rgba(255,255,255,0.55);font-size:13.5px;font-weight:500}

.ma-book-card{
  background:white;border-radius:22px;padding:20px 16px 16px;
  margin:-42px 16px 0;position:relative;z-index:2;
  box-shadow:0 20px 50px rgba(0,0,0,0.16);
}
.ma-tabs{margin-bottom:14px}
.ma-swap{margin:-2px auto 12px}

.ma-quick{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:20px 16px 2px}
.ma-qa{
  background:white;border:1.5px solid var(--border);border-radius:16px;
  padding:13px 4px 9px;display:flex;flex-direction:column;align-items:center;gap:7px;
  font-family:'Tajawal',sans-serif;font-size:11px;font-weight:700;color:var(--text2);
  cursor:pointer;transition:all .2s;
}
.ma-qa:active{transform:scale(.95);background:var(--bg)}
.ma-qa-ico{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:15px}

.ma-promo{
  margin:16px 16px 0;border-radius:20px;padding:18px 20px;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  box-shadow:0 12px 30px rgba(232,70,42,0.3);position:relative;overflow:hidden;
}
.ma-promo-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,0.2);color:white;font-size:10.5px;font-weight:800;padding:4px 10px;border-radius:50px;margin-bottom:9px}
.ma-promo-txt h2{color:white;font-size:16.5px;font-weight:900;margin-bottom:4px}
.ma-promo-txt p{color:rgba(255,255,255,0.85);font-size:11.5px;max-width:180px;line-height:1.5}
.ma-promo-emoji{font-size:42px;flex-shrink:0;filter:drop-shadow(0 6px 14px rgba(0,0,0,0.2))}

.ma-trust{display:flex;justify-content:center;gap:16px;padding:20px 16px 4px;flex-wrap:wrap}
.ma-trust-item{font-size:11px;font-weight:700;color:var(--muted);display:flex;align-items:center;gap:6px}
.ma-trust-item i{color:var(--green);font-size:10.5px}

.ma-bottomnav{
  display:none;position:fixed;bottom:0;left:0;right:0;z-index:400;
  background:rgba(255,255,255,0.96);backdrop-filter:blur(20px);
  border-top:1px solid var(--border);
  padding:7px 8px calc(env(safe-area-inset-bottom,0px) + 7px);
  align-items:center;justify-content:space-around;
}
.ma-nav-item{
  background:none;border:none;display:flex;flex-direction:column;align-items:center;gap:3px;
  font-family:'Tajawal',sans-serif;font-size:10.5px;font-weight:700;color:var(--muted);
  padding:5px 16px;border-radius:12px;cursor:pointer;
}
.ma-nav-item i{font-size:17px}
.ma-nav-item.active{color:var(--accent)}

@media(max-width:880px){
  .desktop-shell{display:none !important}
  .ma-root{display:block}
  .ma-bottomnav{display:flex}
  body{overflow-x:clip}
  .rb-launcher{bottom:calc(58px + env(safe-area-inset-bottom,0px) + 16px) !important;left:16px !important;right:auto !important}
  .rb-win{right:auto !important;left:12px !important}
  .rb-tip{right:auto !important;left:50% !important;transform:translateX(-50%) translateY(4px)}
  .rb-launcher:hover .rb-tip{transform:translateX(-50%) translateY(0)}
  .rb-tip::after{right:auto !important;left:50%;transform:translateX(-50%)}
}

/* ===== Compact searchable city dropdown (مثل home.php) ===== */
.city-search-wrap{position:relative}
.city-suggestions{
  position:absolute;top:calc(100% + 5px);right:0;left:0;
  display:none;max-height:230px;overflow-y:auto;
  background:#fff;border:1.5px solid rgba(0,0,0,.10);
  border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.16);
  z-index:1200;padding:4px;
}
.city-suggestions.show{display:block}
.city-sug-item{
  display:flex;align-items:center;gap:10px;padding:9px 11px;
  border-radius:9px;cursor:pointer;transition:background .15s;
}
.city-sug-item:hover,.city-sug-item.active{background:#f5f3ef}
.city-sug-ico{
  width:30px;height:30px;border-radius:8px;display:flex;
  align-items:center;justify-content:center;flex-shrink:0;
  background:rgba(232,70,42,.09);color:#e8462a;font-size:12px;
}
.city-sug-item.from-city .city-sug-ico{background:rgba(13,148,136,.09);color:#0d9488}
.city-sug-info{min-width:0}
.city-sug-info strong{display:block;font-size:13px;color:#1a1a1a;font-weight:700}
.city-sug-info span{display:block;font-size:10px;color:#7a7a7a;margin-top:1px}
.city-empty{padding:12px;text-align:center;color:#7a7a7a;font-size:12px}
.city-search-wrap .fi{padding-left:42px}
@media(max-width:700px){
  .city-suggestions{max-height:190px}
}


/* ===== from PHP lines 1716-1895 ===== */
/* ══════════════════════════════════════════════
   HUBBUS CUSTOMER ROBOT — 3D CGI Style
══════════════════════════════════════════════ */

/* ── Launcher ── */
.rb-launcher.rb-cust{position:fixed;right:18px;bottom:18px;left:auto;z-index:10020;width:64px;height:84px;cursor:grab;user-select:none;touch-action:none;filter:drop-shadow(0 8px 18px rgba(0,0,0,.25));transition:left .5s cubic-bezier(.22,.9,.28,1),top .5s cubic-bezier(.22,.9,.28,1),right .5s,bottom .5s,transform .22s ease;will-change:left,top,transform}
.rb-launcher.rb-cust:active{cursor:grabbing}.rb-launcher.rb-cust.rb-moving{transition:left .5s cubic-bezier(.22,.9,.28,1),top .5s cubic-bezier(.22,.9,.28,1),right .5s,bottom .5s}.rb-launcher.rb-cust:hover{transform:scale(1.06)}
.rb-launcher.rb-cust .rb-robot-body{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.rb-launcher.rb-cust .rb-robot-svg{width:64px;height:82px;overflow:visible;display:block}

/* ── Floating idle ── */
.rb-launcher.rb-cust .hb-float{animation:hb-float 3.2s ease-in-out infinite;transform-origin:80px 110px}
@keyframes hb-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}

/* ── Waving arm ── */
.rb-launcher.rb-cust .hb-arm-wave{transform-box:fill-box;transform-origin:top left;animation:hb-wave 1.4s ease-in-out infinite}
@keyframes hb-wave{0%,100%{transform:rotate(0)}22%{transform:rotate(-14deg)}50%{transform:rotate(12deg)}76%{transform:rotate(-8deg)}}

/* ── Eye blink ── */
.rb-launcher.rb-cust .hb-eye{animation:hb-blink 4.5s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes hb-blink{0%,90%,100%{transform:scaleY(1)}93%{transform:scaleY(.06)}}

/* ── LED ring pulse ── */
.rb-launcher.rb-cust .hb-eye-ring{animation:hb-ring-pulse 2.2s ease-in-out infinite}
@keyframes hb-ring-pulse{0%,100%{stroke-opacity:1;stroke-width:3}50%{stroke-opacity:.55;stroke-width:2.2}}

/* ── Eye glow ── */
.rb-launcher.rb-cust .hb-eye-glow{animation:hb-glow-breathe 2.2s ease-in-out infinite}
@keyframes hb-glow-breathe{0%,100%{opacity:1}50%{opacity:.45}}

/* ── Antenna ── */
.rb-launcher.rb-cust .hb-ant-light{animation:hb-ant-pulse 1.6s ease-in-out infinite}
@keyframes hb-ant-pulse{0%,100%{opacity:1}50%{opacity:.3}}

/* ── Chest ── */
.rb-launcher.rb-cust .hb-chest{animation:hb-chest-pulse 1.8s ease-in-out infinite}
@keyframes hb-chest-pulse{0%,100%{opacity:1}50%{opacity:.28}}
.rb-launcher.rb-cust .hb-chest-glow{animation:hb-chest-glow-pulse 1.8s ease-in-out infinite}
@keyframes hb-chest-glow-pulse{0%,100%{opacity:.7}50%{opacity:.2}}

/* ── Mouth ── */
.rb-launcher.rb-cust .hb-mouth{animation:hb-mouth-flicker 3s ease-in-out infinite}
@keyframes hb-mouth-flicker{0%,100%{opacity:.5}50%{opacity:.25}}

/* ── Walking: bouncy waddle ── */
.rb-launcher.rb-cust.rb-walking .hb-legs{animation:rb-walk-legs .26s ease-in-out infinite;transform-box:fill-box;transform-origin:center bottom}
.rb-launcher.rb-cust.rb-walking .hb-leg-l{animation:rb-step-l .26s ease-in-out infinite}
.rb-launcher.rb-cust.rb-walking .hb-leg-r{animation:rb-step-r .26s ease-in-out infinite}
.rb-launcher.rb-cust.rb-walking .hb-float{animation:rb-walk-body .26s ease-in-out infinite}
.rb-launcher.rb-cust.rb-walking .hb-arm-wave{animation:rb-walk-arm-r .26s ease-in-out infinite}
.rb-launcher.rb-cust.rb-walking .hb-arm-left{animation:rb-walk-arm-l .26s ease-in-out infinite}
.rb-launcher.rb-cust.rb-walking .rb-robot-body{animation:rb-walk-tilt .52s ease-in-out infinite}

@keyframes rb-walk-body{0%,100%{transform:translateY(0)}25%{transform:translateY(-3.5px)}50%{transform:translateY(0)}75%{transform:translateY(-2.5px)}}
@keyframes rb-step-l{0%,100%{transform:translateY(0) rotate(0)}25%{transform:translateY(3px) rotate(-10deg)}50%{transform:translateY(0) rotate(0)}75%{transform:translateY(-2px) rotate(4deg)}}
@keyframes rb-step-r{0%,100%{transform:translateY(-2px) rotate(4deg)}25%{transform:translateY(0) rotate(0)}50%{transform:translateY(3px) rotate(10deg)}75%{transform:translateY(0) rotate(0)}}
@keyframes rb-walk-legs{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-1.5px) rotate(1deg)}}
@keyframes rb-walk-arm-r{0%,100%{transform:rotate(-10deg)}50%{transform:rotate(14deg)}}
@keyframes rb-walk-arm-l{0%,100%{transform:rotate(10deg)}50%{transform:rotate(-8deg)}}
@keyframes rb-walk-tilt{0%,100%{transform:rotate(0)}25%{transform:rotate(-2.5deg)}75%{transform:rotate(2.5deg)}}

/* ── Near target ── */
.rb-launcher.rb-cust.rb-near-target .rb-robot-svg{animation:rb-help-bounce .7s ease-in-out 2;transform-origin:center bottom}
.rb-launcher.rb-cust.rb-near-target{transform:scale(1.12)}
.rb-launcher.rb-cust.rb-near-target .hb-arm-wave{animation-duration:.5s}
@keyframes rb-help-bounce{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.03)}}

/* ── Field highlight ── */
.rb-drop-target{outline:2px solid rgba(34,211,238,.4)!important;outline-offset:4px!important;position:relative;z-index:3;animation:rb-target-pulse 1.2s ease-in-out infinite}
@keyframes rb-target-pulse{0%,100%{box-shadow:0 0 0 0 rgba(34,211,238,.18)}50%{box-shadow:0 0 0 8px rgba(34,211,238,.06)}}

/* ── Notif badge ── */
.rb-launcher.rb-cust .rb-notif{position:absolute;top:-2px;right:-4px;width:15px;height:15px;border-radius:50%;background:#ef4444;color:#fff;font-size:9px;font-weight:900;display:flex;align-items:center;justify-content:center;border:2px solid #fff;z-index:2}

/* ── Tooltip ── */
.rb-launcher.rb-cust .rb-tip{position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%) translateX(8px) scale(.96);background:#18232b;color:#fff;font-family:'Cairo',sans-serif;font-size:11px;font-weight:700;line-height:1.5;padding:8px 12px;border-radius:14px;white-space:normal;width:max-content;max-width:230px;opacity:0;pointer-events:none;transition:.2s ease;box-shadow:0 6px 20px rgba(0,0,0,.2);text-align:right}
.rb-launcher.rb-cust .rb-tip::after{content:'';position:absolute;right:-5px;top:50%;width:9px;height:9px;background:#18232b;transform:translateY(-50%) rotate(45deg)}
.rb-launcher.rb-cust.rb-tip-visible .rb-tip{opacity:1;transform:translateY(-50%) translateX(0) scale(1)}

/* ── Reduced motion ── */
@media(prefers-reduced-motion:reduce){.rb-launcher.rb-cust .hb-float,.rb-launcher.rb-cust .hb-eye,.rb-launcher.rb-cust .hb-ant-light,.rb-launcher.rb-cust .hb-chest,.rb-launcher.rb-cust .hb-chest-glow,.rb-launcher.rb-cust .hb-mouth,.rb-launcher.rb-cust .hb-arm-wave,.rb-launcher.rb-cust .hb-eye-ring,.rb-launcher.rb-cust .hb-eye-glow,.rb-launcher.rb-cust.rb-walking .hb-leg-l,.rb-launcher.rb-cust.rb-walking .hb-leg-r,.rb-launcher.rb-cust.rb-walking .hb-float,.rb-launcher.rb-cust.rb-walking .rb-robot-body,.rb-launcher.rb-cust.rb-walking .hb-arm-wave,.rb-launcher.rb-cust.rb-walking .hb-arm-left,.rb-launcher.rb-cust.rb-near-target .rb-robot-svg{animation:none!important}}

@media(max-width:700px){.rb-launcher.rb-cust{right:8px;bottom:90px;width:56px;height:74px}.rb-launcher.rb-cust .rb-robot-svg{width:56px;height:71px}.rb-launcher.rb-cust .rb-tip{right:calc(100% + 7px);max-width:185px;font-size:10px}}

/* ══ Shared Chat Window Base Styles ══ */
/* ── Header ── */
.rb-head{
  background:linear-gradient(135deg,#06b6d4,#0891b2);
  padding:18px 18px 14px;
  display:flex;align-items:center;justify-content:space-between;
  flex-shrink:0;position:relative;overflow:hidden;
}
.rb-head::before{content:'';position:absolute;top:-18px;left:-18px;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,.07)}
.rb-head-l{display:flex;align-items:center;gap:11px;position:relative;z-index:1}
.rb-av-hd{width:48px;height:48px;border-radius:14px;background:rgba(255,255,255,.18);border:1.5px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.rb-hname{color:white;font-weight:900;font-size:17px;display:flex;align-items:center;gap:7px;font-family:'Cairo',sans-serif}
.rb-aitag{font-size:9px;font-weight:800;letter-spacing:.5px;background:rgba(255,255,255,.22);border:1px solid rgba(255,255,255,.35);padding:2px 7px;border-radius:8px;color:white}
.rb-hstatus{color:rgba(255,255,255,.85);font-size:11px;display:flex;align-items:center;gap:5px;margin-top:3px;font-family:'Cairo',sans-serif}
.rb-hdot{width:7px;height:7px;border-radius:50%;background:#4ade80;animation:rb-glow 2s ease-in-out infinite}
@keyframes rb-glow{0%,100%{opacity:1}50%{opacity:.5}}
.rb-head-r{display:flex;gap:5px;position:relative;z-index:1}
.rb-hbtn{width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.18);border:none;color:white;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;font-family:sans-serif}
.rb-hbtn:hover{background:rgba(255,255,255,.3)}

/* ── Info bar ── */
.rb-bar{background:#f0fdfa;border-bottom:1px solid rgba(6,182,212,.1);padding:7px 16px;display:flex;align-items:center;gap:7px;font-size:11px;color:#5a8a96;flex-shrink:0;font-family:'Cairo',sans-serif}
.rb-bar i{color:#06b6d4;font-size:10px}
.rb-sep{color:#b0c4cc}

/* ── Messages ── */
.rb-msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:linear-gradient(180deg,#f8fdfe,#f0f8fa);scroll-behavior:smooth}
.rb-msgs::-webkit-scrollbar{width:3px}
.rb-msgs::-webkit-scrollbar-thumb{background:rgba(6,182,212,.2);border-radius:2px}
.rb-msg{display:flex;gap:9px;animation:rb-msg-in .3s cubic-bezier(.34,1.56,.64,1)}
@keyframes rb-msg-in{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
.rb-msg.bot{align-self:flex-start;max-width:89%}
.rb-msg.user{align-self:flex-end;flex-direction:row-reverse;max-width:80%}
.rb-av{width:33px;height:33px;border-radius:10px;flex-shrink:0;margin-top:2px;background:linear-gradient(135deg,#06b6d4,#0891b2);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(6,182,212,.25)}
.rb-av svg{width:21px;height:21px}
.rb-bubble{padding:11px 14px;border-radius:17px;font-size:13.5px;line-height:1.75;font-family:'Cairo',sans-serif}
.rb-msg.bot .rb-bubble{background:white;color:#1a1a2e;border-bottom-right-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.07),0 0 0 1px rgba(0,0,0,.04)}
.rb-msg.user .rb-bubble{background:linear-gradient(135deg,#06b6d4,#0891b2);color:white;border-bottom-left-radius:4px;box-shadow:0 4px 14px rgba(6,182,212,.3)}

/* ── Welcome card ── */
.rb-wcard{background:white;border-radius:16px;padding:16px;border:1px solid rgba(6,182,212,.12);box-shadow:0 2px 12px rgba(0,0,0,.06)}
.rb-wico{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#06b6d4,#0891b2);display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.rb-wico svg{width:34px;height:34px}
.rb-wcard h4{font-size:15px;font-weight:800;color:#1a1a2e;margin-bottom:5px;font-family:'Cairo',sans-serif}
.rb-wcard p{font-size:12.5px;color:#7a8a9a;line-height:1.7;font-family:'Cairo',sans-serif}

/* ── Typing indicator ── */
.rb-typing{background:white;border-radius:17px;border-bottom-right-radius:4px;padding:13px 17px;display:flex;gap:5px;align-items:center;box-shadow:0 2px 8px rgba(0,0,0,.07)}
.rb-typing span{width:7px;height:7px;border-radius:50%;background:#b0bec5;animation:rb-bounce .9s infinite}
.rb-typing span:nth-child(2){animation-delay:.15s}
.rb-typing span:nth-child(3){animation-delay:.3s}
@keyframes rb-bounce{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-7px)}}

/* ── Chips ── */
.rb-chips{padding:10px 12px;background:white;border-top:1px solid rgba(0,0,0,.06);flex-shrink:0}
.rb-chips-t{font-size:10px;font-weight:700;color:#a0b0b8;letter-spacing:.4px;text-transform:uppercase;margin-bottom:7px;font-family:'Cairo',sans-serif}
.rb-chips-g{display:flex;flex-wrap:wrap;gap:6px}
.rb-chip{padding:6px 11px;border-radius:20px;border:1.5px solid rgba(6,182,212,.2);background:rgba(6,182,212,.04);color:#0891b2;font-size:12px;font-weight:700;font-family:'Cairo',sans-serif;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:5px}
.rb-chip i{font-size:10px}
.rb-chip:hover{background:rgba(6,182,212,.1);border-color:rgba(6,182,212,.5);transform:translateY(-1px)}

/* ── Input row ── */
.rb-input-row{padding:10px 12px 8px;background:white;border-top:1px solid rgba(0,0,0,.07);flex-shrink:0}
.rb-iw{display:flex;gap:7px;align-items:center;background:#f0f8fa;border:2px solid transparent;border-radius:24px;padding:3px 3px 3px 14px;transition:all .2s}
.rb-iw.focus{background:white;border-color:#06b6d4;box-shadow:0 0 0 3px rgba(6,182,212,.08)}
.rb-inp{flex:1;background:transparent;border:none;outline:none;font-family:'Cairo',sans-serif;font-size:14px;color:#1a1a2e}
.rb-inp::placeholder{color:#b0bec8}
.rb-send{width:42px;height:42px;border-radius:50%;border:none;cursor:pointer;background:linear-gradient(135deg,#06b6d4,#0891b2);color:white;font-size:14px;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 12px rgba(6,182,212,.4);transition:transform .2s,box-shadow .2s;flex-shrink:0}
.rb-send:hover{transform:scale(1.08);box-shadow:0 5px 18px rgba(6,182,212,.5)}
.rb-powered{text-align:center;font-size:10.5px;color:#b0bec8;font-family:'Cairo',sans-serif;margin-top:6px}

/* ══ Owner Chat Window ══ */
.rb-cust-win{
  position:fixed;bottom:110px;left:24px;z-index:9998;
  width:390px;height:610px;max-height:calc(100vh - 140px);
  background:#fff;border-radius:24px;
  box-shadow:0 24px 70px rgba(0,0,0,.18),0 0 0 1px rgba(0,0,0,.06);
  display:flex;flex-direction:column;overflow:hidden;
  transform:scale(.88) translateY(24px);opacity:0;pointer-events:none;
  transition:transform .35s cubic-bezier(.34,1.56,.64,1),opacity .25s;
  transform-origin:bottom left;
}
.rb-cust-win.open{transform:scale(1) translateY(0);opacity:1;pointer-events:all}

.rb-cust-head{background:linear-gradient(135deg,#06b6d4,#0891b2)!important}
.rb-cust-bar{background:#f0fdfa!important;border-bottom:1px solid rgba(6,182,212,.1)!important;color:#5a8a96!important}
.rb-cust-bar i{color:#06b6d4!important}
.rb-cust-win .rb-chip{border-color:rgba(6,182,212,.2)!important;background:rgba(6,182,212,.04)!important;color:#0891b2!important}
.rb-cust-win .rb-chip:hover{background:rgba(6,182,212,.1)!important;border-color:rgba(6,182,212,.5)!important}
.rb-cust-win .rb-send{background:linear-gradient(135deg,#06b6d4,#0891b2)!important;box-shadow:0 3px 12px rgba(6,182,212,.4)!important}
.rb-cust-win .rb-send:hover{box-shadow:0 5px 18px rgba(6,182,212,.5)!important}
.rb-cust-win .rb-msg.user .rb-bubble{background:linear-gradient(135deg,#06b6d4,#0891b2)!important;box-shadow:0 4px 14px rgba(6,182,212,.3)!important}

@media(max-width:900px){.rb-launcher.rb-cust{right:auto;left:16px}.rb-cust-win{right:auto!important;left:12px!important}.rb-launcher.rb-cust .rb-tip{right:auto!important;left:50%!important;transform:translateX(-50%) translateY(4px)}.rb-launcher.rb-cust:hover .rb-tip{transform:translateX(-50%) translateY(0)}.rb-launcher.rb-cust .rb-tip::after{right:auto!important;left:50%;transform:translateX(-50%)}}
@media(max-width:440px){.rb-cust-win{width:calc(100vw - 20px);left:10px;bottom:170px}.rb-launcher.rb-cust{bottom:90px;left:14px}}
/* قائمة أسماء المستخدمين المحفوظة */
.hb-user-field{position:relative}
.hb-user-suggest{position:absolute;top:100%;right:0;left:0;margin-top:4px;background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 28px rgba(0,0,0,.14);z-index:50;overflow:hidden;max-height:220px;overflow-y:auto}
.hb-user-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 6px 0 12px;border-bottom:1px solid #f1f5f9}
.hb-user-item:last-child{border-bottom:none}
.hb-user-name{flex:1;padding:12px 4px;font-size:15px;font-weight:700;color:#1f2937;cursor:pointer;text-align:left}
.hb-user-item:hover{background:#fff7f5}
.hb-user-del{border:none;background:transparent;color:#9ca3af;font-size:13px;padding:10px;cursor:pointer;border-radius:8px}
.hb-user-del:hover{color:#e8462a}

/* ---------- Driver login button ---------- */
.drv-login-btn{
  width:100%;padding:11px 14px;border-radius:12px;margin-top:12px;text-decoration:none;
  background:linear-gradient(135deg,rgba(13,148,136,.09),rgba(13,148,136,.03));
  color:#0a7a6e;border:1.5px solid rgba(13,148,136,.35);
  font-family:'Tajawal',sans-serif;font-size:15px;font-weight:800;cursor:pointer;
  display:flex;align-items:center;justify-content:center;gap:10px;transition:all .2s;
}
.drv-login-btn .drv-ico{
  width:32px;height:32px;border-radius:9px;flex-shrink:0;
  background:linear-gradient(135deg,#0d9488,#0a7a6e);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:15px;
  box-shadow:0 4px 12px rgba(13,148,136,.35);
}
.drv-login-btn:hover{border-color:#0d9488;background:rgba(13,148,136,.12);transform:translateY(-1px);box-shadow:0 6px 18px rgba(13,148,136,.2)}
.drv-login-btn .drv-arrow{font-size:12px;opacity:.6;transition:transform .2s}
.drv-login-btn:hover .drv-arrow{transform:translateX(-3px);opacity:1}

/* Login modal: compact on short / small screens so all buttons + footer stay reachable */
@media(max-width:600px),(max-height:760px){
  .login-overlay{padding:10px}
  .login-box{max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px)}
  .login-head{padding:18px 20px 14px}
  .login-head-logo-img{height:80px;margin-bottom:6px}
  .login-body{padding:20px 22px 24px}
  .login-body .field{margin-bottom:12px}
  .bio-divider{margin:14px 0 12px}
  .login-footer-note{margin-top:14px}
}

/* Login modal: extra-compact for short desktop windows so everything fits without scrolling */
@media(max-height:760px){
  .login-head{padding:12px 20px 10px}
  .login-head-logo-img{height:56px;margin-bottom:4px}
  .login-head p{font-size:12.5px}
  .close-btn{top:10px;left:10px;width:28px;height:28px;font-size:14px}
  .login-body{padding:14px 24px 16px}
  .login-body .field{margin-bottom:8px!important}
  .login-body .field label{margin-bottom:4px}
  .login-body .field input[type=text],.login-body .field input[type=password]{padding:9px 14px}
  .submit-btn{padding:11px;margin-top:2px}
  .bio-divider{margin:10px 0 8px}
  .bio-btn{padding:9px}
  .bio-msg{margin-top:4px;min-height:0}
  .drv-login-btn{margin-top:8px;padding:7px 14px}
  .drv-login-btn .drv-ico{width:28px;height:28px;font-size:13px}
  .login-footer-note{margin-top:10px}
}
@media(max-height:640px){
  .login-head{display:none}
  .close-btn{background:rgba(0,0,0,.12);color:#444;z-index:2}
  .login-box{position:relative}
}