:root{
  --brand:#0b6e4f;
  --brand-dark:#074e38;
  --accent:#f5a524;
  --bg:#f7f9fb;
  --ink:#0f172a;
  --muted:#64748b;
}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bg);color:var(--ink);}
.navbar-brand{font-weight:800;letter-spacing:-.5px;color:var(--brand)!important;font-size:1.5rem;}
.navbar-brand .dot{color:var(--accent);}
.brand-logo{display:block;width:auto;height:64px;object-fit:contain;}
.brand-logo-footer{height:120px;}
.brand-logo-admin{height:92px;max-width:132px;filter:drop-shadow(0 8px 16px rgba(0,0,0,.18));}
.brand-logo-admin-mobile{height:48px;max-width:70px;filter:drop-shadow(0 8px 16px rgba(0,0,0,.18));}
.btn-brand{background:var(--brand);color:#fff;border:none;}
.btn-brand:hover{background:var(--brand-dark);color:#fff;}
.btn-outline-brand{border:1px solid var(--brand);color:var(--brand);background:transparent;}
.btn-outline-brand:hover{background:var(--brand);color:#fff;}
.text-brand{color:var(--brand);}
.bg-brand{background:var(--brand);color:#fff;}
.hero{background:linear-gradient(135deg,#0b6e4f 0%,#0a8f63 100%);color:#fff;padding:4rem 0 6rem;}
.hero h1{font-weight:800;font-size:clamp(2rem,5vw,3.5rem);line-height:1.1;}
/* —— Language switcher + RTL landing —— */
.lang-switch{
  display:inline-flex;
  align-items:center;
  border:1px solid #dbe3ee;
  border-radius:999px;
  overflow:hidden;
  background:#f8fafc;
  padding:2px;
  gap:2px;
}
.lang-switch-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:2.4rem;
  padding:.28rem .65rem;
  border-radius:999px;
  font-size:.78rem;
  font-weight:800;
  color:#64748b;
  text-decoration:none;
  line-height:1.2;
}
.lang-switch-btn:hover{color:var(--brand);background:#fff;}
.lang-switch-btn.active{
  background:var(--brand);
  color:#fff;
  box-shadow:0 8px 16px -12px rgba(11,110,79,.9);
}
body.is-rtl,
body.lang-ur{
  font-family:"Noto Nastaliq Urdu","Inter",system-ui,sans-serif;
}
body.is-rtl .saas-hero h1,
body.is-rtl .section-heading h2,
body.is-rtl .saas-story-card h2,
body.is-rtl .saas-final-cta h2{
  line-height:1.35;
  letter-spacing:0;
}
body.is-rtl .saas-kicker{letter-spacing:.04em;}
body.is-rtl .saas-check-list li{
  padding:.55rem 1.7rem .55rem 0;
}
body.is-rtl .saas-check-list-bad li::before{
  left:auto;
  right:0;
}
body.is-rtl .saas-fake-search button{margin-left:0;margin-right:auto;}
body.is-rtl .saas-admin-side{
  border-right:0;
  border-left:1px solid rgba(148,163,184,.15);
}
body.is-rtl .pricing-badge{right:auto;left:.9rem;}
body.is-rtl .lang-switch-btn{font-family:"Noto Nastaliq Urdu","Inter",system-ui,sans-serif;}
body.is-rtl .btn,
body.is-rtl .nav-link,
body.is-rtl .saas-feature h5,
body.is-rtl .pricing-card h5{
  font-family:"Noto Nastaliq Urdu","Inter",system-ui,sans-serif;
}
/* Keep mock browser chrome LTR for realism */
body.is-rtl .saas-browser,
body.is-rtl .saas-admin-mock,
body.is-rtl .saas-phone-mock,
body.is-rtl .saas-float-card{
  direction:ltr;
  text-align:left;
  font-family:"Inter",system-ui,sans-serif;
}
body.is-rtl .saas-float-card .saas-mini-metrics span,
body.is-rtl .saas-float-badge span,
body.is-rtl .saas-float-badge strong,
body.is-rtl .saas-mini-legend{
  font-family:"Noto Nastaliq Urdu","Inter",system-ui,sans-serif;
}
body.is-rtl .saas-float-badge{direction:rtl;text-align:right;}
body.is-rtl .saas-float-card-head span:last-child,
body.is-rtl .saas-mini-metrics span,
body.is-rtl .saas-mini-legend{
  direction:rtl;
  unicode-bidi:plaintext;
}

/* —— SaaS marketing landing —— */
.btn-accent{
  background:var(--accent);
  color:#0f172a;
  border:none;
  font-weight:800;
  box-shadow:0 14px 30px -16px rgba(245,165,36,.9);
}
.btn-accent:hover{background:#ffb53d;color:#0f172a;}
.saas-kicker{
  display:inline-block;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.saas-nav .nav-link{font-weight:600;color:#334155;}
.saas-nav .nav-link:hover{color:var(--brand);}
.saas-landing-page .brand-logo{height:52px;}
.saas-login-menu{
  border:0;
  background:transparent;
  display:inline-flex;
  align-items:center;
  gap:.35rem;
}
.saas-login-dropdown{
  min-width:260px;
  border:1px solid #e2e8f0;
  border-radius:.85rem;
  padding:.45rem;
  box-shadow:0 18px 45px -32px rgba(15,23,42,.55);
}
.saas-login-dropdown .dropdown-item{
  display:flex;
  gap:.7rem;
  align-items:flex-start;
  border-radius:.65rem;
  padding:.7rem .75rem;
  white-space:normal;
}
.saas-login-dropdown .dropdown-item i{
  color:var(--brand);
  font-size:1.1rem;
  margin-top:.1rem;
}
.saas-login-dropdown strong{display:block;color:#0f172a;font-size:.9rem;}
.saas-login-dropdown small{display:block;color:#64748b;font-size:.76rem;margin-top:.1rem;}

.saas-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  min-height:720px;
  display:flex;
  align-items:center;
  padding:4.5rem 0 5rem;
  background:
    radial-gradient(circle at 18% 18%,rgba(245,165,36,.28),transparent 30%),
    radial-gradient(circle at 88% 12%,rgba(56,189,248,.18),transparent 26%),
    linear-gradient(145deg,#041912 0%,#0b6e4f 46%,#0b3d66 100%);
}
.saas-hero-glow{
  position:absolute;
  width:520px;height:520px;
  right:8%;top:10%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.14),transparent 68%);
  filter:blur(10px);
  pointer-events:none;
}
.saas-hero-grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(180deg,#000 30%,transparent 95%);
  pointer-events:none;
  opacity:.55;
}
.saas-hero-copy{position:relative;z-index:2;max-width:640px;}
.saas-hero h1{
  font-weight:800;
  font-size:clamp(2.4rem,5.6vw,4.2rem);
  line-height:1.05;
  letter-spacing:-.03em;
  margin:1rem 0 1.15rem;
}
.saas-hero-accent{
  background:linear-gradient(90deg,#fff 0%,#f5a524 55%,#ffe08a 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.saas-hero .lead{
  max-width:560px;
  font-size:1.12rem;
  line-height:1.7;
  color:rgba(255,255,255,.86);
  margin:0;
}
.saas-pill-row{display:flex;flex-wrap:wrap;gap:.55rem;}
.saas-pill{
  display:inline-flex;align-items:center;gap:.4rem;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.2);
  color:#fff;
  border-radius:999px;
  padding:.4rem .8rem;
  font-size:.78rem;
  font-weight:700;
  backdrop-filter:blur(8px);
}
.saas-pill-soft{background:rgba(11,110,79,.35);}
.saas-pill-on-dark{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);color:#fff;border-radius:999px;padding:.35rem .75rem;font-size:.75rem;font-weight:700;}
.saas-hero-proof{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.75rem;
  max-width:540px;
}
.saas-hero-proof div{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  border-radius:.9rem;
  padding:.75rem .8rem;
}
.saas-hero-proof strong{display:block;font-size:.9rem;margin-bottom:.15rem;}
.saas-hero-proof span{display:block;font-size:.72rem;color:rgba(255,255,255,.7);line-height:1.35;}

.saas-hero-stage{
  position:relative;
  min-height:520px;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
}
.saas-hero-stage-bg{
  position:absolute;
  width:min(100%,440px);
  aspect-ratio:1;
  border-radius:40% 60% 55% 45% / 45% 40% 60% 55%;
  background:
    radial-gradient(circle at 40% 35%,rgba(245,165,36,.35),transparent 45%),
    linear-gradient(160deg,rgba(255,255,255,.16),rgba(15,23,42,.15));
  filter:blur(2px);
  animation:saasBlob 12s ease-in-out infinite alternate;
}
.saas-hero-main-art{
  position:relative;
  z-index:2;
  width:min(100%,460px);
  height:auto;
  filter:drop-shadow(0 30px 50px rgba(0,0,0,.35));
  animation:saasFloat 6s ease-in-out infinite;
}
.saas-float-card{
  position:absolute;
  z-index:3;
  background:rgba(255,255,255,.96);
  color:#0f172a;
  border:1px solid rgba(226,232,240,.95);
  border-radius:1rem;
  box-shadow:0 24px 60px -28px rgba(0,0,0,.55);
  padding:.9rem 1rem;
  backdrop-filter:blur(10px);
  animation:saasFloat 7s ease-in-out infinite;
}
.saas-float-card-top{top:6%;left:0;width:min(250px,72%);animation-delay:-1.5s;}
.saas-float-card-bottom{right:0;bottom:8%;width:min(250px,74%);animation-delay:-3s;}
.saas-float-card-head{
  display:flex;align-items:center;gap:.55rem;
  font-size:.72rem;font-weight:700;color:#64748b;margin-bottom:.65rem;
}
.saas-dot-row{display:inline-flex;gap:.25rem;}
.saas-dot-row i{width:.45rem;height:.45rem;border-radius:50%;background:#cbd5e1;display:block;}
.saas-dot-row i:first-child{background:#f87171;}
.saas-dot-row i:nth-child(2){background:#fbbf24;}
.saas-dot-row i:nth-child(3){background:#34d399;}
.saas-mini-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin-bottom:.65rem;}
.saas-mini-metrics div{background:#f8fafc;border-radius:.55rem;padding:.45rem .35rem;text-align:center;}
.saas-mini-metrics strong{display:block;font-size:1rem;color:var(--brand);}
.saas-mini-metrics span{display:block;font-size:.58rem;color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.03em;}
.saas-mini-bars{display:flex;align-items:flex-end;gap:.28rem;height:46px;}
.saas-mini-bars span{
  flex:1;height:var(--h);
  border-radius:.3rem .3rem .15rem .15rem;
  background:linear-gradient(180deg,#34d399,#0b6e4f);
  opacity:.9;
}
.saas-mini-seats{display:grid;grid-template-columns:repeat(6,1fr);gap:.3rem;margin-bottom:.55rem;}
.saas-mini-seats span{aspect-ratio:1;border-radius:.3rem;display:block;}
.saas-mini-seats .free{background:#bbf7d0;}
.saas-mini-seats .hold{background:#fde68a;}
.saas-mini-seats .sold{background:#fecaca;}
.saas-mini-legend{display:flex;gap:.7rem;font-size:.68rem;color:#64748b;font-weight:600;}
.saas-mini-legend i{display:inline-block;width:.55rem;height:.55rem;border-radius:.15rem;margin-right:.25rem;vertical-align:middle;}
.saas-mini-legend .free{background:#86efac;}
.saas-mini-legend .hold{background:#fbbf24;}
.saas-mini-legend .sold{background:#f87171;}
.saas-float-badge{
  position:absolute;
  z-index:4;
  left:4%;
  bottom:18%;
  display:flex;align-items:center;gap:.65rem;
  background:#0f172a;
  color:#fff;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  padding:.55rem .9rem .55rem .65rem;
  box-shadow:0 18px 40px -20px rgba(0,0,0,.6);
  animation:saasFloat 5.5s ease-in-out infinite;
  animation-delay:-2s;
}
.saas-float-badge i{
  width:2rem;height:2rem;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:rgba(245,165,36,.2);color:var(--accent);
}
.saas-float-badge strong{display:block;font-size:.82rem;line-height:1.1;}
.saas-float-badge span{display:block;font-size:.68rem;color:#94a3b8;}

@keyframes saasFloat{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-10px);}
}
@keyframes saasBlob{
  0%{transform:rotate(0deg) scale(1);}
  100%{transform:rotate(12deg) scale(1.06);}
}

.saas-trust-bar{
  margin-top:-1.5rem;
  position:relative;
  z-index:3;
  padding:0 0 1rem;
}
.saas-trust-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:1.15rem;
  padding:1.1rem 1.25rem;
  box-shadow:0 24px 55px -36px rgba(15,23,42,.45);
}
.saas-trust-item{
  display:flex;align-items:center;gap:.75rem;
  min-width:0;
}
.saas-trust-item i{
  width:2.4rem;height:2.4rem;border-radius:.75rem;
  display:inline-flex;align-items:center;justify-content:center;
  background:#e6f4ee;color:var(--brand);font-size:1.15rem;flex:0 0 auto;
}
.saas-trust-item strong{display:block;font-size:.9rem;}
.saas-trust-item span{display:block;font-size:.75rem;color:var(--muted);}

.saas-section{padding:4.5rem 0;}
.section-heading{max-width:740px;margin:0 auto 2.4rem;text-align:center;}
.section-heading h2{font-size:clamp(1.9rem,4vw,2.85rem);font-weight:800;letter-spacing:-.02em;margin:.45rem 0;}
.section-heading p{color:var(--muted);font-size:1.05rem;line-height:1.7;margin:0;}

.saas-story-card{
  border-radius:1.25rem;
  padding:1.6rem 1.5rem;
  border:1px solid #e2e8f0;
  background:#fff;
  box-shadow:0 20px 50px -40px rgba(15,23,42,.55);
}
.saas-story-card h2{font-weight:800;font-size:clamp(1.5rem,3vw,2rem);margin:.5rem 0 1rem;letter-spacing:-.02em;}
.saas-story-problem{background:linear-gradient(180deg,#fff7f7 0%,#fff 70%);}
.saas-story-solution{background:linear-gradient(180deg,#f3fdf8 0%,#fff 55%);}
.saas-check-list{list-style:none;padding:0;margin:0;}
.saas-check-list li{
  position:relative;
  padding:.55rem 0 .55rem 1.7rem;
  color:#475569;
  border-bottom:1px dashed #e2e8f0;
  line-height:1.45;
}
.saas-check-list li:last-child{border-bottom:0;}
.saas-check-list-bad li::before{
  content:"✕";
  position:absolute;left:0;top:.55rem;
  color:#dc2626;font-weight:800;font-size:.85rem;
}
.saas-mini-feature{
  display:flex;gap:.8rem;align-items:flex-start;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:1rem;
  padding:1rem;
  height:100%;
}
.saas-mini-feature strong{display:block;margin-bottom:.2rem;}
.saas-mini-feature p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.5;}
.saas-mini-feature .feature-icon{flex:0 0 auto;}

.saas-feature{
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:1.1rem;
  padding:1.4rem;
  box-shadow:0 18px 45px -38px rgba(15,23,42,.65);
  transition:transform .18s ease, box-shadow .18s ease;
}
.saas-feature:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 50px -30px rgba(11,110,79,.35);
}
.saas-feature h5,.pricing-card h5{font-weight:800;}
.saas-feature p{color:var(--muted);margin:0;line-height:1.65;}

.saas-showcase{
  padding:4.5rem 0;
  background:
    radial-gradient(circle at 10% 20%,rgba(11,110,79,.06),transparent 30%),
    radial-gradient(circle at 90% 10%,rgba(245,165,36,.08),transparent 28%),
    #f8fafc;
  border-block:1px solid #e2e8f0;
}
.saas-showcase-card{
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:1.2rem;
  padding:1rem 1rem 1.35rem;
  box-shadow:0 20px 50px -40px rgba(15,23,42,.5);
}
.saas-showcase-card h5{font-weight:800;margin:1rem .25rem .35rem;}
.saas-showcase-card p{color:var(--muted);margin:0 .25rem;line-height:1.6;}
.saas-showcase-visual{
  border-radius:1rem;
  min-height:220px;
  display:flex;align-items:center;justify-content:center;
  padding:1rem;
}
.saas-showcase-web{background:linear-gradient(160deg,#ecfdf5,#dbeafe);}
.saas-showcase-admin{background:linear-gradient(160deg,#0f172a,#1e293b);}
.saas-showcase-crew{background:linear-gradient(160deg,#fff7ed,#ecfdf5);}

.saas-browser{
  width:100%;
  background:#fff;
  border-radius:.85rem;
  border:1px solid #dbe3ee;
  overflow:hidden;
  box-shadow:0 18px 40px -28px rgba(15,23,42,.55);
}
.saas-browser-bar{
  display:flex;align-items:center;gap:.35rem;
  background:#f1f5f9;padding:.55rem .7rem;font-size:.68rem;color:#64748b;
}
.saas-browser-bar i{width:.45rem;height:.45rem;border-radius:50%;background:#cbd5e1;display:block;}
.saas-browser-bar i:first-child{background:#f87171;}
.saas-browser-bar i:nth-child(2){background:#fbbf24;}
.saas-browser-bar i:nth-child(3){background:#34d399;}
.saas-browser-bar span{margin-left:.4rem;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:.15rem .55rem;}
.saas-browser-body{padding:.85rem;}
.saas-fake-search{
  display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;
  background:#f8fafc;border:1px solid #e2e8f0;border-radius:.7rem;padding:.55rem .65rem;margin-bottom:.7rem;
}
.saas-fake-search span{font-size:.78rem;font-weight:700;color:#0f172a;}
.saas-fake-search button{
  margin-left:auto;border:0;background:var(--brand);color:#fff;
  border-radius:.45rem;padding:.3rem .55rem;font-size:.72rem;font-weight:700;
}
.saas-fake-trip{
  display:flex;justify-content:space-between;align-items:center;gap:.5rem;
  border:1px solid #e2e8f0;border-radius:.7rem;padding:.55rem .65rem;margin-bottom:.45rem;
}
.saas-fake-trip strong{display:block;font-size:.85rem;}
.saas-fake-trip small{display:block;color:#64748b;font-size:.7rem;}
.saas-fake-trip em{font-style:normal;font-weight:800;color:var(--brand);font-size:.85rem;}

.saas-admin-mock{
  width:100%;height:180px;display:flex;border-radius:.8rem;overflow:hidden;
  border:1px solid rgba(148,163,184,.25);background:#0b1220;
}
.saas-admin-side{width:22%;background:#020617;border-right:1px solid rgba(148,163,184,.15);}
.saas-admin-main{flex:1;padding:.7rem;}
.saas-admin-top{height:14px;width:45%;background:rgba(255,255,255,.12);border-radius:999px;margin-bottom:.7rem;}
.saas-admin-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin-bottom:.6rem;}
.saas-admin-kpis span{height:42px;border-radius:.45rem;background:linear-gradient(180deg,rgba(52,211,153,.25),rgba(255,255,255,.05));}
.saas-admin-table{display:grid;gap:.35rem;}
.saas-admin-table div{height:12px;border-radius:999px;background:rgba(255,255,255,.1);}
.saas-admin-table div:nth-child(2){width:88%;}
.saas-admin-table div:nth-child(3){width:76%;}
.saas-admin-table div:nth-child(4){width:92%;}

.saas-phone-mock{
  width:130px;background:#0f172a;border-radius:1.4rem;padding:.55rem;
  border:2px solid #1e293b;box-shadow:0 20px 40px -22px rgba(0,0,0,.55);
}
.saas-phone-notch{width:42%;height:8px;border-radius:999px;background:#334155;margin:0 auto .45rem;}
.saas-phone-screen{
  background:#fff;border-radius:1rem;padding:.75rem .6rem 1rem;text-align:center;
}
.saas-qr-box{
  width:72px;height:72px;margin:0 auto .55rem;border-radius:.75rem;
  display:flex;align-items:center;justify-content:center;
  background:#ecfdf5;color:var(--brand);font-size:1.8rem;
  border:1px dashed rgba(11,110,79,.35);
}
.saas-phone-screen strong{display:block;font-size:.78rem;}
.saas-phone-screen small{display:block;color:#64748b;font-size:.65rem;margin:.2rem 0 .55rem;}
.saas-phone-screen button{
  border:0;background:var(--brand);color:#fff;border-radius:.45rem;
  font-size:.68rem;font-weight:700;padding:.35rem .55rem;width:100%;
}

.saas-band{padding:4.5rem 0;background:linear-gradient(135deg,#eefdf6 0%,#fff 52%,#eff6ff 100%);border-block:1px solid #e2e8f0;}
.saas-stat{height:100%;background:#fff;border:1px solid #e2e8f0;border-radius:1rem;padding:1.25rem;}
.saas-stat strong{display:block;font-weight:800;margin-bottom:.45rem;}
.saas-stat span{display:block;color:var(--muted);line-height:1.55;}
.saas-launch-cta{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  background:#fff;border:1px solid #d1fae5;border-radius:1rem;padding:1rem 1.15rem;
  box-shadow:0 18px 40px -34px rgba(11,110,79,.55);
}
.saas-launch-cta strong{display:block;}
.saas-launch-cta span{display:block;color:var(--muted);font-size:.9rem;margin-top:.15rem;}

.pricing-card{
  position:relative;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:1.15rem;
  padding:1.45rem;
  box-shadow:0 20px 55px -42px rgba(15,23,42,.65);
  display:flex;flex-direction:column;
}
.pricing-card-featured{
  border-color:rgba(11,110,79,.4);
  box-shadow:0 28px 70px -40px rgba(11,110,79,.75);
  transform:translateY(-4px);
  background:linear-gradient(180deg,#f3fdf8 0%,#fff 38%);
}
.pricing-badge{
  position:absolute;top:.9rem;right:.9rem;
  background:var(--brand);color:#fff;border-radius:999px;
  font-size:.68rem;font-weight:800;padding:.28rem .6rem;letter-spacing:.03em;text-transform:uppercase;
}
.pricing-card-top{margin-bottom:.25rem;}
.pricing-tagline{color:var(--muted);margin:.2rem 0 .75rem;min-height:2.4rem;}
.pricing-price{font-size:1.55rem;font-weight:800;color:#0f172a;}
.pricing-price small{display:block;font-size:.78rem;font-weight:600;color:var(--muted);margin-top:.15rem;}
.pricing-card ul{padding-left:1.1rem;margin:1rem 0 1.35rem;color:#334155;line-height:1.9;flex:1;}
.pricing-card .btn{margin-top:auto;}

.saas-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;}
.saas-steps div{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;padding:1.25rem;height:100%;}
.saas-steps span{display:inline-flex;width:2rem;height:2rem;align-items:center;justify-content:center;border-radius:50%;background:var(--brand);color:#fff;font-weight:800;margin-bottom:1rem;}
.saas-steps strong{display:block;font-size:1.05rem;margin-bottom:.35rem;}
.saas-steps p{color:var(--muted);margin:0;line-height:1.6;}

.saas-agency-card{
  background:#fff;border:1px solid #e2e8f0;border-radius:1.1rem;padding:1.25rem;
  box-shadow:0 16px 40px -34px rgba(15,23,42,.5);
  transition:transform .18s ease, box-shadow .18s ease;
}
.saas-agency-card:hover{transform:translateY(-3px);box-shadow:0 22px 45px -30px rgba(11,110,79,.35);}
.saas-agency-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.85rem;}
.saas-agency-logo{max-height:48px;max-width:140px;object-fit:contain;}
.saas-agency-logo-fallback{
  width:2.5rem;height:2.5rem;border-radius:.75rem;
  display:inline-flex;align-items:center;justify-content:center;
  background:#e6f4ee;color:var(--brand);font-weight:800;
}
.saas-empty-agencies{
  text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:1.2rem;padding:2.5rem 1.5rem;
}
.saas-empty-agencies .feature-icon{margin:0 auto;}

.saas-final-cta{padding:1rem 0 4.5rem;}
.saas-final-cta-inner{
  display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;
  border-radius:1.5rem;padding:2rem 1.75rem;
  color:#fff;
  background:
    radial-gradient(circle at 85% 20%,rgba(245,165,36,.28),transparent 28%),
    linear-gradient(135deg,#06281f 0%,#0b6e4f 50%,#0f3d63 100%);
  box-shadow:0 30px 70px -40px rgba(6,40,31,.8);
}
.saas-final-cta h2{font-weight:800;font-size:clamp(1.6rem,3.5vw,2.3rem);margin:.7rem 0 .55rem;max-width:560px;letter-spacing:-.02em;}
.saas-final-cta p{margin:0;max-width:540px;color:rgba(255,255,255,.82);line-height:1.65;}
.saas-final-cta-actions{display:flex;flex-wrap:wrap;gap:.65rem;}
.saas-footer-links a{color:#cbd5e1;}

@media (max-width: 991.98px){
  .saas-hero{min-height:auto;padding:3.25rem 0 3.5rem;}
  .saas-hero-stage{min-height:420px;margin-top:.5rem;}
  .saas-hero-main-art{width:min(88%,380px);}
  .saas-float-card-top{top:0;left:2%;}
  .saas-float-card-bottom{right:2%;bottom:2%;}
  .saas-float-badge{left:50%;bottom:0;transform:translateX(-50%);animation:none;}
  .saas-trust-grid{grid-template-columns:1fr 1fr;}
  .saas-steps{grid-template-columns:1fr;}
  .pricing-card-featured{transform:none;}
  .saas-hero-proof{grid-template-columns:1fr;}
}
@media (max-width: 575.98px){
  .saas-trust-grid{grid-template-columns:1fr;}
  .saas-float-card{display:none;}
  .saas-hero-stage{min-height:300px;}
  .saas-final-cta-inner{padding:1.4rem;}
}
.search-card{background:#fff;color:var(--ink);border-radius:1rem;padding:1.5rem;box-shadow:0 20px 50px -20px rgba(0,0,0,.3);margin-top:-3rem;}
.search-card label{font-size:.75rem;text-transform:uppercase;color:var(--muted);font-weight:600;letter-spacing:.5px;}
.route-card,.feature-card{border:1px solid #e5e7eb;border-radius:.75rem;transition:transform .2s,box-shadow .2s;background:#fff;}
.route-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px -10px rgba(0,0,0,.15);}
.route-banner-img{width:100%;height:150px;object-fit:cover;display:block;background:#e2e8f0;}
.admin-route-banner{width:120px;height:56px;object-fit:cover;border-radius:.5rem;border:1px solid #e5e7eb;background:#e2e8f0;display:block;}
.route-detail-banner{width:100%;max-height:260px;object-fit:cover;border-radius:.75rem;border:1px solid #e5e7eb;background:#e2e8f0;display:block;}
.route-banner-placeholder{height:56px;border:1px dashed #cbd5e1;border-radius:.5rem;color:var(--muted);display:flex;align-items:center;justify-content:center;background:#f8fafc;}
.admin-login-plus{position:absolute;top:.75rem;right:.75rem;width:28px;height:28px;border-radius:50%;border:1px solid #cbd5e1;color:#64748b;text-decoration:none;display:flex;align-items:center;justify-content:center;font-weight:800;line-height:1;background:#fff;}
.admin-login-plus:hover{border-color:var(--brand);color:var(--brand);background:#e6f4ee;}
.feature-icon{width:48px;height:48px;border-radius:12px;background:#e6f4ee;color:var(--brand);display:flex;align-items:center;justify-content:center;font-size:1.5rem;}
.seat-grid{display:grid;gap:.75rem;overflow-x:auto;padding-bottom:.25rem}
.seat-row{display:flex;gap:.5rem;justify-content:center;align-items:center;min-width:max-content}
.seat-row-number{width:1.75rem;text-align:center;color:var(--muted);font-size:.75rem;font-weight:700;flex:0 0 auto}
.seat-aisle{width:3.5rem;min-height:42px;border:1px dashed #cbd5e1;border-radius:999px;color:#94a3b8;font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;justify-content:center;background:#f8fafc;flex:0 0 auto}
.seat-gap{width:2rem}
.seat{width:46px;height:46px;border-radius:10px;border:1px solid #cbd5e1;background:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;cursor:pointer;user-select:none;position:relative;overflow:hidden;flex:0 0 auto}
.seat input{position:absolute;opacity:0;inset:0}
.seat:hover:not(.booked):not(.blocked){border-color:var(--brand)}
.seat.selected,.seat:has(input:checked){background:var(--brand);color:#fff;border-color:var(--brand)}
.seat.booked{background:#e2e8f0;color:#94a3b8;cursor:not-allowed}
.seat-booking-link{background:#dbeafe!important;color:#1e40af!important;border-color:#93c5fd!important;text-decoration:none;cursor:pointer!important;}
.seat-booking-link:hover{background:#1e40af!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 8px 18px -12px rgba(30,64,175,.8);}
.seat-action{flex:0 0 auto}
.seat-action .seat{border:1px solid #93c5fd}
.seat-expired{background:#fef3c7!important;color:#92400e!important;border-color:#f59e0b!important;}
.seat-expired:hover{background:#92400e!important;color:#fff!important;}
.seat-menu{width:240px;white-space:normal;box-shadow:0 16px 35px -18px rgba(15,23,42,.45);}
.seat.blocked{background:#fee2e2;color:#991b1b;cursor:not-allowed}
.seat.preview-seat{cursor:default}
.seat.vip{background:#fef3c7;color:#92400e;border-color:#f59e0b}
.seat-template-preview{max-height:360px;overflow:auto;background:#f8fafc;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem}
.legend-box{width:18px;height:18px;border-radius:4px;display:inline-block;vertical-align:middle;margin-right:6px;}
.bus-front{border:1px dashed #94a3b8;border-radius:8px 8px 30px 30px;padding:.4rem;text-align:center;color:var(--muted);font-size:.75rem;margin-bottom:1rem;}
.badge-pending{background:#fef3c7;color:#92400e;}
.badge-paid{background:#dcfce7;color:#166534;}
.badge-confirmed{background:#dbeafe;color:#1e40af;}
.badge-cancelled{background:#fee2e2;color:#991b1b;}
.badge-promo{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa;}
.fare-compare{display:flex;align-items:baseline;gap:.45rem;flex-wrap:wrap;}
.fare-original{color:#94a3b8;text-decoration:line-through;font-size:.88rem;font-weight:700;}
/* Admin shell — workspace-aware navigation */
.admin-body{background:#f1f5f9;}
.admin-shell{min-height:100vh;}
.admin-sidebar{
  background:linear-gradient(180deg,#0b1220 0%,#0f172a 55%,#111827 100%);
  color:#cbd5e1;
  min-height:100vh;
  position:sticky;
  top:0;
  height:100vh;
  padding:0;
}
.admin-sidebar-inner{
  display:flex;
  flex-direction:column;
  height:100%;
  min-height:100vh;
  padding:.9rem .75rem 1rem;
  gap:.75rem;
}
.admin-sidebar-top{flex:0 0 auto;}
.admin-brand{
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--brand);
  font-weight:800;
  font-size:1.35rem;
  letter-spacing:-.04em;
  text-decoration:none;
  padding:.55rem .65rem;
  margin:.15rem .15rem .75rem;
  background:#fff;
  border:1px solid rgba(226,232,240,.95);
  border-radius:.95rem;
  box-shadow:0 16px 36px -24px rgba(0,0,0,.55);
}
.admin-brand .dot{color:var(--accent);}
.admin-brand:hover{color:var(--brand);}
.admin-workspace-card{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(148,163,184,.22);
  border-radius:.9rem;
  padding:.75rem .85rem;
  margin:0 .15rem .65rem;
}
.admin-workspace-kicker{
  display:flex;
  align-items:center;
  gap:.35rem;
  color:#94a3b8;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  margin-bottom:.25rem;
}
.admin-workspace-name{
  color:#fff;
  font-weight:800;
  font-size:.98rem;
  line-height:1.25;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.admin-workspace-meta{
  color:#94a3b8;
  font-size:.75rem;
  margin-top:.2rem;
}
.admin-agency-switcher{
  margin:0 .15rem .35rem;
  padding:.7rem .75rem;
  border-radius:.85rem;
  background:rgba(15,23,42,.55);
  border:1px solid rgba(148,163,184,.18);
}
.admin-agency-switcher-label{
  display:block;
  color:#94a3b8;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  margin-bottom:.35rem;
}
.admin-agency-select{
  background:#0b1220;
  border-color:#334155;
  color:#f8fafc;
  font-weight:600;
}
.admin-agency-select:focus{
  background:#0b1220;
  border-color:var(--brand);
  color:#fff;
  box-shadow:0 0 0 .2rem rgba(11,110,79,.25);
}
.admin-agency-select option{color:#0f172a;background:#fff;}
.admin-agency-switcher-hint{
  color:#94a3b8;
  font-size:.72rem;
  margin-top:.45rem;
  line-height:1.35;
}
.admin-agency-switcher-hint strong{color:#e2e8f0;}
.admin-nav{display:flex;flex-direction:column;gap:.15rem;}
.admin-nav-scroll{
  flex:1 1 auto;
  overflow-y:auto;
  min-height:0;
  padding-right:.15rem;
  scrollbar-width:thin;
  scrollbar-color:#334155 transparent;
}
.admin-nav-section{margin-bottom:.55rem;}
.admin-nav-section-title{
  color:#64748b;
  font-size:.65rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  padding:.35rem .7rem .2rem;
}
.admin-nav-link{
  color:#cbd5e1;
  text-decoration:none;
  display:flex;
  align-items:center;
  gap:.65rem;
  padding:.55rem .7rem;
  border-radius:.65rem;
  margin-bottom:.1rem;
  font-size:.9rem;
  font-weight:500;
  border:1px solid transparent;
  transition:background .15s,color .15s,border-color .15s;
}
.admin-nav-link i{
  width:1.1rem;
  text-align:center;
  opacity:.9;
  font-size:1rem;
}
.admin-nav-link:hover,
.admin-nav-link:focus{
  background:rgba(30,41,59,.95);
  color:#fff;
}
.admin-nav-link.active{
  background:linear-gradient(135deg,rgba(11,110,79,.95),rgba(10,143,99,.85));
  color:#fff;
  border-color:rgba(245,165,36,.25);
  box-shadow:0 10px 24px -18px rgba(11,110,79,.9);
}
.admin-nav-callout{
  margin:.2rem .15rem .7rem;
  padding:.75rem .8rem;
  border-radius:.8rem;
  background:rgba(245,165,36,.1);
  border:1px solid rgba(245,165,36,.28);
  color:#fde68a;
}
.admin-nav-callout-title{
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  margin-bottom:.25rem;
  color:#fbbf24;
}
.admin-nav-callout p{
  margin:0;
  font-size:.75rem;
  line-height:1.4;
  color:#fde68a;
}
.admin-sidebar-footer{
  flex:0 0 auto;
  padding-top:.35rem;
  border-top:1px solid rgba(148,163,184,.15);
  display:flex;
  flex-direction:column;
  gap:.55rem;
}
.admin-pwa-mini{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(148,163,184,.16);
  border-radius:.75rem;
  padding:.65rem .7rem;
}
.admin-pwa-mini-status{
  color:#94a3b8;
  font-size:.7rem;
  line-height:1.3;
}
.admin-nav-logout{color:#fca5a5!important;}
.admin-nav-logout:hover{background:rgba(127,29,29,.35)!important;color:#fff!important;}

.admin-main{
  min-height:100vh;
  background:#f1f5f9;
  padding:0;
}
.admin-topbar{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:1rem;
  flex-wrap:wrap;
  padding:1rem 1.25rem .75rem;
  background:rgba(255,255,255,.86);
  border-bottom:1px solid #e2e8f0;
  backdrop-filter:blur(10px);
  position:sticky;
  top:0;
  z-index:20;
}
.admin-topbar-left{min-width:0;}
.admin-breadcrumb-kicker{
  color:#64748b;
  font-size:.75rem;
  font-weight:700;
  letter-spacing:.02em;
  margin-bottom:.2rem;
}
.admin-topbar-title-row{
  display:flex;
  align-items:center;
  gap:.75rem;
  flex-wrap:wrap;
}
.admin-topbar-right{
  display:flex;
  align-items:center;
  gap:.5rem;
  flex-wrap:wrap;
}
.admin-user-pill{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:999px;
  padding:.35rem .75rem;
  font-size:.85rem;
  font-weight:600;
  color:#0f172a;
}
.admin-mode-chip{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:.28rem .65rem;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.admin-mode-chip-platform{background:#e0e7ff;color:#3730a3;}
.admin-mode-chip-agency{background:#dcfce7;color:#166534;}
.admin-mode-chip-crew{background:#ffedd5;color:#9a3412;}
.admin-exit-agency-link{
  color:#64748b;
  text-decoration:none;
  font-weight:600;
}
.admin-exit-agency-link:hover{color:var(--brand);}
.admin-mode-banner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
  flex-wrap:wrap;
  margin:1rem 1.25rem 0;
  padding:.85rem 1rem;
  border-radius:.9rem;
  border:1px solid #e2e8f0;
  background:#fff;
}
.admin-mode-banner-platform{
  border-color:#c7d2fe;
  background:linear-gradient(135deg,#eef2ff 0%,#ffffff 70%);
}
.admin-mode-banner-agency{
  border-color:#bbf7d0;
  background:linear-gradient(135deg,#ecfdf5 0%,#ffffff 70%);
}
.admin-content{padding:1rem 1.25rem 2rem;}
.admin-mobile-topbar{background:#0f172a;color:#fff;position:sticky;top:0;z-index:1030;box-shadow:0 10px 24px -20px rgba(15,23,42,.9);}
.admin-mobile-topbar .navbar-brand{
  font-weight:800;
  letter-spacing:-.5px;
  background:#fff;
  border-radius:.75rem;
  padding:.25rem .45rem;
  box-shadow:0 12px 26px -22px rgba(0,0,0,.9);
}
.admin-mobile-menu{background:#0f172a;color:#cbd5e1;}
.admin-mobile-menu .offcanvas-title{color:#fff;font-weight:800;}
.admin-mobile-menu .admin-workspace-card{margin:0 0 .75rem;}
.admin-pwa-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:#fff;border:1px solid #e5e7eb;border-radius:.85rem;padding:.85rem 1rem;box-shadow:0 14px 32px -28px rgba(15,23,42,.65);}
.stat-card{background:#fff;border-radius:.75rem;padding:1.25rem;border:1px solid #e5e7eb;}
.stat-card .num{font-size:1.75rem;font-weight:800;}
.manifest-stat{border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;background:#f8fafc;}
.manifest-stat span{display:block;color:var(--muted);font-size:.75rem;text-transform:uppercase;font-weight:800;letter-spacing:.04em;}
.manifest-stat strong{display:block;font-size:1.5rem;margin-top:.25rem;}
.manifest-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:#475569;background:#f8fafc;}
.manifest-inactive{background:#f8fafc;}
.manifest-signatures div div{border-top:1px solid #111827;padding-top:.5rem;margin-top:2rem;color:#64748b;font-size:.8rem;}
.booking-trip-card{overflow:hidden;box-shadow:0 12px 30px -26px rgba(15,23,42,.55);}
.booking-trip-header{background:linear-gradient(135deg,#ffffff 0%,#f8fafc 58%,#e6f4ee 100%);}
.booking-trip-stat{border:1px solid #e2e8f0;border-radius:.75rem;padding:.85rem;background:rgba(255,255,255,.78);}
.booking-trip-stat span{display:block;color:var(--muted);font-size:.7rem;text-transform:uppercase;font-weight:800;letter-spacing:.04em;}
.booking-trip-stat strong{display:block;font-size:1.15rem;margin-top:.2rem;}
.booking-passenger-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#475569;background:#f8fafc;}
.booking-row-inactive{background:#f8fafc;}
.qr-scanner-frame{position:relative;width:min(100%,320px);aspect-ratio:1/1;margin-inline:auto;background:#020617;border-radius:1rem;overflow:hidden;border:1px solid #cbd5e1;box-shadow:0 18px 45px -28px rgba(15,23,42,.8);}
.qr-video{width:100%;height:100%;object-fit:cover;display:block;}
.qr-scan-box{position:absolute;inset:18%;border:3px solid rgba(245,165,36,.95);border-radius:.85rem;box-shadow:0 0 0 999px rgba(2,6,23,.28);}
.qr-scan-box::before,.qr-scan-box::after{content:"";position:absolute;width:34px;height:34px;border-color:#fff;}
.qr-scan-box::before{top:-5px;left:-5px;border-top:4px solid #fff;border-left:4px solid #fff;border-radius:.45rem 0 0 0;}
.qr-scan-box::after{right:-5px;bottom:-5px;border-right:4px solid #fff;border-bottom:4px solid #fff;border-radius:0 0 .45rem 0;}
.vehicle-edit-modal .modal-body{background:#f8fafc;}
.vehicle-edit-modal-content{max-height:calc(100vh - 2rem);}
.vehicle-edit-preview{width:100%;max-height:220px;object-fit:cover;border-radius:.75rem;border:1px solid #e5e7eb;background:#e2e8f0;display:block;}
.vehicle-edit-footer{position:sticky;bottom:0;background:#fff;z-index:2;border-top:1px solid #e5e7eb;}
.payment-method{border:2px solid #e5e7eb;border-radius:.75rem;padding:1rem;cursor:pointer;display:flex;align-items:center;gap:.75rem;transition:all .15s;}
.payment-method:hover{border-color:var(--brand);}
.payment-method.active{border-color:var(--brand);background:#e6f4ee;}
.timer-pill{background:#fef3c7;color:#92400e;padding:.4rem .8rem;border-radius:999px;font-weight:600;font-size:.85rem;display:inline-flex;align-items:center;gap:.4rem;}
.step{display:flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.85rem;}
.step .num{width:28px;height:28px;border-radius:50%;background:#e5e7eb;display:flex;align-items:center;justify-content:center;font-weight:700;}
.step.active{color:var(--brand);}
.step.active .num,.step.done .num{background:var(--brand);color:#fff;}
footer{background:#0f172a;color:#94a3b8;padding:2rem 0;margin-top:4rem;}
footer a{color:#cbd5e1;text-decoration:none;}
.print-body{background:#e5e7eb;color:#111827;font-family:Inter,Arial,sans-serif;margin:0;padding:16px;}
.print-body{page:a4-ticket;}
.print-actions{display:flex;gap:10px;justify-content:center;margin-bottom:18px;}
.print-actions button,.print-actions a{border:1px solid #0b6e4f;background:#fff;color:#0b6e4f;border-radius:6px;padding:8px 14px;text-decoration:none;font:inherit;cursor:pointer;}
.ticket-sheet{max-width:840px;margin:0 auto;background:#fff;padding:18px;box-shadow:0 20px 50px -30px rgba(0,0,0,.35);}
.ticket-copy{border:2px solid #111827;border-radius:12px;padding:14px;margin-bottom:12px;page-break-inside:avoid;break-inside:avoid;}
.ticket-copy-label{text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-size:11px;font-weight:800;margin-bottom:8px;}
.ticket-header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;border-bottom:1px solid #cbd5e1;padding-bottom:10px;margin-bottom:10px;}
.ticket-header h1{font-size:26px;margin:0;color:#0b6e4f;}
.ticket-header p{margin:4px 0 0;color:#64748b;font-weight:700;}
.ticket-header img{width:104px;height:104px;}
.ticket-header .ticket-logo{width:auto;height:42px;margin-bottom:6px;}
.ticket-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;}
.ticket-grid span{display:block;color:#64748b;font-size:11px;text-transform:uppercase;font-weight:800;}
.ticket-grid strong{display:block;font-size:14px;margin-top:2px;}
.ticket-note{margin:10px 0 0;color:#64748b;font-size:12px;}
.signature-line{border-top:1px solid #111827;width:200px;margin-top:26px;padding-top:5px;color:#64748b;font-size:11px;}
.thermal-body{background:#e5e7eb;margin:0;padding:18px;font-family:monospace;color:#000;}
.thermal-body{page:thermal-ticket;}
.thermal-ticket{width:280px;margin:0 auto;background:#fff;padding:12px;}
.thermal-ticket h1{text-align:center;font-size:22px;margin:0 0 4px;}
.thermal-ticket p{font-size:13px;line-height:1.25;margin:6px 0;}
.thermal-ticket hr{border:0;border-top:1px dashed #000;margin:10px 0;}
.thermal-ticket img{display:block;width:150px;height:150px;margin:10px auto;}
.thermal-ticket .thermal-logo{width:auto;height:44px;margin:0 auto 6px;}
.thermal-ticket .center{text-align:center;}
.thermal-ticket .small{font-size:11px;}
.offline-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:linear-gradient(135deg,#0f172a,#0b6e4f);}
.offline-card{max-width:460px;background:#fff;border-radius:1.25rem;padding:2rem;box-shadow:0 24px 70px -30px rgba(0,0,0,.55);}
.offline-card h1{font-weight:800;letter-spacing:-.04em;margin:.75rem 0;}
.offline-card p{color:#64748b;}
.offline-card button{border:0;background:#0b6e4f;color:#fff;border-radius:.75rem;padding:.75rem 1rem;font-weight:800;}
.offline-mark{display:inline-flex;background:#fef3c7;color:#92400e;border-radius:999px;padding:.35rem .75rem;font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;}
@media (max-width: 991px){
  .saas-hero{min-height:auto;padding:4rem 0 5rem;}
  .saas-hero-screen{opacity:.2;}
  .saas-hero-image{right:-36%;top:42%;width:105vw;max-height:78%;transform:translateY(-50%);}
  .saas-window-main{right:-28%;top:8%;width:86vw;}
  .saas-window-side{display:none;}
  .saas-section{padding:3rem 0;}
  .saas-steps{grid-template-columns:1fr;}
  .admin-main{min-height:calc(100vh - 56px)!important;}
  .admin-topbar{position:static;padding:1rem;}
  .admin-content{padding:1rem;}
  .admin-mode-banner{margin:0 1rem 1rem;}
  .table-responsive{border-radius:.75rem;}
  .modal-dialog{margin:.75rem;}
  .sticky-top{position:static!important;}
  .admin-pwa-bar{align-items:flex-start;flex-direction:column;}
  .admin-topbar-right .btn span{display:none;}
  .modal-footer form.d-flex{width:100%;}
  .modal-footer form.d-flex .form-control,
  .modal-footer form.d-flex .btn{max-width:none!important;width:100%;}
  .vehicle-edit-modal{margin:0!important;}
  .vehicle-edit-modal-content{height:100vh;max-height:100vh;border:0;border-radius:0;}
  .vehicle-edit-modal .modal-body{padding:1rem;overflow-y:auto;}
  .vehicle-edit-footer{display:grid;grid-template-columns:1fr;gap:.5rem;}
  .vehicle-edit-footer .btn{width:100%;}
  .vehicle-edit-preview{max-height:180px;}
}
@media (min-width: 992px) and (max-width: 1199px){
  .admin-sidebar{width:280px;max-width:280px;flex:0 0 280px;}
  .admin-main{width:calc(100% - 280px);max-width:calc(100% - 280px);flex:0 0 calc(100% - 280px);}
}
@media print{
  body:not(.print-body):not(.thermal-body) .admin-sidebar,
  body:not(.print-body):not(.thermal-body) .no-print,
  body:not(.print-body):not(.thermal-body) .alert,
  body:not(.print-body):not(.thermal-body) .btn{display:none!important;}
  body:not(.print-body):not(.thermal-body) .container-fluid,
  body:not(.print-body):not(.thermal-body) .row,
  body:not(.print-body):not(.thermal-body) main{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important;}
  body:not(.print-body):not(.thermal-body) .trip-manifest{border:0!important;border-radius:0!important;padding:0!important;}
  body:not(.print-body):not(.thermal-body) .manifest-table{font-size:10px!important;}
  body:not(.print-body):not(.thermal-body) .manifest-table th,
  body:not(.print-body):not(.thermal-body) .manifest-table td{padding:4px!important;}
  body:not(.print-body):not(.thermal-body) .manifest-stat{padding:6px!important;}
  body:not(.print-body):not(.thermal-body) .manifest-stat strong{font-size:16px!important;}
  body.print-body{background:#fff!important;padding:0!important;margin:0!important;}
  body.print-body .print-actions{display:none!important;}
  body.print-body .ticket-sheet{box-shadow:none!important;max-width:none!important;width:100%!important;padding:0!important;margin:0!important;}
  body.print-body .ticket-copy{break-inside:avoid!important;page-break-inside:avoid!important;margin-bottom:8mm!important;}
  body.print-body .ticket-copy:last-child{margin-bottom:0!important;}
}
@page a4-ticket{size:A4;margin:10mm;}
@page thermal-ticket{size:80mm auto;margin:0;}
@media print{
  body.thermal-body{background:#fff!important;padding:0!important;margin:0!important;}
  body.thermal-body .print-actions{display:none!important;}
  body.thermal-body .thermal-ticket{width:72mm!important;padding:3mm!important;margin:0!important;}
  body.thermal-body .thermal-ticket p{font-size:11px!important;}
  body.thermal-body .thermal-ticket h1{font-size:18px!important;}
}
