/* source block 89: v2-17-45-completed-full-view; v2.19.18 line 11372 */

#driverPortal .driver-jobs-picker-card.completed{cursor:pointer!important;}
#driverPortal .driver-jobs-picker-card.completed .driver-picker-card-head{background:#438e50!important;}
#driverPortal .driver-jobs-picker-card.completed.selected{border-color:#438e50!important;}
#driverPortal .driver-time-control.locked,#driverPortal .driver-time-control.locked button{opacity:1!important;}

/* source block 90: v2-17-61-job-phone-header-css; v2.19.18 line 11379 */

.job-identity-phone-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px}
.job-identity-phone-row .job-identity-header{margin-top:0}
.job-phone-top-field{
  display:flex;align-items:center;gap:7px;border:2px solid #4f79d8;background:#edf4ff;
  border-radius:10px;padding:4px 8px;color:#244e9c;font-weight:900;min-width:260px
}
.job-phone-top-field span{font-size:12px;white-space:nowrap}
.job-phone-top-field input{
  width:155px;min-width:130px;border:0!important;background:#fff!important;border-radius:7px!important;
  padding:7px 8px!important;font-weight:900;color:#173f89;box-shadow:inset 0 0 0 1px #aac0ed
}
.console-job-phone{
  display:flex;flex-direction:column;justify-content:flex-end;gap:2px;
  min-width:190px;max-width:205px;height:40px;padding:0;
  border:0;background:transparent;box-sizing:border-box
}
.console-job-phone span{
  font-size:9px;line-height:1;color:#d7e6ff;font-weight:950;letter-spacing:.05em;
  white-space:nowrap;padding-left:2px
}
.console-job-phone input{
  width:100%;min-width:0;height:28px;border:1px solid #9fb8eb!important;border-radius:6px!important;
  padding:3px 8px!important;background:#fff!important;font-size:14px!important;
  font-weight:900;color:#173f89;box-shadow:none!important
}
@media(max-width:1100px){
  .console-job-phone{min-width:155px;max-width:180px}
  .job-phone-top-field{min-width:225px}
}

/* source block 91: v2-17-62-job-phone-ui-tidy-css; v2.19.18 line 11412 */

.job-console-head-actions{align-items:center!important}
.console-created-by{align-self:center}
.console-marketing-consent{align-self:center}
.console-change-customer{align-self:center}
@media(max-width:1100px){
  .console-job-phone{min-width:185px;max-width:200px}
  .console-job-phone input{font-size:13px!important}
}

/* source block 92: v2-17-63-phone-label-final-css; v2.19.18 line 11424 */

