.jv2-ngaji-screen{font-family:"Plus Jakarta Sans",sans-serif}.jv2-ngaji-screen .jv2-ride-body{padding-bottom:80px}.jv2-ngaji-screen .jv2-ride-route-card{margin:12px 0}.jv2-ngaji-screen .jv2-route-row{display:flex;align-items:center;gap:12px}.jv2-ngaji-screen .jv2-route-row>div{flex:1;min-width:0}.jv2-ngaji-screen #ngaji-address{width:100%;box-sizing:border-box}.jv2-ngaji-screen #ngaji-map{height:48vh;min-height:280px}.jv2-ngaji-screen .ngaji-package{padding:16px;display:grid;gap:14px}.jv2-ngaji-screen .ngaji-package label{font-size:13px;font-weight:700}.jv2-ngaji-screen .ngaji-package select{width:100%;border:1px solid #d9e3ef;border-radius:12px;padding:13px;font:inherit}.jv2-ngaji-screen .ngaji-price-line,.jv2-ngaji-screen .ngaji-price-total{display:flex;justify-content:space-between;gap:12px;padding:11px 0;font-size:13px;border-bottom:1px solid #e5edf7}.jv2-ngaji-screen .ngaji-price-total{font-size:16px;font-weight:800;border:0}.jv2-ngaji-screen .jv2-school-clear{flex-shrink:0}.jv2-ngaji-screen .jv2-ride-continue{display:block;width:100%}
.jv2-ngaji-screen .ngaji-close-home{margin-left:auto;border:0;background:transparent;font-size:28px;line-height:1;cursor:pointer;padding:7px 10px;color:inherit}.jv2-ngaji-screen .ngaji-close-home[hidden]{display:none}.jv2-ngaji-screen .ngaji-customer-fields{display:grid;gap:9px;margin:14px 0}.jv2-ngaji-screen .ngaji-customer-fields label{font-size:13px;font-weight:700}.jv2-ngaji-screen .ngaji-customer-fields input,.jv2-ngaji-screen .ngaji-customer-fields textarea{width:100%;box-sizing:border-box;border:1px solid #d9e3ef;border-radius:12px;padding:12px;font:inherit;resize:vertical}

/* JEEKO Ngaji 0.15.03: scoped visual refinement; other services untouched */
#jeeko-v2-app .jv2-ngaji-screen .jv2-ride-head{
  position:sticky;top:0;z-index:1002;min-height:64px;height:64px;
  padding:10px 16px;background:#fff;border-bottom:1px solid #e9eff8;
  box-shadow:0 3px 14px rgba(26,58,110,.045);
}
#jeeko-v2-app .jv2-ngaji-screen .jv2-ride-head strong{font-size:15px}
#jeeko-v2-app .jv2-ngaji-screen .jv2-ride-head small{font-size:10px}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-close-home{
  display:flex!important;align-items:center;justify-content:center;
  flex:0 0 38px;width:38px;height:38px;margin-left:auto;padding:0;
  background:#f0f4fa;color:#334155;border:1px solid #e5ebf4;
  border-radius:50%;font-size:25px;font-weight:500;line-height:1;
  box-shadow:none;touch-action:manipulation;cursor:pointer;
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-close-home[hidden]{display:none!important}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-close-home:active{background:#dfe9f7}
#jeeko-v2-app .jv2-ngaji-screen .jv2-ride-body{
  padding:14px 16px 40px;max-width:520px;margin:0 auto;
}
#jeeko-v2-app .jv2-ngaji-screen .jv2-courier-progress{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;
  margin:0 0 18px;
}
#jeeko-v2-app .jv2-ngaji-screen .jv2-courier-progress span{
  min-width:0;text-align:center;padding:12px 4px;border-radius:12px;
  font-size:11px;white-space:nowrap;font-weight:700;
}
#jeeko-v2-app .jv2-ngaji-screen .jv2-ride-route-card{
  margin:0 0 14px;border-radius:18px;padding:10px 13px;
  box-shadow:0 5px 16px rgba(28,68,125,.045);
}
#jeeko-v2-app .jv2-ngaji-screen .jv2-route-row{gap:9px}
#jeeko-v2-app .jv2-ngaji-screen #ngaji-address{
  font-size:13px;line-height:1.5;min-width:0;
}
#jeeko-v2-app .jv2-ngaji-screen .jv2-school-location-note{
  font-size:11px;line-height:1.55;margin:9px 2px 16px;color:#718096;
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-customer-fields{
  gap:8px;margin:8px 0 15px;
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-customer-fields label{
  font-size:12px;line-height:1.4;color:#263a55;
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-customer-fields input,
#jeeko-v2-app .jv2-ngaji-screen .ngaji-customer-fields textarea{
  font-size:13px;line-height:1.5;padding:12px 13px;
  border-radius:13px;background:#fff;border:1px solid #dce5f1;
  outline:none;
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-customer-fields input:focus,
#jeeko-v2-app .jv2-ngaji-screen .ngaji-customer-fields textarea:focus{
  border-color:#2074ed;box-shadow:0 0 0 3px rgba(32,116,237,.10);
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-customer-fields textarea{
  min-height:86px;resize:vertical;
}
#jeeko-v2-app .jv2-ngaji-screen .jv2-ride-continue{
  border-radius:15px;min-height:52px;font-size:14px;font-weight:750;
}
#jeeko-v2-app .jv2-ngaji-screen .jv2-ride-status{
  font-size:11px;line-height:1.5;
}
@media(max-width:380px){
 #jeeko-v2-app .jv2-ngaji-screen .jv2-courier-progress span{font-size:10px}
 #jeeko-v2-app .jv2-ngaji-screen .jv2-ride-body{padding-left:12px;padding-right:12px}
}

