
/* CAM V8 - Customer Compact UI
   Tujuan: tampilan customer lebih hemat ruang, floating CTA tidak menumpuk,
   dan panel PWA/notifikasi tidak mengganggu halaman publik. */
:root{
  --cam-v8-blue:#2563eb;
  --cam-v8-ink:#0f172a;
  --cam-v8-muted:#64748b;
  --cam-v8-line:#e5edf7;
  --cam-v8-soft:#f8fbff;
}

/* Public/customer pages only */
body.cam-customer-v8{
  background:#f8fbff!important;
  overflow-x:hidden;
}
body.cam-customer-v8 main{overflow:hidden;}
body.cam-customer-v8 .v3-container,
body.cam-customer-v8 .ux-container{
  width:min(100% - 32px,1120px)!important;
}

/* Hemat ruang antar-section */
body.cam-customer-v8 .v3-section{
  padding-top:clamp(34px,4.8vw,58px)!important;
  padding-bottom:clamp(34px,4.8vw,58px)!important;
}
body.cam-customer-v8 .v3-section-head{
  max-width:680px!important;
  margin-bottom:clamp(20px,3vw,32px)!important;
}
body.cam-customer-v8 .v3-section-head h2{
  font-size:clamp(24px,3.2vw,42px)!important;
  line-height:1.12!important;
  margin-bottom:8px!important;
}
body.cam-customer-v8 .v3-section-head p{
  font-size:clamp(13px,1.4vw,15px)!important;
  line-height:1.55!important;
}

/* Hero lebih compact dan tidak terlalu tinggi */
body.cam-customer-v8 .v3-hero{
  min-height:auto!important;
  padding-top:clamp(92px,9vw,118px)!important;
  padding-bottom:clamp(36px,5vw,58px)!important;
}
body.cam-customer-v8 .v3-hero-title,
body.cam-customer-v8 .v3-hero h1{
  font-size:clamp(34px,5.1vw,62px)!important;
  line-height:1.03!important;
  letter-spacing:-.045em!important;
}
body.cam-customer-v8 .v3-hero-copy{
  max-width:610px!important;
  font-size:clamp(14px,1.4vw,17px)!important;
  line-height:1.65!important;
  margin-top:14px!important;
  margin-bottom:22px!important;
}
body.cam-customer-v8 .v3-hero-panel{transform:scale(.95);transform-origin:center;}
body.cam-customer-v8 .v3-hero-photo-card{min-height:360px!important;border-radius:28px!important;}
body.cam-customer-v8 .v3-trust-row{
  gap:10px!important;
  margin-top:20px!important;
}
body.cam-customer-v8 .v3-trust-row>div{
  padding:11px 13px!important;
  border-radius:15px!important;
  min-height:auto!important;
}
body.cam-customer-v8 .v3-trust-row b{font-size:16px!important;line-height:1.1!important;}
body.cam-customer-v8 .v3-trust-row span{font-size:10px!important;}

/* Cards/forms lebih ramping */
body.cam-customer-v8 .v3-card,
body.cam-customer-v8 .v3-form-card,
body.cam-customer-v8 .v3-service-card,
body.cam-customer-v8 .v3-package,
body.cam-customer-v8 .v3-faq,
body.cam-customer-v8 .ux-local-box{
  border-radius:22px!important;
  box-shadow:0 10px 32px rgba(15,23,42,.055)!important;
}
body.cam-customer-v8 .v3-card,
body.cam-customer-v8 form.v3-card{
  padding:clamp(18px,2.4vw,26px)!important;
}
body.cam-customer-v8 .v3-service-card,
body.cam-customer-v8 .v3-package{
  padding:22px!important;
  min-height:0!important;
}
body.cam-customer-v8 .v3-service-card h3,
body.cam-customer-v8 .v3-package h3{
  font-size:1.1rem!important;
  margin-bottom:7px!important;
}
body.cam-customer-v8 .v3-service-card p,
body.cam-customer-v8 .v3-package p,
body.cam-customer-v8 .v3-package li{
  font-size:13px!important;
  line-height:1.55!important;
}
body.cam-customer-v8 .v3-service-icon{
  width:46px!important;height:46px!important;border-radius:15px!important;font-size:18px!important;margin-bottom:14px!important;
}
body.cam-customer-v8 .v3-form-grid{gap:12px!important;}
body.cam-customer-v8 .v3-field span{font-size:12px!important;margin-bottom:6px!important;}
body.cam-customer-v8 .v3-field input,
body.cam-customer-v8 .v3-field select,
body.cam-customer-v8 .v3-field textarea{
  min-height:46px!important;
  border-radius:15px!important;
  padding:12px 14px!important;
  font-size:14px!important;
}
body.cam-customer-v8 .v3-field textarea{min-height:88px!important;}
body.cam-customer-v8 .v3-btn-xl{padding:14px 18px!important;border-radius:15px!important;font-size:14px!important;}