.console-job-phone span{color:#173f89!important;text-shadow:none!important}
.console-job-phone{background:transparent!important}

/* source block 93: v2-17-64-phone-header-align-css; v2.19.18 line 11430 */

.job-console-head-actions{
  display:flex!important;align-items:flex-end!important;gap:8px!important
}
.console-created-by,.console-marketing-consent,.console-job-phone,.console-change-customer{
  margin:0!important;align-self:flex-end!important
}
.console-created-by,.console-change-customer{height:40px!important;box-sizing:border-box}
.console-marketing-consent{height:40px!important;box-sizing:border-box}
.console-marketing-consent select{height:28px!important;min-height:28px!important}
.console-change-customer{display:inline-flex!important;align-items:center!important;justify-content:center!important}
@media(max-width:1100px){
  .console-job-phone{min-width:170px;max-width:185px}
}

/* source block 94: v2-17-65-header-style-unify-css; v2.19.18 line 11447 */

/* Unified Quick Add header controls */
.job-console-head-actions{
  display:flex!important;
  align-items:flex-end!important;
  gap:8px!important;
}

/* Same visual system for Created By / Marketing / Job Phone */
.console-created-by,
.console-marketing-consent,
.console-job-phone{
  height:40px!important;
  min-height:40px!important;
  box-sizing:border-box!important;
  border:1px solid #50617a!important;
  border-radius:8px!important;
  background:#1c2636!important;
  padding:4px 8px!important;
  margin:0!important;
  box-shadow:none!important;
  color:#fff!important;
  font-family:inherit!important;
}

.console-created-by{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:118px!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.015em!important;
  white-space:nowrap!important;
}

.console-marketing-consent,
.console-job-phone{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  gap:2px!important;
}

.console-marketing-consent{min-width:138px!important;max-width:150px!important}
.console-job-phone{min-width:185px!important;max-width:200px!important}

.console-marketing-consent>span,
.console-job-phone>span{
  display:block!important;
  padding:0 2px!important;
  margin:0!important;
  font-family:inherit!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  color:#c9d7eb!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

.console-marketing-consent select,
.console-job-phone input{
  width:100%!important;
  height:26px!important;
  min-height:26px!important;
  box-sizing:border-box!important;
  border:1px solid #9eb0c9!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#172033!important;
  padding:2px 8px!important;
  font-family:inherit!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:800!important;
  box-shadow:none!important;
  outline:none!important;
}

.console-marketing-consent select:focus,
.console-job-phone input:focus{
  border-color:#6f96e6!important;
  box-shadow:0 0 0 2px rgba(111,150,230,.16)!important;
}

/* Keep Change Customer blue, but make it belong to the same row */
.console-change-customer{
  height:40px!important;
  min-height:40px!important;
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  margin:0!important;
  padding:0 14px!important;
  border:1px solid #2f5dbb!important;
  border-radius:8px!important;
  background:#4b73d2!important;
  color:#fff!important;
  font-family:inherit!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
.console-change-customer:hover{background:#3f66c2!important}
.console-change-customer .console-action-icon{display:inline-flex!important;align-items:center!important}
.console-change-customer .console-action-icon svg{width:16px!important;height:16px!important;fill:currentColor!important}

@media(max-width:1100px){
  .console-created-by{min-width:105px!important}
  .console-marketing-consent{min-width:126px!important;max-width:136px!important}
  .console-job-phone{min-width:165px!important;max-width:180px!important}
  .console-change-customer{padding:0 11px!important;font-size:12px!important}
}

/* source block 95: v2-17-66-header-controls-same-style-css; v2.19.18 line 11569 */

.job-console-head-actions{
  display:flex!important;
  align-items:flex-end!important;
  gap:8px!important;
}

/* EXACT SAME SHELL FOR CREATED BY / MARKETING / JOB PHONE */
.console-created-by,
.console-marketing-consent,
.console-job-phone{
  width:150px!important;
  min-width:150px!important;
  max-width:150px!important;
  height:44px!important;
  min-height:44px!important;
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  gap:2px!important;
  margin:0!important;
  padding:4px 6px!important;
  border:1px solid #4d5d74!important;
  border-radius:8px!important;
  background:#1b2535!important;
  box-shadow:none!important;
  font-family:inherit!important;
  color:#fff!important;
}

/* EXACT SAME TOP LABEL */
.console-created-by>span,
.console-marketing-consent>span,
.console-job-phone>span{
  display:block!important;
  height:9px!important;
  min-height:9px!important;
  margin:0!important;
  padding:0 2px!important;
  font-family:inherit!important;
  font-size:9px!important;
  line-height:9px!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  color:#c9d7eb!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

/* EXACT SAME INNER VALUE BOX */
.console-created-by>strong,
.console-marketing-consent>select,
.console-job-phone>input{
  width:100%!important;
  height:26px!important;
  min-height:26px!important;
  box-sizing:border-box!important;
  margin:0!important;
  border:1px solid #a7b6ca!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#172033!important;
  padding:3px 8px!important;
  font-family:inherit!important;
  font-size:13px!important;
  line-height:18px!important;
  font-weight:800!important;
  box-shadow:none!important;
  outline:none!important;
  text-align:left!important;
}

/* Created By inner value behaves exactly like the inputs visually */
.console-created-by>strong{
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

/* Native select arrow retained */
.console-marketing-consent>select{
  appearance:auto!important;
}

/* Focus state shared */
.console-marketing-consent>select:focus,
.console-job-phone>input:focus{
  border-color:#6f96e6!important;
  box-shadow:0 0 0 2px rgba(111,150,230,.15)!important;
}

/* CHANGE CUSTOMER: same outer height/radius, blue action */
.console-change-customer{
  height:44px!important;
  min-height:44px!important;
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  margin:0!important;
  padding:0 15px!important;
  border:1px solid #2f5dbb!important;
  border-radius:8px!important;
  background:#4b73d2!important;
  color:#fff!important;
  font-family:inherit!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:900!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
.console-change-customer:hover{background:#3f66c2!important}
.console-change-customer .console-action-icon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.console-change-customer .console-action-icon svg{
  width:16px!important;
  height:16px!important;
  fill:currentColor!important;
}

/* Avoid older overrides fighting the final unified layout */
.console-created-by{justify-content:flex-end!important}
.console-marketing-consent{justify-content:flex-end!important}
.console-job-phone{justify-content:flex-end!important}

@media(max-width:1150px){
  .console-created-by,
  .console-marketing-consent,
  .console-job-phone{
    width:138px!important;
    min-width:138px!important;
    max-width:138px!important;
  }
  .console-change-customer{padding:0 12px!important;font-size:12px!important}
}

/* source block 96: v2-17-67-header-typography-polish-css; v2.19.18 line 11715 */

/* Final polish: exact same typography + inner box geometry */
.console-created-by>strong,
.console-marketing-consent>select,
.console-job-phone>input{
  height:27px!important;
  min-height:27px!important;
  padding:3px 8px!important;
  border:1px solid #a7b6ca!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#172033!important;
  font-family:Arial, sans-serif!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:19px!important;
  letter-spacing:0!important;
  box-sizing:border-box!important;
  box-shadow:none!important;
  vertical-align:middle!important;
}

/* Created By text sits exactly like input text */
.console-created-by>strong{
  display:flex!important;
  align-items:center!important;
}

/* Marketing select: remove browser font quirks but keep native arrow */
.console-marketing-consent>select{
  appearance:auto!important;
  -webkit-appearance:menulist!important;
  text-indent:0!important;
}

/* Top labels also same typography */
.console-created-by>span,
.console-marketing-consent>span,
.console-job-phone>span{
  font-family:Arial, sans-serif!important;
  font-size:9px!important;
  font-weight:900!important;
  line-height:9px!important;
  letter-spacing:.055em!important;
}

/* Maintain exact common shell height */
.console-created-by,
.console-marketing-consent,
.console-job-phone{
  height:44px!important;
  min-height:44px!important;
}

/* source block 97: v2-17-68-header-final-align-css; v2.19.18 line 11771 */

/* FINAL unified header controls */
.job-console-head-actions{
  display:grid!important;
  grid-template-columns:150px 150px 190px auto!important;
  align-items:end!important;
  gap:8px!important;
}

/* SAME WRAPPER */
.console-created-by,
.console-marketing-consent,
.console-job-phone{
  width:100%!important;
  height:46px!important;
  min-width:0!important;
  max-width:none!important;
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  gap:3px!important;
  margin:0!important;
  padding:4px 6px!important;
  border:1px solid #4d5d74!important;
  border-radius:8px!important;
  background:#1b2535!important;
  box-shadow:none!important;
  font-family:Arial, sans-serif!important;
}

/* SAME LABEL */
.console-created-by>span,
.console-marketing-consent>span,
.console-job-phone>span{
  display:block!important;
  height:9px!important;
  line-height:9px!important;
  margin:0!important;
  padding:0 2px!important;
  color:#cbd7ea!important;
  font-family:Arial, sans-serif!important;
  font-size:9px!important;
  font-weight:900!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

/* SAME CONTROL */
.console-created-by>input,
.console-marketing-consent>select,
.console-job-phone>input{
  width:100%!important;
  height:27px!important;
  min-height:27px!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:3px 8px!important;
  border:1px solid #a7b6ca!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#172033!important;
  font-family:Arial, sans-serif!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:19px!important;
  letter-spacing:0!important;
  box-shadow:none!important;
  outline:none!important;
}

/* Readonly Created By behaves visually like the other controls */
.console-created-by>input[readonly]{
  cursor:default!important;
  opacity:1!important;
}

/* Custom select arrow so the browser can no longer change its size/geometry */
.console-marketing-consent>select{
  appearance:none!important;
  -webkit-appearance:none!important;
  -moz-appearance:none!important;
  padding-right:28px!important;
  background-color:#fff!important;
  background-image:
    linear-gradient(45deg, transparent 50%, #334155 50%),
    linear-gradient(135deg, #334155 50%, transparent 50%)!important;
  background-position:
    calc(100% - 13px) 11px,
    calc(100% - 9px) 11px!important;
  background-size:4px 4px,4px 4px!important;
  background-repeat:no-repeat!important;
}

/* Common focus */
.console-marketing-consent>select:focus,
.console-job-phone>input:focus{
  border-color:#6f96e6!important;
  box-shadow:0 0 0 2px rgba(111,150,230,.15)!important;
}

/* Change Customer same row height */
.console-change-customer{
  width:auto!important;
  height:46px!important;
  min-height:46px!important;
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  margin:0!important;
  padding:0 16px!important;
  border:1px solid #2f5dbb!important;
  border-radius:8px!important;
  background:#4b73d2!important;
  color:#fff!important;
  font-family:Arial, sans-serif!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
.console-change-customer:hover{background:#3f66c2!important}

@media(max-width:1180px){
  .job-console-head-actions{
    grid-template-columns:135px 135px 170px auto!important;
  }
  .console-change-customer{
    padding:0 12px!important;
    font-size:12px!important;
  }
}

/* source block 98: v2-17-69-header-true-unify-css; v2.19.18 line 11910 */

.job-console-head-actions{
  display:grid!important;
  grid-template-columns:148px 148px 190px auto!important;
  align-items:end!important;
  gap:8px!important;
}
.console-created-by,
.console-marketing-consent,
.console-job-phone{
  position:relative!important;
  width:100%!important;height:44px!important;min-height:44px!important;
  box-sizing:border-box!important;display:flex!important;flex-direction:column!important;
  justify-content:flex-end!important;gap:3px!important;margin:0!important;padding:4px 6px!important;
  border:1px solid #4d5d74!important;border-radius:8px!important;background:#1b2535!important;
  box-shadow:none!important;font-family:Arial,sans-serif!important;
}
.console-created-by>span,
.console-marketing-consent>span:first-child,
.console-job-phone>span{
  display:block!important;height:9px!important;line-height:9px!important;margin:0!important;padding:0 2px!important;
  color:#cbd7ea!important;font-family:Arial,sans-serif!important;font-size:9px!important;font-weight:900!important;
  letter-spacing:.05em!important;text-transform:uppercase!important;white-space:nowrap!important;
}
.console-control-display,
.console-marketing-visual,
.console-control-shell{
  width:100%!important;height:27px!important;min-height:27px!important;box-sizing:border-box!important;
  margin:0!important;border:1px solid #a7b6ca!important;border-radius:6px!important;background:#fff!important;
  color:#172033!important;padding:0 8px!important;font-family:Arial,sans-serif!important;font-size:13px!important;
  font-weight:800!important;line-height:27px!important;letter-spacing:0!important;box-shadow:none!important;
}
.console-control-display{
  overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
}
.console-marketing-visual{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;pointer-events:none!important;
}
.console-marketing-visual>span{
  display:block!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  color:#172033!important;font-family:Arial,sans-serif!important;font-size:13px!important;font-weight:800!important;
  line-height:27px!important;letter-spacing:0!important;text-transform:none!important;padding:0!important;
}
.console-marketing-visual>b{flex:0 0 auto!important;color:#334155!important;font-size:11px!important;line-height:1!important}
.console-marketing-consent>select{
  position:absolute!important;left:6px!important;right:6px!important;bottom:4px!important;width:calc(100% - 12px)!important;
  height:27px!important;min-height:27px!important;margin:0!important;padding:0!important;border:0!important;opacity:0!important;
  cursor:pointer!important;z-index:3!important;appearance:auto!important;-webkit-appearance:menulist!important;
}
.console-control-shell{display:flex!important;align-items:center!important;padding:0!important}
.console-control-shell>input{
  width:100%!important;height:25px!important;min-height:25px!important;box-sizing:border-box!important;margin:0!important;
  padding:0 8px!important;border:0!important;background:transparent!important;color:#172033!important;
  font-family:Arial,sans-serif!important;font-size:13px!important;font-weight:800!important;line-height:25px!important;
  letter-spacing:0!important;outline:none!important;box-shadow:none!important;
}
.console-marketing-consent:focus-within .console-marketing-visual,
.console-job-phone:focus-within .console-control-shell{
  border-color:#6f96e6!important;box-shadow:0 0 0 2px rgba(111,150,230,.15)!important;
}
.console-change-customer{
  height:44px!important;min-height:44px!important;box-sizing:border-box!important;display:inline-flex!important;
  align-items:center!important;justify-content:center!important;gap:7px!important;margin:0!important;padding:0 15px!important;
  border:1px solid #2f5dbb!important;border-radius:8px!important;background:#4b73d2!important;color:#fff!important;
  font-family:Arial,sans-serif!important;font-size:13px!important;font-weight:900!important;line-height:1!important;
  box-shadow:none!important;white-space:nowrap!important;
}
.console-change-customer:hover{background:#3f66c2!important}
@media(max-width:1180px){
  .job-console-head-actions{grid-template-columns:136px 136px 170px auto!important}
  .console-change-customer{padding:0 12px!important;font-size:12px!important}
}

/* source block 99: v2-17-70-header-final-polish-css; v2.19.18 line 11985 */

/* Final visual polish only */
.job-console-head-actions{
  grid-template-columns:146px 146px 188px auto!important;
  gap:7px!important;
}

/* Slightly leaner wrappers */
.console-created-by,
.console-marketing-consent,
.console-job-phone{
  height:42px!important;
  min-height:42px!important;
  padding:3px 5px!important;
  gap:2px!important;
  border-radius:7px!important;
}

/* Exact same label baseline */
.console-created-by>span,
.console-marketing-consent>span:first-child,
.console-job-phone>span{
  height:9px!important;
  min-height:9px!important;
  line-height:9px!important;
  padding-left:2px!important;
  color:#d1d9e6!important;
  font-family:Arial,sans-serif!important;
  font-size:9px!important;
  font-weight:900!important;
  letter-spacing:.045em!important;
}

/* Exact same visible value box */
.console-control-display,
.console-marketing-visual,
.console-control-shell{
  height:27px!important;
  min-height:27px!important;
  border-radius:5px!important;
  border-color:#aeb9c9!important;
  background:#fff!important;
  box-shadow:none!important;
}

/* Exact same visible value typography */
.console-control-display,
.console-marketing-visual>span,
.console-control-shell>input{
  color:#172033!important;
  font-family:Arial,sans-serif!important;
  font-size:13px!important;
  font-weight:800!important;
  letter-spacing:0!important;
}

/* Same vertical centring */
.console-control-display,
.console-marketing-visual{
  line-height:27px!important;
}
.console-control-shell>input{
  height:25px!important;
  line-height:25px!important;
  padding:0 8px!important;
}

/* Marketing arrow: discreet and aligned right */
.console-marketing-visual{
  padding:0 7px 0 8px!important;
}
.console-marketing-visual>b{
  font-family:Arial,sans-serif!important;
  font-size:10px!important;
  font-weight:900!important;
  color:#334155!important;
  margin-left:6px!important;
  transform:translateY(-1px)!important;
}

/* Match invisible select hit area exactly */
.console-marketing-consent>select{
  left:5px!important;
  right:5px!important;
  bottom:3px!important;
  width:calc(100% - 10px)!important;
  height:27px!important;
  min-height:27px!important;
}

/* Change Customer follows same reduced row height */
.console-change-customer{
  height:42px!important;
  min-height:42px!important;
  border-radius:7px!important;
  padding:0 14px!important;
}

/* Keep all value rows visually flush */
.console-created-by,
.console-marketing-consent,
.console-job-phone,
.console-change-customer{
  align-self:end!important;
}

@media(max-width:1180px){
  .job-console-head-actions{
    grid-template-columns:134px 134px 168px auto!important;
  }
}

/* source block 100: v2-17-71-marketing-visible-fix-css; v2.19.18 line 12099 */

#consoleMarketingVisualValue{
  color:#172033!important;
  -webkit-text-fill-color:#172033!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
  font-family:Arial,sans-serif!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:27px!important;
  letter-spacing:0!important;
}
.console-marketing-visual{
  color:#172033!important;
  opacity:1!important;
  background:#fff!important;
}
.console-marketing-visual>b{
  color:#334155!important;
  -webkit-text-fill-color:#334155!important;
  opacity:1!important;
}

/* source block 101: v2-17-72-basket-qty-css; v2.19.18 line 12125 */

.driver-basket-qty{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(240px,1.5fr);gap:10px;align-items:center;width:100%}
.driver-basket-qty-audit,.driver-basket-qty-readonly{display:flex;flex-direction:column;gap:2px;background:#f7f9fc;border:1px solid #d7e0ea;border-radius:9px;padding:9px 11px}
.driver-basket-qty-audit span,.driver-basket-qty-readonly span{font-size:.68rem;font-weight:900;color:#667085;text-transform:uppercase;letter-spacing:.04em}
.driver-basket-qty-audit strong,.driver-basket-qty-readonly strong{font-size:1rem;color:#172b3f}
.driver-basket-qty-readonly em{font-size:.7rem;color:#2f6f44;font-style:normal;font-weight:800}
.driver-basket-qty-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.basket-qty-use-ordered{background:#2f7d4b!important;color:#fff!important;border-color:#2f7d4b!important;font-weight:900!important}
.basket-qty-change{background:#eab33a!important;color:#172033!important;border-color:#d39d25!important;font-weight:900!important}
.basket-qty-change-row{display:flex;align-items:center;gap:7px;flex:1 1 100%;padding-top:4px}
.basket-qty-change-row.hidden{display:none!important}
.basket-qty-editor{max-width:150px!important;font-weight:900!important}
.basket-qty-confirm{background:#1f5fbf!important;color:#fff!important;font-weight:900!important}
.driver-basket-qty.is-confirmed{outline:2px solid #b8dfc6;outline-offset:3px;border-radius:9px}
.driver-basket-qty.is-changed{outline-color:#f0c765}
@media(max-width:760px){.driver-basket-qty{grid-template-columns:1fr}.driver-basket-qty-actions{align-items:stretch}.basket-qty-change-row{flex-wrap:wrap}}

/* source block 102: v2-17-73-required-type-first-css; v2.19.18 line 12144 */

#requiredDataRecordType{font-weight:800}
.basket-qty-config-card{
  background:#eef5ff;border:1px solid #b9ccef;border-left:5px solid #4d78d4;
  border-radius:10px;padding:14px 16px;color:#20314b
}
.basket-qty-config-card strong{font-size:1rem}
.basket-qty-config-card p{margin:6px 0 0;line-height:1.45;color:#516078}
#requiredDataBasketQtyPanel.hidden,#requiredDataItemsPanel.hidden{display:none!important}

/* source block 103: v2-17-74-required-action-types-css; v2.19.18 line 12156 */

.required-simple-config{
  background:#f7f9fc;border:1px solid #d7e0ea;border-radius:10px;padding:14px 16px
}
.required-simple-head{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}
.required-simple-head strong{font-size:1rem}
.required-simple-head span{font-size:13px;color:var(--muted)}
.required-simple-grid{display:grid;grid-template-columns:1.35fr .8fr 1.25fr;gap:10px}
.required-simple-grid label.hidden{display:none!important}
#requiredDataSimplePanel.hidden{display:none!important}
@media(max-width:760px){.required-simple-grid{grid-template-columns:1fr}}

/* source block 104: v2-17-75-driver-basket-qty-compact-css; v2.19.18 line 12169 */

.driver-required-row:has(.driver-basket-qty){display:grid!important;grid-template-columns:minmax(210px,.9fr) minmax(360px,1.5fr)!important;gap:16px!important;align-items:center!important;padding:14px 16px!important;min-height:0!important}
.driver-basket-qty{display:flex!important;flex-direction:column!important;gap:9px!important;width:100%!important;padding:0!important;background:transparent!important}
.driver-basket-qty-summary{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
.driver-basket-qty-stat{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;min-height:46px!important;padding:8px 11px!important;border:1px solid #d3dce7!important;border-radius:9px!important;background:#fff!important}
.driver-basket-qty-stat span{font-size:11px!important;font-weight:900!important;color:#667085!important;letter-spacing:.04em!important}
.driver-basket-qty-stat strong{font-size:17px!important;font-weight:900!important;color:#213d73!important;white-space:nowrap!important}
.driver-basket-qty.is-confirmed .driver-basket-qty-stat.actual{border-color:#9fd0ad!important;background:#f3fbf5!important}
.driver-basket-qty.is-changed .driver-basket-qty-stat.actual{border-color:#e0ba55!important;background:#fff9e9!important}
.driver-basket-qty-controls{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}
.basket-qty-use-ordered,.basket-qty-change{height:38px!important;padding:0 13px!important;border-radius:8px!important;font-size:13px!important;font-weight:900!important;white-space:nowrap!important}
.basket-qty-use-ordered{background:#438353!important;color:#fff!important;border-color:#438353!important}
.basket-qty-change{background:#e7b43d!important;color:#18223a!important;border-color:#cf9c24!important}
.basket-qty-editor-wrap{display:flex!important;align-items:flex-end!important;gap:7px!important;margin-left:auto!important}
.basket-qty-editor-wrap.hidden{display:none!important}
.basket-qty-editor-wrap label{display:flex!important;flex-direction:column!important;gap:3px!important;margin:0!important;font-size:10px!important;font-weight:900!important;color:#667085!important;text-transform:uppercase!important}
.basket-qty-editor{width:105px!important;height:38px!important;margin:0!important;padding:5px 9px!important;border:1px solid #aebccc!important;border-radius:8px!important;background:#fff!important;font-size:17px!important;font-weight:900!important;color:#18223a!important}
.basket-qty-unit{display:inline-flex!important;align-items:center!important;height:38px!important;font-size:14px!important;font-weight:900!important;color:#52627a!important}
.driver-basket-qty-readonly-note{padding:7px 10px!important;border-radius:8px!important;background:#f3f7fb!important;font-size:12px!important;font-weight:800!important;color:#506078!important}
.driver-basket-qty.is-confirmed{outline:none!important}
@media(max-width:850px){.driver-required-row:has(.driver-basket-qty){grid-template-columns:1fr!important}.basket-qty-editor-wrap{margin-left:0!important;flex-basis:100%!important}}

/* source block 105: v2-17-78-finalise-flow-css; v2.19.18 line 12191 */

.driver-main-tabs{grid-template-columns:1fr 1fr 1fr!important}
.driver-finalise-main-tab:disabled{background:#e7eaf0!important;color:#98a2b3!important;cursor:not-allowed!important;border-color:#d5dbe5!important}
.driver-finalise-main-tab.is-ready:not(:disabled){background:#111827!important;color:#fff!important}
.driver-finalise-main-tab.is-complete{background:#dff3e5!important;color:#24643a!important}
.driver-finalise-flow-panel{width:min(1450px,96vw)!important;max-height:94vh!important;padding:18px 20px 0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}
.driver-finalise-flow-panel .driver-complete-head{flex:0 0 auto!important}
.driver-finalise-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0 14px;flex:0 0 auto}
.driver-finalise-step{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;text-align:left;column-gap:9px;align-items:center;padding:10px 12px;border:1px solid #d5deea;border-radius:10px;background:#f5f7fa;color:#526078}
.driver-finalise-step>span{grid-row:1/3;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#dce3ec;color:#4e5d73;font-weight:950}
.driver-finalise-step strong{font-size:14px;color:#26364d}.driver-finalise-step small{font-size:11px;color:#78869b}
.driver-finalise-step.active{background:#edf4ff;border-color:#7fa5e9}.driver-finalise-step.active>span{background:#1f5fbf;color:#fff}.driver-finalise-step.active strong{color:#174f8c}
.driver-finalise-pane{display:none;overflow:auto;min-height:0;padding:2px 2px 14px}.driver-finalise-pane.active{display:block;flex:1 1 auto}
.driver-finalise-two-col,.driver-finalise-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:stretch}
.driver-finalise-two-col>.driver-complete-section,.driver-finalise-review-grid>.driver-complete-section{margin:0!important}
.driver-finalise-next-row,.driver-finalise-nav-row{display:flex;justify-content:flex-end;gap:8px;padding:12px 2px 0}
.driver-finalise-nav-row{justify-content:space-between}
.driver-flow-next,.driver-flow-back{min-height:42px;padding:0 16px;border-radius:8px;font-weight:900}
.driver-flow-next{background:#1f5fbf!important;color:#fff!important;border-color:#1f5fbf!important}.driver-flow-back{background:#fff!important;color:#30445f!important}
.driver-review-totals{display:grid;gap:10px;padding:12px}
.driver-review-total-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid #dce3ec;border-radius:9px;background:#f8fafc}
.driver-review-total-row strong{font-size:18px;color:#172b3f}.driver-review-total-row.job-total{background:#111827;border-color:#111827;color:#fff}.driver-review-total-row.job-total span,.driver-review-total-row.job-total strong{color:#fff}
.driver-review-change-note{margin:10px 12px;padding:10px 12px;border-radius:9px;background:#fff7df;border:1px solid #e3be57;color:#74520b;font-weight:800;font-size:13px}
.driver-signoff-copy{margin:0 0 10px;color:#667085;font-weight:700}
.driver-finalise-footer{position:sticky;bottom:0;background:#fff;border-top:1px solid #dfe5ed;margin:0 -20px!important;padding:12px 20px!important;flex:0 0 auto;z-index:4}
.driver-finalise-flow-panel[data-current-step="delivery"] #completeDeliveryBtn,
.driver-finalise-flow-panel[data-current-step="required"] #completeDeliveryBtn{display:none!important}
.driver-finalise-flow-panel[data-current-step="review"] #completeDeliveryBtn{display:inline-flex!important}
.driver-finalise-flow-panel[data-current-step="review"] #cancelFromPodBtn{display:none!important}
.driver-finalise-flow-panel .pod-cancel-row{display:none!important}
.driver-required-stage-section{margin:0!important}
@media(max-width:850px){.driver-finalise-two-col,.driver-finalise-review-grid{grid-template-columns:1fr}.driver-finalise-steps{grid-template-columns:1fr 1fr 1fr}.driver-finalise-step{grid-template-columns:24px 1fr;padding:8px}.driver-finalise-step>span{width:24px;height:24px}.driver-finalise-step small{display:none}}

/* source block 106: v2-17-80-driver-embedded-finalise-ui; v2.19.18 line 12225 */

/* Clear three-stage Driver Portal navigation */
#driverPortal .driver-main-tabs{
  grid-template-columns:1fr 1fr 1fr!important;
  gap:0!important;
  background:#111827!important;
}
#driverPortal .driver-main-tab{
  border:0!important;
  border-radius:0!important;
  min-height:52px!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
  box-shadow:inset 0 -4px 0 transparent!important;
  transition:.15s ease!important;
}
#driverPortal #driverMainJobsBtn{
  background:#253653!important;
  color:#fff!important;
}
#driverPortal #driverMainJobsBtn.active{
  background:#315d9c!important;
  box-shadow:inset 0 -4px 0 #9cc2ff!important;
}
#driverPortal #driverMainFullBtn{
  background:#172033!important;
  color:#fff!important;
}
#driverPortal #driverMainFullBtn.active{
  background:#111827!important;
  box-shadow:inset 0 -4px 0 #e8b53a!important;
}
#driverPortal #driverMainFinaliseBtn:not(:disabled){
  background:#244f36!important;
  color:#fff!important;
}
#driverPortal #driverMainFinaliseBtn:not(:disabled).active{
  background:#2f6d45!important;
  box-shadow:inset 0 -4px 0 #9bd8ac!important;
}
#driverPortal #driverMainFinaliseBtn:disabled{
  background:#d9dee6!important;
  color:#939dab!important;
  opacity:1!important;
  cursor:not-allowed!important;
  box-shadow:none!important;
}
#driverPortal #driverMainFinaliseBtn.is-complete{
  background:#dff3e5!important;
  color:#24643a!important;
}

/* Embedded Finalise screen: no modal treatment */
#driverPortal .driver-main.finalise-embedded #driverJobsPickerView,
#driverPortal .driver-main.finalise-embedded #driverFullJobView{
  display:none!important;
}
#driverPortal .driver-main.finalise-embedded #podModal{
  display:block!important;
  position:static!important;
  inset:auto!important;
  width:100%!important;
  height:auto!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
  background:transparent!important;
  z-index:auto!important;
}
#driverPortal .driver-main.finalise-embedded #podModal .driver-finalise-flow-panel{
  width:100%!important;
  max-width:none!important;
  max-height:none!important;
  height:auto!important;
  margin:0!important;
  padding:14px 16px 0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  background:#fff!important;
}
#driverPortal .driver-main.finalise-embedded .driver-finalise-pane{
  overflow:visible!important;
}

/* Keep the progress steps, but flatten the design */
.driver-finalise-steps{
  gap:10px!important;
  margin:8px 0 15px!important;
}
.driver-finalise-step{
  border:0!important;
  border-bottom:3px solid #d9dfe8!important;
  border-radius:6px 6px 0 0!important;
  background:#f4f6f8!important;
  padding:9px 12px!important;
}
.driver-finalise-step.active{
  background:#edf4ff!important;
  border-bottom-color:#356bc2!important;
}

/* Less card-inside-card styling */
.driver-finalise-two-col,
.driver-finalise-review-grid{
  gap:18px!important;
}
.driver-finalise-two-col>.driver-complete-section,
.driver-finalise-review-grid>.driver-complete-section,
.driver-required-stage-section{
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:#fff!important;
  padding:0!important;
}
.driver-finalise-flow-panel .driver-complete-section-head{
  background:#111827!important;
  color:#fff!important;
  border:0!important;
  border-radius:4px!important;
  padding:8px 11px!important;
  margin:0 0 9px!important;
}
.driver-finalise-flow-panel .driver-complete-section-head strong{
  color:#fff!important;
}
.driver-finalise-flow-panel .driver-complete-section-head .step-no{
  display:none!important;
}
.driver-finalise-flow-panel .completion-state{
  font-size:10px!important;
  padding:3px 8px!important;
  background:#fff!important;
  color:#53627a!important;
  border:0!important;
}

/* Compact Delivery step */
.driver-finalise-notes-section textarea{
  min-height:112px!important;
  border-radius:5px!important;
}
.driver-finalise-flow-panel .camera-help{
  margin:5px 0 6px!important;
}
.driver-finalise-flow-panel #podPhotoPreview{
  min-height:112px!important;
  height:112px!important;
  border:1px dashed #cfd7e2!important;
  border-radius:5px!important;
  background:#fafbfc!important;
  display:grid!important;
  place-items:center!important;
}
.driver-finalise-flow-panel #podPhotoPreview:has(img){
  height:auto!important;
  min-height:112px!important;
}

/* Required + review */
.driver-finalise-flow-panel .driver-required-row{
  border-radius:3px!important;
  border-left-width:3px!important;
}
.driver-review-total-row{
  border-radius:4px!important;
}
.driver-finalise-footer{
  position:sticky!important;
  bottom:0!important;
  z-index:8!important;
  background:#fff!important;
  border-top:1px solid #dfe5ed!important;
}

/* When embedded, use the available portal height */
#driverPortal .driver-main.finalise-embedded{
  overflow:auto!important;
}
@media(max-width:850px){
  .driver-finalise-two-col,
  .driver-finalise-review-grid{
    grid-template-columns:1fr!important;
  }
}

/* source block 107: v2-17-81-finalise-snag-ui; v2.19.18 line 12415 */

/* ----------------------------------------------------------
   DRIVER TOP NAV — one coherent visual language
   ---------------------------------------------------------- */
#driverPortal .driver-main-tabs{
  background:#fff!important;
  border-bottom:1px solid #d7dde6!important;
}
#driverPortal .driver-main-tab{
  background:#f5f6f8!important;
  color:#26354a!important;
  border-right:1px solid #d7dde6!important;
  box-shadow:inset 0 -4px 0 transparent!important;
}
#driverPortal #driverMainJobsBtn,
#driverPortal #driverMainFullBtn{
  background:#f5f6f8!important;
  color:#26354a!important;
}
#driverPortal #driverMainJobsBtn.active,
#driverPortal #driverMainFullBtn.active{
  background:#151c2c!important;
  color:#fff!important;
  box-shadow:inset 0 -4px 0 #e5b139!important;
}
#driverPortal #driverMainFinaliseBtn:disabled{
  background:#dfe3e9!important;
  color:#929ba8!important;
  box-shadow:none!important;
  opacity:1!important;
}
#driverPortal #driverMainFinaliseBtn:not(:disabled){
  background:#46754d!important;
  color:#fff!important;
  box-shadow:inset 0 -4px 0 #a7d3ad!important;
}
#driverPortal #driverMainFinaliseBtn:not(:disabled).active{
  background:#315f3d!important;
  color:#fff!important;
  box-shadow:inset 0 -4px 0 #e5b139!important;
}

/* ----------------------------------------------------------
   FINALISE STEP GATING
   ---------------------------------------------------------- */
.driver-finalise-step.is-locked{
  background:#eceff3!important;
  color:#9aa3af!important;
  border-bottom-color:#d5dae2!important;
  cursor:not-allowed!important;
  opacity:.82!important;
}
.driver-finalise-step.is-locked strong,
.driver-finalise-step.is-locked small{
  color:#98a1ad!important;
}
.driver-finalise-step.is-locked>span{
  background:#d7dce4!important;
  color:#8d97a5!important;
}
.driver-finalise-step.is-complete:not(.active){
  background:#f1f8f3!important;
  border-bottom-color:#80b88d!important;
}
.driver-finalise-step.is-complete:not(.active)>span{
  background:#4f865c!important;
  color:#fff!important;
}
.driver-finalise-step.is-complete:not(.active)>span{
  font-size:0!important;
}
.driver-finalise-step.is-complete:not(.active)>span::after{
  content:"✓";
  font-size:14px!important;
  font-weight:950!important;
}
.driver-flow-next:disabled{
  background:#dfe3e9!important;
  color:#939daa!important;
  border-color:#d2d8e0!important;
  cursor:not-allowed!important;
}

/* ----------------------------------------------------------
   REQUIRED DATA — clear internal scroll + more cue
   ---------------------------------------------------------- */
#driverPortal .driver-main.finalise-embedded [data-finalise-pane="required"]{
  overflow:hidden!important;
}
#driverPortal .driver-main.finalise-embedded .driver-required-stage-section{
  position:relative!important;
}
#driverPortal .driver-main.finalise-embedded #driverCompletionRequired{
  max-height:calc(100vh - 405px)!important;
  min-height:180px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-right:8px!important;
  scrollbar-width:auto!important;
  scrollbar-color:#8d98a8 #edf0f4!important;
}
#driverPortal .driver-main.finalise-embedded #driverCompletionRequired::-webkit-scrollbar{
  width:12px!important;
}
#driverPortal .driver-main.finalise-embedded #driverCompletionRequired::-webkit-scrollbar-track{
  background:#edf0f4!important;
  border-radius:8px!important;
}
#driverPortal .driver-main.finalise-embedded #driverCompletionRequired::-webkit-scrollbar-thumb{
  background:#8d98a8!important;
  border-radius:8px!important;
  border:2px solid #edf0f4!important;
}
#driverRequiredMoreCue{
  display:none;
  margin:5px 0 0;
  padding:6px 10px;
  text-align:center;
  background:linear-gradient(90deg,transparent,#eef4fd 18%,#eef4fd 82%,transparent);
  color:#315d9c;
  font-size:12px;
  font-weight:900;
  letter-spacing:.01em;
}
#driverRequiredMoreCue.visible{display:block}

/* Footer stays visible while the requirement list scrolls */
#driverPortal .driver-main.finalise-embedded .driver-finalise-footer{
  position:sticky!important;
  bottom:0!important;
  z-index:20!important;
}

@media(max-height:760px){
  #driverPortal .driver-main.finalise-embedded #driverCompletionRequired{
    max-height:calc(100vh - 365px)!important;
  }
}

/* source block 108: v2-17-86-finalise-polish-css; v2.19.18 line 12556 */

/* Photo controls stay together at the top */
#driverPortal .photo-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}
#driverPortal #confirmPhotoBtn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:0 14px!important;
  border-radius:8px!important;
  background:#4f865c!important;
  color:#fff!important;
  border:1px solid #4f865c!important;
  font-weight:900!important;
}
#driverPortal #confirmPhotoBtn.hidden{display:none!important}

/* Required Data must scroll clear of sticky footer */
#driverPortal .driver-main.finalise-embedded #driverCompletionRequired{
  padding-bottom:110px!important;
  scroll-padding-bottom:110px!important;
}
#driverPortal .driver-main.finalise-embedded [data-finalise-pane="required"]{
  padding-bottom:96px!important;
}
#driverPortal .driver-main.finalise-embedded .driver-finalise-footer{
  min-height:70px!important;
}

/* Review totals: compact 3-column Ex/VAT/Inc layout */
.driver-finalise-review-table{
  display:grid;
  gap:8px;
  padding:10px 0;
}
.driver-finalise-review-head,
.driver-finalise-review-line{
  display:grid;
  grid-template-columns:minmax(160px,1fr) 120px 105px 125px;
  gap:8px;
  align-items:center;
}
.driver-finalise-review-head{
  color:#69778b;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  padding:0 10px 4px;
}
.driver-finalise-review-line{
  border:1px solid #dce3ec;
  background:#f8fafc;
  border-radius:7px;
  padding:10px;
}
.driver-finalise-review-line strong{font-weight:950}
.driver-finalise-review-line.job{
  background:#111827;
  border-color:#111827;
  color:#fff;
}
.driver-finalise-review-line.job *{color:#fff!important}

/* Completed Finalise state */
#driverPortal .driver-main.finalise-complete #driverMainFinaliseBtn{
  background:#2f7a45!important;
  color:#fff!important;
  box-shadow:inset 0 -4px 0 #a8d5b1!important;
}
.driver-finalised-summary{
  background:#eaf7ed;
  border:2px solid #78b889;
  border-radius:10px;
  padding:14px;
  margin-top:10px;
}
.driver-finalised-summary-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  background:#2f7a45;
  color:#fff;
  border-radius:7px;
  margin-bottom:10px;
}
.driver-finalised-summary-head strong{
  font-size:18px;
  color:#fff!important;
}
.driver-finalised-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
}
.driver-finalised-summary-card{
  background:#fff;
  border:1px solid #b8d9c0;
  border-radius:7px;
  padding:10px;
}
.driver-finalised-summary-card span{
  display:block;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  color:#6a7a70;
}
.driver-finalised-summary-card strong{
  display:block;
  margin-top:3px;
  font-size:15px;
  color:#244f36;
}
@media(max-width:850px){
  .driver-finalise-review-head{display:none}
  .driver-finalise-review-line{grid-template-columns:1fr 1fr}
  .driver-finalised-summary-grid{grid-template-columns:1fr}
}

/* source block 109: v2-17-87-finalise-ui-polish-css; v2.19.18 line 12684 */

/* ==========================================================
   DRIVER NAV — coherent, cleaner, less "three random colours"
   ========================================================== */
#driverPortal .driver-main-tabs{
  display:grid!important;
  grid-template-columns:1fr 1fr 1fr!important;
  gap:0!important;
  background:#fff!important;
  border-bottom:1px solid #d8dee7!important;
}
#driverPortal .driver-main-tab{
  min-height:54px!important;
  border:0!important;
  border-right:1px solid #d8dee7!important;
  border-radius:0!important;
  background:#f6f7f9!important;
  color:#26354a!important;
  font-size:16px!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
  box-shadow:inset 0 -4px 0 transparent!important;
}
#driverPortal .driver-main-tab:last-child{border-right:0!important}
#driverPortal #driverMainJobsBtn.active,
#driverPortal #driverMainFullBtn.active{
  background:#151c2c!important;
  color:#fff!important;
  box-shadow:inset 0 -4px 0 #e5b139!important;
}
#driverPortal #driverMainJobsBtn:not(.active),
#driverPortal #driverMainFullBtn:not(.active){
  background:#f4f6f8!important;
  color:#314157!important;
}
#driverPortal #driverMainFinaliseBtn:disabled{
  background:#dfe3e8!important;
  color:#929ba7!important;
  box-shadow:none!important;
  opacity:1!important;
}
#driverPortal #driverMainFinaliseBtn:not(:disabled){
  background:#416f49!important;
  color:#fff!important;
  box-shadow:inset 0 -4px 0 #a8d3af!important;
}
#driverPortal #driverMainFinaliseBtn:not(:disabled).active{
  background:#315f3d!important;
  box-shadow:inset 0 -4px 0 #e5b139!important;
}

/* ==========================================================
   EMBEDDED FINALISE — flatter + more deliberate spacing
   ========================================================== */
#driverPortal .driver-main.finalise-embedded #podModal{
  background:transparent!important;
}
#driverPortal .driver-main.finalise-embedded .driver-finalise-flow-panel{
  padding:14px 16px 0!important;
  background:#fff!important;
}
.driver-complete-head{
  padding:0 0 10px!important;
  margin:0!important;
  border:0!important;
}
.driver-complete-head h3{
  font-size:25px!important;
  line-height:1.1!important;
  margin:0 0 4px!important;
}
#podJobSummary{
  color:#657187!important;
  font-size:14px!important;
  font-weight:700!important;
}
.driver-complete-progress{
  background:#f3f7ff!important;
  border:1px solid #bfd0ec!important;
  color:#2b4f83!important;
  border-radius:20px!important;
  padding:8px 14px!important;
  font-weight:900!important;
}

