/* V0.39.8.29 Finance Blue comparison controls + sidebar routing */
.cpx-widget .cpx-number-control{
  display:grid!important;
  grid-template-columns:44px minmax(86px,1fr) 44px!important;
  gap:7px!important;
  align-items:center!important;
}
.cpx-widget .cpx-step-button{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:44px!important;
  min-width:44px!important;
  height:44px!important;
  min-height:44px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #b8c8e2!important;
  border-radius:10px!important;
  background:#eef4ff!important;
  color:var(--cpx-primary,#145cc5)!important;
  box-shadow:none!important;
  font-family:inherit!important;
  font-size:24px!important;
  font-weight:700!important;
  line-height:1!important;
  text-indent:0!important;
  opacity:1!important;
  visibility:visible!important;
  cursor:pointer!important;
}
.cpx-widget .cpx-step-button:hover:not(:disabled),
.cpx-widget .cpx-step-button:focus-visible:not(:disabled){
  background:#e1ecff!important;
  border-color:var(--cpx-primary,#145cc5)!important;
  color:var(--cpx-primary,#145cc5)!important;
}
.cpx-widget .cpx-step-button:focus-visible{
  outline:3px solid rgba(20,92,197,.2)!important;
  outline-offset:2px!important;
}
.cpx-widget .cpx-step-button:disabled{
  opacity:.45!important;
  cursor:not-allowed!important;
}
.cpx-widget .cpx-number-input{
  min-width:0!important;
}

.cpx-widget--sidebar .cpx-number-control{
  grid-template-columns:38px minmax(0,1fr) 38px!important;
  gap:6px!important;
}
.cpx-widget--sidebar .cpx-step-button{
  width:38px!important;
  min-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  font-size:21px!important;
}

/* Sidebar is only a compact launcher for the full comparison page. */
.cpx-widget--sidebar .cpx-widget__status,
.cpx-widget--sidebar .cpx-results,
.cpx-widget--sidebar .cpx-load-more-wrap,
.cpx-widget--sidebar .cpx-modal{
  display:none!important;
}

@media(max-width:560px){
  .cpx-widget .cpx-number-control{
    grid-template-columns:36px minmax(0,1fr) 36px!important;
    gap:5px!important;
  }
  .cpx-widget .cpx-step-button{
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    min-height:36px!important;
    font-size:22px!important;
  }
}