/* Booking area tidak boros */
body.cam-customer-v8 #booking.v3-section{padding-top:26px!important;}
body.cam-customer-v8 #booking .grid{gap:20px!important;}
body.cam-customer-v8 #booking .sticky{top:96px!important;}
body.cam-customer-v8 .ux-form-guide{gap:12px!important;}
body.cam-customer-v8 .ux-step-item,
body.cam-customer-v8 .ux-local-box{
  padding:14px!important;
  border-radius:18px!important;
}
body.cam-customer-v8 .ux-step-item i,
body.cam-customer-v8 .ux-local-box i{
  width:34px!important;height:34px!important;border-radius:12px!important;font-size:14px!important;
}

/* Proof/review/tracking compact */
body.cam-customer-v8 .v3-proof-grid{gap:12px!important;}
body.cam-customer-v8 .v3-proof-grid article{
  min-height:150px!important;
  padding:20px!important;
  border-radius:24px!important;
}
body.cam-customer-v8 .v3-proof-grid i{margin-bottom:16px!important;font-size:1.5rem!important;}
body.cam-customer-v8 .v3-review-card{
  min-height:270px!important;
  border-radius:26px!important;
  padding:28px!important;
}
body.cam-customer-v8 .v3-review-quote{font-size:clamp(18px,2.2vw,26px)!important;line-height:1.45!important;}
body.cam-customer-v8 .v3-review-author{margin-top:22px!important;padding-top:18px!important;}
body.cam-customer-v8 .v3-review-author>div{width:48px!important;height:48px!important;font-size:1.1rem!important;}
body.cam-customer-v8 .v3-carousel-controls button{width:42px!important;height:42px!important;}
body.cam-customer-v8 #tracking .v3-card{min-height:auto!important;}

/* FAQ ringkas */
body.cam-customer-v8 .v3-faq summary{padding:16px 18px!important;font-size:14px!important;}
body.cam-customer-v8 .v3-faq p{padding:0 18px 16px!important;font-size:13px!important;line-height:1.6!important;}
body.cam-customer-v8 .v3-area-chip{padding:10px 13px!important;font-size:13px!important;}

/* Jangan tampilkan panel PWA/notifikasi di halaman publik/customer. */
body.cam-customer-v8 .cam-pwa-status-card,
body.cam-customer-v8 .cam-pwa-install-card,
body.cam-customer-v8 [data-pwa-status-card],
body.cam-customer-v8 [data-pwa-install-card]{
  display:none!important;
}

/* Floating bantuan jangan dobel/menumpuk di halaman customer. Cukup WhatsApp saja. */
body.cam-customer-v8 .ux-floating-guide{display:none!important;}
body.cam-customer-v8 .v3-floating-wa{
  right:20px!important;
  bottom:20px!important;
  z-index:96!important;
  min-height:48px!important;
  padding:10px 14px!important;
  border-radius:999px!important;
  gap:8px!important;
  box-shadow:0 14px 35px rgba(22,163,74,.28)!important;
}
body.cam-customer-v8 .v3-floating-wa i{font-size:1.35rem!important;}
body.cam-customer-v8 .v3-floating-wa span{font-size:13px!important;}

/* Compact PWA status for admin/teknisi pages */
body:not(.cam-customer-v8) .cam-pwa-status-card{
  max-width:560px;
  border-radius:18px!important;
  padding:12px 14px!important;
  gap:10px!important;
  margin:10px 0 14px!important;
}
body:not(.cam-customer-v8) .cam-pwa-status-card__icon{width:38px!important;height:38px!important;border-radius:13px!important;}
body:not(.cam-customer-v8) .cam-pwa-status-card b{font-size:13px!important;}
body:not(.cam-customer-v8) .cam-pwa-status-card p{font-size:11px!important;margin-bottom:8px!important;}
body:not(.cam-customer-v8) .cam-pwa-status-actions{gap:6px!important;}
body:not(.cam-customer-v8) .cam-pwa-btn{padding:8px 11px!important;border-radius:12px!important;font-size:10px!important;}

@media(max-width:1024px){
  body.cam-customer-v8 .v3-hero-panel{transform:none;}
  body.cam-customer-v8 .v3-hero-photo-card{min-height:300px!important;}
  body.cam-customer-v8 .v3-section{padding-top:36px!important;padding-bottom:36px!important;}
}
@media(max-width:768px){
  body.cam-customer-v8 .v3-container,
  body.cam-customer-v8 .ux-container{width:min(100% - 22px,1120px)!important;}
  body.cam-customer-v8 .v3-hero{padding-top:86px!important;padding-bottom:30px!important;}
  body.cam-customer-v8 .v3-hero-title,
  body.cam-customer-v8 .v3-hero h1{font-size:clamp(31px,10vw,42px)!important;}
  body.cam-customer-v8 .v3-trust-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body.cam-customer-v8 .v3-section{padding-top:30px!important;padding-bottom:30px!important;}
  body.cam-customer-v8 .v3-proof-grid{grid-template-columns:1fr!important;}
  body.cam-customer-v8 .v3-review-card{min-height:235px!important;padding:22px!important;}
  body.cam-customer-v8 .v3-floating-wa{display:none!important;}
  body.cam-customer-v8 .v3-mobile-bottom{padding-top:7px!important;border-radius:18px 18px 0 0!important;}
  body.cam-customer-v8 .v3-mobile-bottom .main i{width:52px!important;height:52px!important;}
}