/* ==========================================================
   1 / 2 / 3 FLOW — clear locked / current / complete states
   ========================================================== */
.driver-finalise-steps{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:10px!important;
  margin:8px 0 16px!important;
}
.driver-finalise-step{
  min-height:64px!important;
  border:0!important;
  border-bottom:4px solid #d8dee7!important;
  border-radius:6px 6px 0 0!important;
  background:#f3f5f7!important;
  padding:10px 13px!important;
}
.driver-finalise-step>span{
  width:32px!important;
  height:32px!important;
  border-radius:50%!important;
}
.driver-finalise-step strong{
  font-size:14px!important;
  font-weight:950!important;
}
.driver-finalise-step small{
  font-size:11px!important;
}
.driver-finalise-step.active{
  background:#edf4ff!important;
  border-bottom-color:#3b68b8!important;
}
.driver-finalise-step.active>span{
  background:#3b68b8!important;
  color:#fff!important;
}
.driver-finalise-step.is-locked{
  background:#eef0f3!important;
  border-bottom-color:#d9dee5!important;
  opacity:.78!important;
}
.driver-finalise-step.is-locked strong,
.driver-finalise-step.is-locked small{
  color:#98a1ad!important;
}
.driver-finalise-step.is-complete:not(.active){
  background:#eef7f0!important;
  border-bottom-color:#78b486!important;
}
.driver-finalise-step.is-complete:not(.active)>span{
  background:#4f865c!important;
  color:#fff!important;
}