/* v0.15.04: fixed close control independent from shared Ride header */
body.jv2-ride-open #jeeko-v2-app .jv2-ngaji-screen .ngaji-screen-close{
 position:fixed!important;right:16px!important;
 top:calc(env(safe-area-inset-top, 0px) + 18px)!important;
 z-index:2147483000!important;display:flex!important;
 align-items:center!important;justify-content:center!important;
 width:42px!important;height:42px!important;padding:0!important;
 border-radius:50%!important;border:1px solid #dce5f1!important;
 background:#fff!important;color:#25364d!important;
 font-size:27px!important;line-height:1!important;font-weight:500!important;
 box-shadow:0 5px 16px rgba(24,52,91,.18)!important;cursor:pointer!important;
 pointer-events:auto!important;
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-step-intro{
 display:flex;align-items:center;gap:12px;margin:3px 0 14px;
 padding:13px 14px;border:1px solid #dbe9ff;border-radius:17px;
 background:linear-gradient(110deg,#eaf3ff,#f8fbff);
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-step-icon{
 width:38px;height:38px;display:grid;place-items:center;border-radius:12px;
 background:#fff;font-size:20px;flex-shrink:0;
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-step-intro strong{
 display:block;font-size:13px;font-weight:750;color:#1d3d70;
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-step-intro small{
 display:block;font-size:11px;color:#6a7f9c;margin-top:3px;
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-fields-title{
 font-size:13px;font-weight:800;color:#1c3658;
 padding:5px 0 4px;margin-top:2px;
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-customer-fields{
 padding:15px;border:1px solid #e1eaf5;background:#fff;
 border-radius:18px;box-shadow:0 5px 18px rgba(30,70,120,.035);
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-success{
 text-align:center;padding:25px 16px;background:#fff;
 border:1px solid #e0eaf6;border-radius:20px;
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-success-mark{
 display:grid;place-items:center;width:58px;height:58px;
 background:#e4f8ec;color:#12864b;border-radius:50%;
 margin:0 auto 12px;font-size:32px;
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-success h3{font-size:17px;margin:0 0 10px}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-success p{
 font-size:12px;line-height:1.65;color:#5b6c82;
}
#jeeko-v2-app .jv2-ngaji-screen .ngaji-order-code{
 font-size:17px;font-weight:800;margin:16px 0;color:#1d67d7;
}

/* v0.16.49.199: red close button on Ngaji booking */
body.jv2-ride-open #jeeko-v2-app .jv2-ngaji-screen .ngaji-screen-close{background:#dc2626!important;color:#fff!important;border-color:#dc2626!important;font-weight:700!important}

/* v0.16.49.200: center the Ngaji close glyph without altering the click handler */
body.jv2-ride-open #jeeko-v2-app .jv2-ngaji-screen .ngaji-screen-close{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;line-height:1!important;text-align:center!important;box-sizing:border-box!important}