/* ==========================================================
   SECTIONS — flatter, fewer boxes inside boxes
   ========================================================== */
.driver-finalise-pane{
  padding:0 0 14px!important;
}
.driver-finalise-two-col,
.driver-finalise-review-grid{
  gap:20px!important;
}
.driver-complete-section{
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:#fff!important;
  padding:0!important;
}
.driver-complete-section-head{
  background:#111827!important;
  color:#fff!important;
  border:0!important;
  border-radius:4px!important;
  padding:9px 12px!important;
  margin:0 0 10px!important;
}
.driver-complete-section-head strong{
  color:#fff!important;
  font-size:15px!important;
}
.driver-complete-section-head .step-no{
  display:none!important;
}
.driver-complete-section-head .completion-state{
  background:#fff!important;
  color:#53627a!important;
  border:0!important;
  font-size:10px!important;
  font-weight:950!important;
  padding:3px 8px!important;
}

/* ==========================================================
   DELIVERY — compact photo area + controls together
   ========================================================== */
.driver-finalise-notes-label,
.driver-signoff-copy{
  color:#53627a!important;
  font-weight:800!important;
}
.driver-finalise-notes-section textarea{
  min-height:128px!important;
  border-radius:5px!important;
}
#driverPortal .photo-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  margin-bottom:6px!important;
}
#driverPortal #confirmPhotoBtn{
  order:2!important;
}
#driverPortal #photoFallbackLabel{
  order:3!important;
}
#driverPortal .camera-help{
  margin:5px 0 7px!important;
  color:#69778c!important;
}
#driverPortal #podPhotoPreview{
  min-height:120px!important;
  height:120px!important;
  background:#fafbfc!important;
  border:1px dashed #cfd7e2!important;
  border-radius:5px!important;
}
#driverPortal #podPhotoPreview:has(img){
  height:auto!important;
  max-height:270px!important;
  overflow:hidden!important;
}
#driverPortal #podPhotoPreview img{
  max-height:270px!important;
  width:100%!important;
  object-fit:contain!important;
  background:#111!important;
}

/* ==========================================================
   REQUIRED DATA — better scrolling and bottom visibility
   ========================================================== */
#driverPortal .driver-main.finalise-embedded #driverCompletionRequired{
  max-height:calc(100vh - 390px)!important;
  min-height:220px!important;
  overflow-y:auto!important;
  padding-right:10px!important;
  padding-bottom:145px!important;
  scroll-padding-bottom:145px!important;
}
#driverPortal .driver-main.finalise-embedded #driverRequiredMoreCue{
  position:sticky!important;
  bottom:72px!important;
  z-index:8!important;
  margin:0!important;
  background:linear-gradient(90deg,rgba(255,255,255,0),#edf4ff 18%,#edf4ff 82%,rgba(255,255,255,0))!important;
}
#driverPortal .driver-required-row{
  border-radius:5px!important;
  margin-bottom:10px!important;
}
#driverPortal .driver-required-row:last-child{
  margin-bottom:36px!important;
}

/* ==========================================================
   REVIEW — cleaner totals + stronger final figure
   ========================================================== */
.driver-finalise-review-table{
  gap:7px!important;
}
.driver-finalise-review-head{
  padding:0 10px 2px!important;
  color:#6b7789!important;
}
.driver-finalise-review-line{
  min-height:48px!important;
  border-radius:5px!important;
  padding:10px 12px!important;
}
.driver-finalise-review-line.job{
  min-height:54px!important;
  background:#111827!important;
  border-color:#111827!important;
}
.driver-finalise-review-line.job strong,
.driver-finalise-review-line.job span{
  color:#fff!important;
  font-weight:950!important;
}
.driver-review-signature-section .signature-canvas{
  width:100%!important;
  max-height:225px!important;
  border:1px solid #cad4e0!important;
  border-radius:5px!important;
  background:#fff!important;
}

/* ==========================================================
   COMPLETED — clear full-green finalised state
   ========================================================== */
#driverPortal .driver-main.finalise-complete .driver-complete-head{
  background:#eaf7ed!important;
  border-left:5px solid #2f7a45!important;
  padding:10px 12px!important;
  border-radius:5px!important;
}
#driverPortal .driver-main.finalise-complete .driver-complete-progress{
  background:#2f7a45!important;
  border-color:#2f7a45!important;
  color:#fff!important;
}
.driver-finalised-summary{
  background:#edf8ef!important;
  border:1px solid #8bc299!important;
  box-shadow:none!important;
}
.driver-finalised-summary-head{
  background:#2f7a45!important;
  border-radius:5px!important;
}
.driver-finalised-summary-card{
  border-radius:5px!important;
  border-color:#bad9c1!important;
}
#driverPortal .driver-main.finalise-complete #driverMainFinaliseBtn{
  background:#2f7a45!important;
  color:#fff!important;
}

/* ==========================================================
   FOOTER — compact, never covers content
   ========================================================== */
.driver-finalise-footer{
  min-height:66px!important;
  padding:10px 16px!important;
  background:#fff!important;
  border-top:1px solid #dfe5ed!important;
}
.driver-finalise-footer button{
  min-height:42px!important;
}

@media(max-width:900px){
  .driver-finalise-two-col,
  .driver-finalise-review-grid{
    grid-template-columns:1fr!important;
  }
  #driverPortal .driver-main.finalise-embedded #driverCompletionRequired{
    max-height:calc(100vh - 355px)!important;
  }
}

/* source block 110: v2-17-88-finalise-readonly-logo-css; v2.19.18 line 13029 */

/* AiGOAT local branding should never appear broken */
img[alt*="AiGOAT" i],
img[class*="aigoat" i]{
  object-fit:contain!important;
}

/* Photo controls: Select → Take → Confirm */
#driverPortal .photo-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}
#driverPortal #photoFallbackLabel{order:1!important}
#driverPortal #startCameraBtn{order:2!important}
#driverPortal #confirmPhotoBtn{order:3!important}

/* Required Data: always start clean, full scroll clearance */
#driverPortal .driver-main.finalise-embedded [data-finalise-pane="required"]{
  scroll-margin-top:0!important;
  padding-bottom:120px!important;
}
#driverPortal .driver-main.finalise-embedded #driverCompletionRequired{
  padding-top:0!important;
  padding-bottom:160px!important;
  scroll-padding-top:0!important;
  scroll-padding-bottom:160px!important;
}
#driverPortal .driver-main.finalise-embedded #driverCompletionRequired > :first-child{
  margin-top:0!important;
}

/* Completed / POD becomes a read-only record */
#driverPortal .driver-main.finalise-complete .driver-finalise-footer #savePodBtn,
#driverPortal .driver-main.finalise-complete .driver-finalise-footer #completeDeliveryBtn,
#driverPortal .driver-main.finalise-complete .driver-finalise-footer #cancelFromPodBtn{
  display:none!important;
}
#driverPortal .driver-main.finalise-complete .driver-finalise-footer{
  justify-content:flex-end!important;
  min-height:58px!important;
}
#driverPortal .driver-main.finalise-complete .driver-finalise-footer #closePodBtn{
  display:inline-flex!important;
}

/* hide editing controls in completed record */
#driverPortal .driver-main.finalise-complete #clearSignatureBtn,
#driverPortal .driver-main.finalise-complete #startCameraBtn,
#driverPortal .driver-main.finalise-complete #confirmPhotoBtn,
#driverPortal .driver-main.finalise-complete #photoFallbackLabel,
#driverPortal .driver-main.finalise-complete .driver-flow-next,
#driverPortal .driver-main.finalise-complete .driver-flow-back{
  display:none!important;
}
#driverPortal .driver-main.finalise-complete textarea,
#driverPortal .driver-main.finalise-complete input,
#driverPortal .driver-main.finalise-complete select{
  pointer-events:none!important;
}
#driverPortal .driver-main.finalise-complete .driver-finalise-pane{
  overflow:visible!important;
}
#driverPortal .driver-main.finalise-complete{
  overflow:auto!important;
}
#driverPortal .driver-main.finalise-complete .driver-finalise-flow-panel{
  max-height:none!important;
  overflow:visible!important;
}

/* finalised summary gets breathing room */
#driverPortal .driver-main.finalise-complete .driver-finalised-summary{
  margin-bottom:18px!important;
}

/* source block 111: v2-17-89-photo-controls-fix-css; v2.19.18 line 13108 */

/* Exact agreed photo control order + styling */
#driverPortal .photo-actions{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  margin-bottom:8px!important;
}
#driverPortal #photoFallbackLabel{
  order:1!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:0 14px!important;
  border-radius:8px!important;
  border:1px solid #4f78be!important;
  background:#edf4ff!important;
  color:#234f8c!important;
  font-weight:900!important;
  cursor:pointer!important;
}
#driverPortal #photoFallbackLabel span{
  display:inline!important;
  color:inherit!important;
  font-weight:900!important;
}
#driverPortal #photoFallbackLabel input{
  display:none!important;
}
#driverPortal #startCameraBtn{
  order:2!important;
  min-height:42px!important;
}
#driverPortal #confirmPhotoBtn{
  order:3!important;
  display:none!important;
  min-height:42px!important;
  padding:0 14px!important;
  border-radius:8px!important;
  background:#4f865c!important;
  color:#fff!important;
  border:1px solid #4f865c!important;
  font-weight:950!important;
}
#driverPortal #confirmPhotoBtn.is-visible{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
#driverPortal .camera-help{
  margin:5px 0 8px!important;
  color:#69778c!important;
}

/* source block 112: v2-17-90-finalise-structural-ui-css; v2.19.18 line 13166 */

/* ==========================================================
   FINALISE: REAL 3-ROW LAYOUT
   header/progress | one scroll area | footer
   ========================================================== */
#driverPortal .driver-main.finalise-embedded #podModal{
  position:static!important;
  inset:auto!important;
  display:block!important;
  background:transparent!important;
  width:100%!important;
  height:auto!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
}
#driverPortal .driver-main.finalise-embedded .driver-finalise-flow-panel{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  width:100%!important;
  max-width:none!important;
  height:calc(100vh - 150px)!important;
  max-height:none!important;
  min-height:620px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:#fff!important;
  overflow:hidden!important;
}

/* Header block */
#driverPortal .driver-main.finalise-embedded .driver-complete-head,
#driverPortal .driver-main.finalise-embedded .driver-finalise-steps{
  flex:0 0 auto!important;
}
#driverPortal .driver-main.finalise-embedded .driver-complete-head{
  padding:14px 16px 6px!important;
}
#driverPortal .driver-main.finalise-embedded .driver-finalise-steps{
  margin:6px 16px 10px!important;
}

/* One and only scrolling content region */
#driverPortal .driver-main.finalise-embedded .driver-finalise-pane{
  grid-row:2!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:0 16px 28px!important;
  scroll-padding-bottom:28px!important;
  position:relative!important;
}

/* Remove nested scrolling from Required Data completely */
#driverPortal .driver-main.finalise-embedded #driverCompletionRequired{
  max-height:none!important;
  min-height:0!important;
  height:auto!important;
  overflow:visible!important;
  padding:0!important;
  margin:0!important;
  scroll-padding:0!important;
}
#driverPortal .driver-main.finalise-embedded [data-finalise-pane="required"]{
  overflow-y:auto!important;
  padding-bottom:30px!important;
}
#driverPortal .driver-main.finalise-embedded #driverRequiredMoreCue{
  position:sticky!important;
  bottom:0!important;
  margin:10px 0 0!important;
  z-index:4!important;
}

/* Footer is its own row, never overlays content */
#driverPortal .driver-main.finalise-embedded .driver-finalise-footer{
  grid-row:3!important;
  position:static!important;
  bottom:auto!important;
  z-index:auto!important;
  min-height:66px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  padding:10px 16px!important;
  margin:0!important;
  background:#fff!important;
  border-top:1px solid #dfe5ed!important;
  box-shadow:0 -6px 12px rgba(16,24,39,.04)!important;
}

/* Buttons inside panes stay fully visible above footer */
#driverPortal .driver-flow-next,
#driverPortal .driver-flow-back{
  margin-bottom:8px!important;
}

/* ==========================================================
   REQUIRED DATA — COMPACT / NO DEAD SPACE
   ========================================================== */
#driverPortal .driver-required-row{
  margin:0 0 10px!important;
  border:1px solid #dce3ec!important;
  border-left:4px solid #4f78be!important;
  border-radius:5px!important;
  background:#fff!important;
}
#driverPortal .driver-required-row:last-child{
  margin-bottom:0!important;
}
#driverPortal .driver-required-row .driver-required-row-head{
  padding:9px 12px!important;
}
#driverPortal .driver-required-row .driver-required-row-body{
  padding:10px 12px!important;
}

/* ==========================================================
   COMPLETED / POD — FLAT READ-ONLY REPORT
   ========================================================== */
#driverPortal .driver-main.finalise-complete .driver-complete-head{
  background:#edf8ef!important;
  border-left:5px solid #2f7a45!important;
  border-radius:4px!important;
  padding:12px 14px!important;
  margin:0 16px 8px!important;
}
#driverPortal .driver-main.finalise-complete .driver-complete-head h3{
  margin:0!important;
}
#driverPortal .driver-main.finalise-complete .driver-complete-progress{
  background:#2f7a45!important;
  border-color:#2f7a45!important;
  color:#fff!important;
}

/* Kill outer completed card */
#driverPortal .driver-main.finalise-complete .driver-finalised-summary{
  margin:0 0 18px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
}
#driverPortal .driver-main.finalise-complete .driver-finalised-summary-head{
  margin:0 0 4px!important;
  padding:10px 12px!important;
  border-radius:4px!important;
  background:#2f7a45!important;
  color:#fff!important;
}

/* Flat summary rows, no little cards */
#driverPortal .driver-main.finalise-complete .driver-finalised-summary-grid{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:0!important;
  border-top:1px solid #dce6df!important;
  border-bottom:1px solid #dce6df!important;
}
#driverPortal .driver-main.finalise-complete .driver-finalised-summary-card{
  min-height:66px!important;
  margin:0!important;
  padding:10px 12px!important;
  border:0!important;
  border-right:1px solid #e1e7e3!important;
  border-bottom:1px solid #e1e7e3!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
}
#driverPortal .driver-main.finalise-complete .driver-finalised-summary-card:nth-child(3n){
  border-right:0!important;
}
#driverPortal .driver-main.finalise-complete .driver-finalised-summary-card:nth-last-child(-n+3){
  border-bottom:0!important;
}
#driverPortal .driver-main.finalise-complete .driver-finalised-summary-card span{
  display:block!important;
  margin:0 0 4px!important;
  color:#6d7a70!important;
  font-size:10px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
}
#driverPortal .driver-main.finalise-complete .driver-finalised-summary-card strong{
  display:block!important;
  color:#233c29!important;
  font-size:14px!important;
  font-weight:900!important;
}

/* Flatten review sections too */
#driverPortal .driver-main.finalise-complete .driver-finalise-review-grid{
  gap:18px!important;
}
#driverPortal .driver-main.finalise-complete .driver-complete-section{
  border:0!important;
  box-shadow:none!important;
  background:#fff!important;
}
#driverPortal .driver-main.finalise-complete .driver-complete-section-head{
  border-radius:3px!important;
}

/* Read-only completed footer: Close only */
#driverPortal .driver-main.finalise-complete .driver-finalise-footer{
  min-height:58px!important;
}
#driverPortal .driver-main.finalise-complete #savePodBtn,
#driverPortal .driver-main.finalise-complete #completeDeliveryBtn,
#driverPortal .driver-main.finalise-complete #cancelFromPodBtn{
  display:none!important;
}

/* ==========================================================
   PHOTO CONTROLS — force agreed order and no stray wording
   ========================================================== */
#driverPortal .photo-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}
#driverPortal #photoFallbackLabel{order:1!important}
#driverPortal #startCameraBtn{order:2!important}
#driverPortal #confirmPhotoBtn{order:3!important}
#driverPortal #photoFallbackLabel{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:0 14px!important;
  border-radius:8px!important;
  border:1px solid #4f78be!important;
  background:#edf4ff!important;
  color:#234f8c!important;
  font-weight:900!important;
  cursor:pointer!important;
}
#driverPortal #photoFallbackLabel input{display:none!important}

/* tablet */
@media(max-width:900px){
  #driverPortal .driver-main.finalise-embedded .driver-finalise-flow-panel{
    height:calc(100vh - 130px)!important;
    min-height:560px!important;
  }
  #driverPortal .driver-main.finalise-complete .driver-finalised-summary-grid{
    grid-template-columns:1fr 1fr!important;
  }
  #driverPortal .driver-main.finalise-complete .driver-finalised-summary-card:nth-child(3n){
    border-right:1px solid #e1e7e3!important;
  }
  #driverPortal .driver-main.finalise-complete .driver-finalised-summary-card:nth-child(2n){
    border-right:0!important;
  }
}

/* source block 113: v2-17-94-p1-remove-completed-pod-view-css; v2.19.18 line 13432 */

/* Project 1 simplification: completed jobs are done.
   Remove the driver-facing Completed/POD navigation/view entirely. */
#driverPortal #driverMainFinaliseBtn.completed-view,
#driverPortal #driverMainFinaliseBtn[data-completed-view="1"]{
  display:none!important;
}

/* source block 114: v2-17-95-photo-required-qty-ui-css; v2.19.18 line 13442 */

/* ----------------------------------------------------------
   PHOTO CONFIRMATION
   Red = action still required
   Green = explicitly confirmed
   ---------------------------------------------------------- */
#driverPortal #confirmPhotoBtn{
  background:#c94747!important;
  border-color:#c94747!important;
  color:#fff!important;
  font-weight:950!important;
}
#driverPortal #confirmPhotoBtn.is-confirmed,
#driverPortal #confirmPhotoBtn:disabled{
  background:#4f865c!important;
  border-color:#4f865c!important;
  color:#fff!important;
  opacity:1!important;
}

/* ----------------------------------------------------------
   REQUIRED DATA SCROLL
   Keep Step 2 independently scrollable and clear of footer
   ---------------------------------------------------------- */
#driverPortal .driver-main.finalise-embedded [data-finalise-pane="required"]{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  min-height:0!important;
  max-height:calc(100vh - 355px)!important;
  padding-bottom:90px!important;
  scroll-padding-bottom:90px!important;
}
#driverPortal .driver-main.finalise-embedded #driverCompletionRequired{
  overflow:visible!important;
  max-height:none!important;
  min-height:0!important;
  padding-bottom:20px!important;
}

/* ----------------------------------------------------------
   BASKET QUANTITY
   Keep ordered / actual / action controls on one right-hand row
   ---------------------------------------------------------- */
#driverPortal .driver-required-row:has(.driver-basket-qty-confirm),
#driverPortal .driver-required-row:has([data-basket-qty-confirm]){
  overflow:visible!important;
}
#driverPortal .driver-basket-qty-controls,
#driverPortal [data-basket-qty-controls]{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  flex-wrap:nowrap!important;
  margin-left:auto!important;
  width:auto!important;
}
#driverPortal .driver-basket-qty-controls .driver-basket-qty-confirm,
#driverPortal [data-basket-qty-controls] [data-basket-qty-confirm]{
  order:4!important;
  margin:0!important;
  white-space:nowrap!important;
}
#driverPortal .driver-basket-qty-controls input,
#driverPortal [data-basket-qty-controls] input{
  width:130px!important;
  flex:0 0 130px!important;
}

/* Generic support for the existing quantity row structure */
#driverPortal .basket-quantity-actions,
#driverPortal .driver-basket-quantity-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  flex-wrap:nowrap!important;
}
#driverPortal .basket-quantity-actions button,
#driverPortal .driver-basket-quantity-actions button{
  margin:0!important;
  white-space:nowrap!important;
}

/* source block 115: v2-17-96-basket-qty-single-line-css; v2.19.18 line 13528 */

/* Basket Quantity required item = one compact product-line style row */
#driverPortal .driver-required-row:has(.driver-basket-qty){
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  min-height:62px!important;
  padding:9px 12px!important;
  background:#fff!important;
}
#driverPortal .driver-required-row:has(.driver-basket-qty)>div:first-child{
  min-width:0!important;
}
#driverPortal .driver-required-row:has(.driver-basket-qty)>div:first-child strong{
  display:block!important;
  font-size:14px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#driverPortal .driver-required-row:has(.driver-basket-qty)>div:first-child small{
  display:none!important;
}

#driverPortal .driver-basket-qty{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  width:auto!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
}

/* Flatten the wrappers so everything sits on the same row */
#driverPortal .driver-basket-qty-summary,
#driverPortal .driver-basket-qty-controls{
  display:contents!important;
}

#driverPortal .driver-basket-qty-stat{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-height:38px!important;
  padding:6px 9px!important;
  border-radius:7px!important;
  white-space:nowrap!important;
}
#driverPortal .driver-basket-qty-stat span{
  font-size:9px!important;
}
#driverPortal .driver-basket-qty-stat strong{
  font-size:14px!important;
}

#driverPortal .basket-qty-change{
  order:3!important;
  height:38px!important;
  padding:0 11px!important;
  white-space:nowrap!important;
}
#driverPortal .basket-qty-editor-wrap{
  order:4!important;
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  margin:0!important;
  white-space:nowrap!important;
}
#driverPortal .basket-qty-editor-wrap.hidden{
  display:none!important;
}
#driverPortal .basket-qty-editor-wrap label{
  display:block!important;
  margin:0!important;
  font-size:0!important;
}
#driverPortal .basket-qty-editor{
  width:88px!important;
  height:38px!important;
  font-size:14px!important;
}
#driverPortal .basket-qty-unit{
  height:38px!important;
  font-size:13px!important;
}
#driverPortal .basket-qty-use-ordered{
  order:5!important;
  height:38px!important;
  padding:0 11px!important;
  white-space:nowrap!important;
}

/* Required pane scroll remains available */
#driverPortal .driver-main.finalise-embedded [data-finalise-pane="required"]{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  min-height:0!important;
}

@media(max-width:980px){
  #driverPortal .driver-required-row:has(.driver-basket-qty){
    grid-template-columns:minmax(200px,.8fr) minmax(0,1.7fr)!important;
  }
  #driverPortal .driver-basket-qty{
    gap:6px!important;
  }
  #driverPortal .driver-basket-qty-stat{
    padding:5px 7px!important;
  }
  #driverPortal .basket-qty-change,
  #driverPortal .basket-qty-use-ordered{
    padding:0 8px!important;
    font-size:11px!important;
  }
}

/* source block 116: v2-17-97-single-photo-flow-css; v2.19.18 line 13652 */

/* One-line photo workflow */
#driverPortal .photo-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}
#driverPortal #photoFallbackLabel{order:1!important}
#driverPortal #startCameraBtn{order:2!important}
#driverPortal #capturePhotoBtn{order:3!important}
#driverPortal #closeCameraBtn{order:4!important}
#driverPortal #confirmPhotoBtn{order:5!important}

/* Capture / Close only make sense while the camera is live */
#driverPortal .photo-camera-action{
  display:none!important;
  min-height:42px!important;
  align-items:center!important;
  justify-content:center!important;
}
#driverPortal .driver-complete-section.camera-open #capturePhotoBtn,
#driverPortal .driver-complete-section.camera-open #closeCameraBtn{
  display:inline-flex!important;
}

/* Single media area: live camera OR selected/captured photo, never both */
#driverPortal .photo-media-area{
  width:100%!important;
  min-height:260px!important;
  margin-top:8px!important;
  overflow:hidden!important;
  border:1px solid #d8e0ea!important;
  border-radius:6px!important;
  background:#0d0f12!important;
}
#driverPortal #cameraStage,
#driverPortal #podPhotoPreview{
  width:100%!important;
  height:100%!important;
  min-height:260px!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  overflow:hidden!important;
  background:#0d0f12!important;
}
#driverPortal #cameraStage{
  display:none;
}
#driverPortal #cameraVideo{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:260px!important;
  max-height:430px!important;
  object-fit:contain!important;
  background:#0d0f12!important;
}
#driverPortal #podPhotoPreview{
  display:grid;
  place-items:center!important;
  color:#eef2f6!important;
}
#driverPortal #podPhotoPreview img{
  display:block!important;
  width:100%!important;
  max-height:430px!important;
  object-fit:contain!important;
  margin:0 auto!important;
}

/* Remove legacy camera controls area if any styling survives */
#driverPortal .camera-controls{
  display:none!important;
}

@media(max-height:760px){
  #driverPortal .photo-media-area,
  #driverPortal #cameraStage,
  #driverPortal #podPhotoPreview,
  #driverPortal #cameraVideo{
    min-height:210px!important;
  }
  #driverPortal #cameraVideo,
  #driverPortal #podPhotoPreview img{
    max-height:310px!important;
  }
}

/* source block 117: v2-18-11-mobile-portrait-snagging; v2.19.18 line 13744 */

/* v2.18.21 LIVE — mobile/portrait snagging pass */
@media (max-width: 900px), (orientation: portrait){
  /* 1) Clean portrait header: brand first, actions below, never overlap */
  #driverPortal .driver-topbar{
    position:static!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:start!important;
    gap:10px!important;
    padding:10px 12px 12px!important;
    min-height:0!important;
  }
  #driverPortal .driver-brand{
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:minmax(145px, 1fr) minmax(0, .9fr)!important;
    align-items:center!important;
    gap:10px!important;
  }
  #driverPortal .driver-brand img{
    width:min(100%,220px)!important;
    max-height:58px!important;
    justify-self:start!important;
  }
  #driverPortal .driver-brand>div{min-width:0!important;}
  #driverPortal .driver-title-row h2{
    font-size:1rem!important;
    line-height:1.05!important;
    white-space:normal!important;
  }
  #driverPortal .driver-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    align-items:stretch!important;
  }
  #driverPortal .driver-actions .driver-top-action,
  #driverPortal .driver-actions #driverLogoutBtn,
  #driverPortal .driver-actions #driverTopSyncStatus{
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    box-sizing:border-box!important;
    margin:0!important;
    justify-content:center!important;
    text-align:center!important;
  }
  #driverPortal .driver-actions #driverTopSyncStatus{
    display:flex!important;
    align-items:center!important;
  }

  /* 2) Finalise steps live at the top, between heading and scrolling content */
  #driverPortal .driver-main.finalise-embedded .driver-finalise-flow-panel{
    grid-template-rows:auto auto minmax(0,1fr) auto!important;
  }
  #driverPortal .driver-main.finalise-embedded .driver-complete-head{grid-row:1!important;}
  #driverPortal .driver-main.finalise-embedded .driver-finalise-steps{
    grid-row:2!important;
    margin:4px 12px 10px!important;
  }
  #driverPortal .driver-main.finalise-embedded .driver-finalise-pane{
    grid-row:3!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
  #driverPortal .driver-main.finalise-embedded .driver-finalise-footer{grid-row:4!important;}
  #driverPortal .driver-finalise-step{
    min-width:0!important;
    padding:8px 6px!important;
  }
  #driverPortal .driver-finalise-step strong{
    white-space:normal!important;
    line-height:1.05!important;
  }

  /* 3) Today's Jobs: let the portal own vertical scroll and clear the final card */
  #driverPortal #driverJobsPickerView{
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    padding-bottom:180px!important;
  }
  #driverPortal .driver-jobs-picker-scroll{
    padding-bottom:40px!important;
  }
}

@media (max-width: 520px){
  #driverPortal .driver-brand{grid-template-columns:1fr 1fr!important;}
  #driverPortal .driver-actions{grid-template-columns:1fr 1fr!important;}
  #driverPortal .driver-finalise-step{font-size:.8rem!important;}
}

/* source block 118: dmm-v21830-terms-portrait-scroll-final; v2.19.18 line 13843 */

/* v2.18.30 FINAL: T&C is portrait-first and the selected job pane becomes the scroll owner while T&C is open. */
body.driver-mode .driver-selected-pane:has(.driver-terms-inline){
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior-y:contain!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
}
body.driver-mode .driver-selected-pane:has(.driver-terms-inline) > .driver-job-v3,
body.driver-mode .driver-selected-pane:has(.driver-terms-inline) .driver-job-detail-v3,
body.driver-mode .driver-selected-pane:has(.driver-terms-inline) .driver-detail-grid,
body.driver-mode .driver-selected-pane:has(.driver-terms-inline) .driver-main-stack{
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  overflow:visible!important;
}
body.driver-mode .driver-selected-pane:has(.driver-terms-inline) .driver-main-stack{
  display:block!important;
}
body.driver-mode .driver-selected-pane:has(.driver-terms-inline) .driver-time-control,
body.driver-mode .driver-selected-pane:has(.driver-terms-inline) .driver-terms-inline,
body.driver-mode .driver-selected-pane:has(.driver-terms-inline) .driver-tablet-load,
body.driver-mode .driver-selected-pane:has(.driver-terms-inline) .driver-notes-fullwidth{
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
body.driver-mode .driver-terms-inline{
  width:100%!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
/* Portrait-first T&C composition at ALL widths: never place signatures side-by-side. */
body.driver-mode .driver-terms-sign-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:12px!important;
}
body.driver-mode .driver-terms-sign-grid>div{min-width:0!important;width:100%!important;box-sizing:border-box!important;}
body.driver-mode .driver-terms-sign-grid canvas{
  width:100%!important;
  height:160px!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.driver-mode .driver-terms-copy-body{
  max-height:none!important;
  overflow:visible!important;
}
body.driver-mode .driver-terms-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:10px!important;
  align-items:stretch!important;
}
body.driver-mode .driver-terms-actions .spacer{display:none!important;}
body.driver-mode .driver-terms-actions button{
  width:100%!important;
  min-height:48px!important;
}
body.driver-mode .driver-terms-copy,
body.driver-mode .driver-terms-sign-area,
body.driver-mode .driver-terms-actions{min-width:0!important;}
/* Keep enough bottom runway so the last action can be fully brought into view. */
body.driver-mode .driver-selected-pane:has(.driver-terms-inline) .driver-notes-fullwidth{margin-bottom:120px!important;}

/* source block 119: dmm-v21831-terms-editor-contained-final; v2.19.18 line 13912 */

/* v2.18.31: T&C is a contained editor. Do not show the pricing/notes workspace underneath while signing. */
body.driver-mode .driver-selected-pane:has(#driverTermsInline) .driver-tablet-load,
body.driver-mode .driver-selected-pane:has(#driverTermsInline) .driver-notes-fullwidth{display:none!important;}
body.driver-mode .driver-selected-pane:has(#driverTermsInline){overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-y:contain!important;}
body.driver-mode #driverTermsInline{display:block!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;overflow:visible!important;margin:0 0 24px!important;border:1px solid #dbe3ec!important;border-radius:12px!important;background:#fff!important;}
body.driver-mode #driverTermsInline .driver-terms-sign-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;}
body.driver-mode #driverTermsInline .driver-terms-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;}
body.driver-mode #driverTermsInline canvas{touch-action:none!important;user-select:none!important;-webkit-user-select:none!important;}
body.driver-mode #driverTermsInline input{font-size:16px!important;}
body.driver-mode .driver-selected-pane:has(#driverTermsInline) .driver-main-stack{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding-bottom:100px!important;}

/* source block 120: dmm-v21901-safe-master; v2.19.18 line 13925 */

/* SAFE T&C merge: visual ready state only. No browser storage or native SQLite changes. */
body.driver-mode .driver-round-time.start.ready{background:#319443!important;border-color:#dff4e6!important;color:#fff!important;opacity:1!important;}

/* source block 121: dmm-v21903-driver-timer-identity-cleanup; v2.19.18 line 13930 */

/* v2.19.03 SAFE: selected job identity is already shown in the card header above.
   Hide the duplicate identity inside the dark START / TIMER / END panel so it cannot
   collide with T&C/START. Required Data and T&C scrolling rules are untouched. */
body.driver-mode .driver-time-control:not(.locked) .driver-round-actions > .driver-hard-job-id{
  display:none!important;
}
body.driver-mode .driver-time-control:not(.locked) .driver-round-actions{
  grid-template-columns:minmax(0,1fr) 150px minmax(0,1fr)!important;
}
@media(max-width:720px){
  body.driver-mode .driver-time-control:not(.locked) .driver-round-actions{
    grid-template-columns:76px minmax(110px,1fr) 76px!important;
  }
}

