/* GCR Shopper Tools — dealer-branded, intentionally secondary to primary VDP CTAs. */
.gcr-shopper-vdp-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;margin-top:10px}.gcr-shopper-action{display:inline-flex;align-items:center;gap:6px;padding:3px 0;border:0;background:transparent!important;color:#50575e;font:inherit;font-size:13px;font-weight:700;line-height:1.4;cursor:pointer;text-decoration:none;box-shadow:none!important}.gcr-shopper-action:hover,.gcr-shopper-action:focus,.gcr-shopper-action.is-active{color:var(--gcr-primary-color,#CA0000);background:transparent!important}.gcr-shopper-action:focus-visible{outline:2px solid var(--gcr-primary-color,#CA0000);outline-offset:3px;border-radius:3px}.gcr-shopper-action__icon{font-size:16px;line-height:1}.gcr-shopper-action.is-active .gcr-shopper-action__icon{font-weight:900}.gcr-shopper-action + .gcr-shopper-action{position:relative}.gcr-shopper-action + .gcr-shopper-action:before{content:"";position:absolute;left:-8px;width:1px;height:14px;background:#dcdcde}
.gcr-shopper-launcher{position:fixed;right:22px;bottom:var(--gcr-shopper-floating-bottom,22px);z-index:99990;border:1px solid var(--gcr-primary-color,#CA0000);border-radius:var(--gcr-button-radius,0);padding:12px 17px;background:var(--gcr-primary-color,#CA0000);color:var(--gcr-primary-text-color,#fff);font-family:var(--gcr-button-font-family,inherit);font-weight:800;transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;box-shadow:0 8px 28px rgba(0,0,0,.2);cursor:pointer}.gcr-shopper-launcher:hover,.gcr-shopper-launcher:focus{border-color:var(--gcr-primary-hover-color,#000);background:var(--gcr-primary-hover-color,#000);color:var(--gcr-primary-hover-text-color,var(--gcr-primary-text-color,#fff))}.gcr-shopper-launcher span{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:5px;padding:0 5px;border-radius:999px;background:#fff;color:var(--gcr-primary-color,#CA0000)}
.gcr-shopper-backdrop{position:fixed;inset:0;z-index:99989;display:none;background:rgba(0,0,0,.28);cursor:pointer}.gcr-shopper-backdrop.is-open{display:block}
.gcr-shopper-panel{position:fixed;right:22px;bottom:calc(var(--gcr-shopper-floating-bottom,22px) + 54px);z-index:99991;width:min(460px,calc(100vw - 28px));max-height:min(680px,calc(100vh - 110px));display:none;overflow:hidden;border:1px solid #dcdcde;border-radius:var(--gcr-container-radius,0);background:#fff;box-shadow:0 18px 50px rgba(0,0,0,.24)}.gcr-shopper-panel.is-open{display:flex;flex-direction:column}.gcr-shopper-panel__header{display:flex;justify-content:space-between;align-items:center;padding:15px 18px;border-top:4px solid var(--gcr-primary-color,#CA0000);border-bottom:1px solid #e7e7e7}.gcr-shopper-panel__header strong{font-size:18px;color:#1d2327}.gcr-shopper-close{border:0;background:transparent;font-size:26px;line-height:1;color:#50575e;cursor:pointer}.gcr-shopper-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #e7e7e7;background:#fff}.gcr-shopper-tabs button{appearance:none!important;-webkit-appearance:none!important;display:block!important;width:100%!important;min-width:0!important;margin:0!important;padding:12px 8px 10px!important;border:0!important;border-bottom:3px solid transparent!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#3c434a!important;font:inherit!important;font-weight:700!important;line-height:1.2!important;text-align:center!important;text-decoration:none!important;cursor:pointer!important;transition:color .15s ease,border-color .15s ease!important}.gcr-shopper-tabs button:hover,.gcr-shopper-tabs button:focus{background:transparent!important;color:var(--gcr-primary-color,#CA0000)!important;box-shadow:none!important}.gcr-shopper-tabs button:focus-visible{outline:2px solid color-mix(in srgb,var(--gcr-primary-color,#CA0000) 35%,transparent);outline-offset:-2px}.gcr-shopper-tabs button.is-active{border-bottom-color:var(--gcr-primary-color,#CA0000)!important;background:transparent!important;color:var(--gcr-primary-color,#CA0000)!important;box-shadow:none!important}.gcr-shopper-panel__content{overflow:auto;padding:14px}.gcr-shopper-empty{padding:28px 18px;text-align:center;color:#646970}.gcr-shopper-empty strong{display:block;margin-bottom:6px;color:#1d2327;font-size:16px}.gcr-shopper-empty p{margin:0;line-height:1.55}.gcr-shopper-card{position:relative;display:grid;grid-template-columns:76px 1fr;gap:12px;padding:10px 30px 10px 0;border-bottom:1px solid #ececec}.gcr-shopper-card img{width:76px;height:62px;object-fit:cover;border-radius:var(--gcr-element-radius,0)}.gcr-shopper-card__body{display:flex;flex-direction:column;gap:3px;min-width:0}.gcr-shopper-card__title{font-weight:800;color:#1d2327;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gcr-shopper-card__body span{font-size:12px;color:#646970}.gcr-shopper-card__remove{position:absolute;right:0;top:9px;border:0;background:transparent;font-size:22px;color:#777;cursor:pointer}.gcr-shopper-compare-table{overflow:auto}.gcr-shopper-compare-table table{width:100%;border-collapse:collapse;font-size:13px}.gcr-shopper-compare-table th,.gcr-shopper-compare-table td{padding:9px;border-bottom:1px solid #ececec;text-align:left;vertical-align:top}.gcr-shopper-compare-table thead th{min-width:120px;background:#f7faff}.gcr-shopper-compare-table th:first-child{min-width:78px}.gcr-shopper-compare-table a{color:var(--gcr-primary-color,#CA0000);font-weight:700;text-decoration:none}
@media(max-width:600px){.gcr-shopper-launcher{right:12px}.gcr-shopper-panel{right:14px;width:calc(100vw - 28px)}.gcr-shopper-vdp-actions{gap:6px 12px}.gcr-shopper-action{font-size:12px}}
/* 2.0.96 — Compare is a dedicated decision workspace rather than a third list. */
.gcr-shopper-compare-workspace{display:flex;flex-direction:column;gap:12px}
.gcr-shopper-compare-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 2px 8px;border-bottom:1px solid #e7e7e7}
.gcr-shopper-compare-heading strong{font-size:16px;color:#1d2327}
.gcr-shopper-compare-heading span{display:inline-flex;align-items:center;justify-content:center;padding:4px 9px;border-radius:999px;background:color-mix(in srgb,var(--gcr-primary-color,#CA0000) 10%,white);color:var(--gcr-primary-color,#CA0000);font-size:12px;font-weight:800}
.gcr-shopper-compare-action{width:100%;border:0;border-radius:var(--gcr-button-radius,0);padding:11px 14px;background:var(--gcr-primary-color,#CA0000);color:var(--gcr-primary-text-color,#fff);font-family:var(--gcr-button-font-family,inherit);font-weight:800;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease}
.gcr-shopper-compare-action:hover,.gcr-shopper-compare-action:focus{background:var(--gcr-primary-hover-color,#000);color:var(--gcr-primary-hover-text-color,var(--gcr-primary-text-color,#fff))}
.gcr-shopper-compare-hint{padding:10px 12px;border-radius:var(--gcr-element-radius,0);background:#f6f7f7;color:#646970;text-align:center;font-size:13px}
.gcr-shopper-compare-back{align-self:flex-start;border:0;background:transparent;color:var(--gcr-primary-color,#CA0000);padding:0;font-weight:700;cursor:pointer}
.gcr-shopper-compare-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.gcr-shopper-compare-head a{min-width:0}
.gcr-shopper-compare-remove{appearance:none!important;-webkit-appearance:none!important;display:inline-grid!important;place-items:center!important;flex:0 0 26px!important;width:26px!important;min-width:26px!important;max-width:26px!important;height:26px!important;min-height:26px!important;margin:0!important;padding:0!important;border:1px solid #dcdcde!important;border-radius:50%!important;background:#fff!important;color:#646970!important;box-shadow:none!important;font-family:Arial,sans-serif!important;font-size:20px!important;font-weight:400!important;line-height:1!important;text-align:center!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer!important;box-sizing:border-box!important}
.gcr-shopper-compare-remove:hover,.gcr-shopper-compare-remove:focus{border-color:#d63638!important;background:#fff!important;color:#d63638!important;box-shadow:none!important;outline:none!important}


/* Shopper Tools presentation: compact dealer-branded utility tab on desktop, floating on mobile. */
.gcr-shopper-launcher{display:inline-flex;align-items:center;justify-content:center;gap:0;white-space:nowrap}
.gcr-shopper-launcher__vehicle{display:none!important}
.gcr-shopper-tools--side-tab .gcr-shopper-launcher{right:0;top:50%;bottom:auto;transform:translateY(-50%);min-width:118px;min-height:46px;border-radius:var(--gcr-button-radius,0) 0 0 var(--gcr-button-radius,0);padding:0 18px;background:var(--gcr-primary-color,#CA0000);color:var(--gcr-primary-text-color,#fff);font-size:14px;font-weight:800;letter-spacing:.01em;writing-mode:horizontal-tb;text-orientation:mixed;box-shadow:-5px 8px 22px rgba(0,0,0,.16)}
.gcr-shopper-tools--side-tab .gcr-shopper-launcher:hover,.gcr-shopper-tools--side-tab .gcr-shopper-launcher:focus{background:var(--gcr-primary-hover-color,#000);color:var(--gcr-primary-hover-text-color,var(--gcr-primary-text-color,#fff));transform:translateY(-50%) translateX(-3px)}
.gcr-shopper-tools--side-tab .gcr-shopper-panel{right:18px;bottom:auto;top:50%;transform:translateY(-50%);max-height:min(720px,calc(100vh - 56px))}
.gcr-shopper-tools--floating .gcr-shopper-launcher{top:auto;transform:none}
@media(max-width:782px){
  .gcr-shopper-tools--side-tab .gcr-shopper-launcher,.gcr-shopper-tools--floating .gcr-shopper-launcher{right:12px;top:auto;bottom:var(--gcr-shopper-floating-bottom,22px);transform:none;min-width:auto;min-height:44px;writing-mode:horizontal-tb;border-radius:var(--gcr-button-radius,0);padding:0 17px;font-size:13px}
  .gcr-shopper-tools--side-tab .gcr-shopper-launcher:hover,.gcr-shopper-tools--side-tab .gcr-shopper-launcher:focus{transform:none}
  .gcr-shopper-tools--side-tab .gcr-shopper-panel,.gcr-shopper-tools--floating .gcr-shopper-panel{right:14px;top:auto;bottom:calc(var(--gcr-shopper-floating-bottom,22px) + 54px);transform:none;width:calc(100vw - 28px)}
}


/* 2.0.104 — My Vehicles follows dealer Inventory Design exactly. */
.gcr-shopper-launcher{
  border-radius:var(--gcr-button-radius,0)!important;
  background:var(--gcr-primary-color,#CA0000)!important;
  color:var(--gcr-primary-text-color,#fff)!important;
}
.gcr-shopper-launcher:hover,.gcr-shopper-launcher:focus{
  background:var(--gcr-primary-hover-color,#000)!important;
  color:var(--gcr-primary-hover-text-color,var(--gcr-primary-text-color,#fff))!important;
}
/* The launcher label is plain text. Do not render the former count-pill styling. */
.gcr-shopper-launcher > span{
  display:inline!important;
  min-width:0!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:inherit!important;
  line-height:inherit!important;
}
.gcr-shopper-panel{border-radius:var(--gcr-container-radius,0)!important;}
.gcr-shopper-card img,
.gcr-shopper-compare-hint,
.gcr-shopper-compare-heading span,
.gcr-shopper-compare-remove{
  border-radius:var(--gcr-element-radius,0)!important;
}
.gcr-shopper-compare-action{
  border-radius:var(--gcr-button-radius,0)!important;
}
.gcr-shopper-tools--side-tab .gcr-shopper-launcher{
  right:0!important;
  top:50%!important;
  bottom:auto!important;
  width:44px!important;
  min-width:44px!important;
  max-width:44px!important;
  height:auto!important;
  min-height:132px!important;
  padding:16px 0!important;
  border-radius:var(--gcr-button-radius,0)!important;
  writing-mode:vertical-rl!important;
  text-orientation:mixed!important;
  transform:translateY(-50%) rotate(180deg)!important;
  letter-spacing:.02em!important;
  box-shadow:-4px 5px 16px rgba(0,0,0,.16)!important;
}
.gcr-shopper-tools--side-tab .gcr-shopper-launcher:hover,
.gcr-shopper-tools--side-tab .gcr-shopper-launcher:focus{
  transform:translateY(-50%) rotate(180deg) translateY(2px)!important;
}
@media(max-width:782px){
  .gcr-shopper-tools--side-tab .gcr-shopper-launcher,
  .gcr-shopper-tools--floating .gcr-shopper-launcher{
    width:auto!important;
    min-width:auto!important;
    max-width:none!important;
    min-height:44px!important;
    padding:0 17px!important;
    writing-mode:horizontal-tb!important;
    transform:none!important;
    border-radius:var(--gcr-button-radius,0)!important;
  }
  .gcr-shopper-tools--side-tab .gcr-shopper-launcher:hover,
  .gcr-shopper-tools--side-tab .gcr-shopper-launcher:focus{transform:none!important;}
}


/* 2.0.105 — Shopper Tools comparison workspace and refined optional side tab. */
.gcr-shopper-card__compare{
  align-self:flex-start;
  margin-top:6px;
  padding:4px 9px!important;
  border:1px solid var(--gcr-primary-color,#CA0000)!important;
  border-radius:var(--gcr-button-radius,0)!important;
  background:transparent!important;
  color:var(--gcr-primary-color,#CA0000)!important;
  font-family:var(--gcr-button-font-family,inherit)!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.2!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
.gcr-shopper-card__compare:hover,.gcr-shopper-card__compare:focus{
  background:var(--gcr-primary-hover-color,#000)!important;
  border-color:var(--gcr-primary-hover-color,#000)!important;
  color:var(--gcr-primary-hover-text-color,var(--gcr-primary-text-color,#fff))!important;
}
.gcr-shopper-card__compare.is-active{
  background:var(--gcr-primary-color,#CA0000)!important;
  border-color:var(--gcr-primary-color,#CA0000)!important;
  color:var(--gcr-primary-text-color,#fff)!important;
}
.gcr-shopper-compare-modal{
  position:fixed;
  z-index:99994;
  left:50%;
  top:50%;
  width:min(1180px,calc(100vw - 48px));
  max-height:calc(100vh - 72px);
  display:none;
  flex-direction:column;
  transform:translate(-50%,-50%);
  overflow:hidden;
  border:1px solid #dcdcde;
  border-radius:var(--gcr-container-radius,0);
  background:#fff;
  box-shadow:0 28px 80px rgba(0,0,0,.32);
}
.gcr-shopper-compare-modal.is-open{display:flex}
.gcr-shopper-compare-modal__header{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:18px 20px;border-top:4px solid var(--gcr-primary-color,#CA0000);border-bottom:1px solid #e7e7e7;
}
.gcr-shopper-compare-modal__header>div{display:flex;flex-direction:column;gap:2px}
.gcr-shopper-compare-modal__header strong{font-size:20px;color:#1d2327}
.gcr-shopper-compare-modal__header span{font-size:13px;color:#646970}
.gcr-shopper-compare-modal__close{
  appearance:none!important;width:36px!important;height:36px!important;min-width:36px!important;padding:0!important;margin:0!important;
  display:grid!important;place-items:center!important;border:1px solid #dcdcde!important;border-radius:var(--gcr-element-radius,0)!important;
  background:#fff!important;color:#50575e!important;font:400 25px/1 Arial,sans-serif!important;cursor:pointer!important;box-shadow:none!important;
}
.gcr-shopper-compare-modal__footer{display:flex;justify-content:flex-end;padding:14px 20px;border-top:1px solid #e7e7e7;background:#fafafa}
.gcr-shopper-compare-modal .gcr-shopper-compare-modal__footer .gcr-shopper-compare-modal__back{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  min-height:40px!important;
  height:auto!important;
  margin:0!important;
  padding:10px 14px!important;
  box-sizing:border-box!important;
  border:0!important;
  border-radius:var(--gcr-button-radius,0)!important;
  background:var(--gcr-primary-color,#CA0000)!important;
  color:var(--gcr-primary-text-color,#fff)!important;
  font-family:var(--gcr-button-font-family,inherit)!important;
  font-size:13px!important;
  font-style:normal!important;
  font-weight:800!important;
  line-height:1.15!important;
  letter-spacing:normal!important;
  text-transform:var(--gcr-button-text-transform,uppercase)!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  box-shadow:none!important;
  cursor:pointer!important;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease!important;
}

/* Read the optional vertical tab from top to bottom along the page edge. */
.gcr-shopper-tools--side-tab .gcr-shopper-launcher{
  writing-mode:vertical-rl!important;
  transform:translateY(-50%)!important;
}
.gcr-shopper-tools--side-tab .gcr-shopper-launcher:hover,
.gcr-shopper-tools--side-tab .gcr-shopper-launcher:focus{
  transform:translateY(-50%) translateX(-2px)!important;
}
@media(max-width:782px){
  .gcr-shopper-compare-modal__header,.gcr-shopper-compare-modal__footer{padding-left:14px;padding-right:14px}
  .gcr-shopper-tools--side-tab .gcr-shopper-launcher:hover,.gcr-shopper-tools--side-tab .gcr-shopper-launcher:focus{transform:none!important}
}


/* 2.0.107 — Shopper Tools polish after reverting the native-filter experiment. */
.gcr-shopper-card__remove{
  appearance:none!important;
  -webkit-appearance:none!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
  color:#777!important;
}
.gcr-shopper-card__remove:hover,
.gcr-shopper-card__remove:focus{
  background:transparent!important;
  box-shadow:none!important;
  color:#d63638!important;
  outline:none!important;
}
.gcr-shopper-compare-modal .gcr-shopper-compare-modal__footer .gcr-shopper-compare-modal__back:hover,
.gcr-shopper-compare-modal .gcr-shopper-compare-modal__footer .gcr-shopper-compare-modal__back:focus{
  background:var(--gcr-primary-hover-color,#000)!important;
  color:var(--gcr-primary-hover-text-color,var(--gcr-primary-text-color,#fff))!important;
  box-shadow:none!important;
  outline:none!important;
}
.gcr-shopper-compare-head__content{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:9px;
  min-width:0;
}
.gcr-shopper-compare-quote{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  padding:8px 11px!important;
  border:0!important;
  border-radius:var(--gcr-button-radius,0)!important;
  background:var(--gcr-primary-color,#CA0000)!important;
  color:var(--gcr-primary-text-color,#fff)!important;
  font-family:var(--gcr-button-font-family,inherit)!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.2!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
.gcr-shopper-compare-quote:hover,
.gcr-shopper-compare-quote:focus{
  background:var(--gcr-primary-hover-color,#000)!important;
  color:var(--gcr-primary-hover-text-color,var(--gcr-primary-text-color,#fff))!important;
  text-decoration:none!important;
}


/* 2.0.109 — streamlined Recent actions + clean close control. */
.gcr-shopper-card__actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:5px}
.gcr-shopper-card__save,.gcr-shopper-card__compare{min-height:30px!important;padding:4px 10px!important;border:1px solid var(--gcr-primary-color,#CA0000)!important;border-radius:var(--gcr-button-radius,0)!important;background:transparent!important;color:var(--gcr-primary-color,#CA0000)!important;font-family:var(--gcr-button-font-family,inherit)!important;font-size:12px!important;font-weight:700!important;line-height:1.2!important;cursor:pointer!important;box-shadow:none!important;transition:background-color .18s ease,border-color .18s ease,color .18s ease}
.gcr-shopper-card__save:hover,.gcr-shopper-card__save:focus,.gcr-shopper-card__compare:hover,.gcr-shopper-card__compare:focus{background:var(--gcr-primary-hover-color,#000)!important;color:var(--gcr-primary-hover-text-color,var(--gcr-primary-text-color,#fff))!important;border-color:var(--gcr-primary-hover-color,#000)!important}
.gcr-shopper-card__save.is-active,.gcr-shopper-card__compare.is-active{background:var(--gcr-primary-color,#CA0000)!important;color:var(--gcr-primary-text-color,#fff)!important;border-color:var(--gcr-primary-color,#CA0000)!important}
.gcr-shopper-close,.gcr-shopper-close:hover,.gcr-shopper-close:focus{width:32px!important;height:32px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:none!important;display:grid!important;place-items:center!important;font-size:25px!important;line-height:1!important;color:#646970!important;cursor:pointer!important}
.gcr-shopper-close:hover,.gcr-shopper-close:focus{color:var(--gcr-primary-color,#CA0000)!important}

.gcr-shopper-compare-image{display:block;margin:0 0 10px;text-decoration:none}.gcr-shopper-compare-image img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--gcr-element-radius,0)}

/* 2.0.121 — keep Recent Save/Compare controls visually identical. */
.gcr-shopper-card__save,.gcr-shopper-card__compare{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:30px!important;min-height:30px!important;max-height:30px!important;box-sizing:border-box!important;margin:0!important;}


/* 2.0.122 — Mobile Shopper Tools stability and compare discoverability. */
.gcr-shopper-compare-swipe-hint{display:none}
@media(max-width:782px){
  /* Mobile is always a floating launcher from first paint; never show side-tab geometry. */
  .gcr-shopper-tools-root.gcr-shopper-tools--side-tab .gcr-shopper-launcher,
  .gcr-shopper-tools-root.gcr-shopper-tools--floating .gcr-shopper-launcher{
    right:12px!important;
    top:auto!important;
    bottom:var(--gcr-shopper-floating-bottom,22px)!important;
    width:auto!important;
    min-width:auto!important;
    max-width:none!important;
    height:44px!important;
    min-height:44px!important;
    padding:0 17px!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
    transform:none!important;
    box-shadow:0 8px 28px rgba(0,0,0,.2)!important;
  }

  /* Keep the drawer height stable between Recent / Saved / Compare tabs. */
  .gcr-shopper-tools-root .gcr-shopper-panel{
    right:14px!important;
    top:auto!important;
    bottom:calc(var(--gcr-shopper-floating-bottom,22px) + 54px)!important;
    width:calc(100vw - 28px)!important;
    height:min(520px,calc(100dvh - var(--gcr-shopper-floating-bottom,22px) - 92px))!important;
    min-height:min(420px,calc(100dvh - var(--gcr-shopper-floating-bottom,22px) - 92px))!important;
    max-height:min(520px,calc(100dvh - var(--gcr-shopper-floating-bottom,22px) - 92px))!important;
    transform:none!important;
  }
  .gcr-shopper-panel__content{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }

}


/* 2.0.138 — Stable My Vehicles drawer height + Compare from Saved. */
@media(min-width:783px){
  .gcr-shopper-tools-root .gcr-shopper-panel{
    height:min(560px,calc(100dvh - 110px))!important;
    min-height:min(560px,calc(100dvh - 110px))!important;
    max-height:min(560px,calc(100dvh - 110px))!important;
  }
  .gcr-shopper-tools-root .gcr-shopper-panel__content{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
  }
}


/* 2.0.139 — uniform Compare vehicle image frames. */
.gcr-shopper-compare-image{
  display:block!important;
  width:100%!important;
  height:180px!important;
  margin:0 0 12px!important;
  overflow:hidden!important;
  border-radius:var(--gcr-element-radius,0)!important;
  background:#f4f5f6!important;
}
.gcr-shopper-compare-image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:0!important;
}
@media(max-width:782px){
  .gcr-shopper-compare-image{height:160px!important;}
}


/* 2.0.142 — four explicit My Vehicles placement options. */
.gcr-shopper-tools-root.gcr-shopper-tools--bottom-right .gcr-shopper-launcher{
  right:18px!important;left:auto!important;top:auto!important;bottom:var(--gcr-shopper-floating-bottom,22px)!important;transform:none!important;writing-mode:horizontal-tb!important;text-orientation:mixed!important;
}
.gcr-shopper-tools-root.gcr-shopper-tools--bottom-left .gcr-shopper-launcher{
  left:18px!important;right:auto!important;top:auto!important;bottom:var(--gcr-shopper-floating-bottom,22px)!important;transform:none!important;writing-mode:horizontal-tb!important;text-orientation:mixed!important;
}
.gcr-shopper-tools-root.gcr-shopper-tools--bottom-right .gcr-shopper-panel{
  right:18px!important;left:auto!important;top:auto!important;bottom:calc(var(--gcr-shopper-floating-bottom,22px) + 56px)!important;transform:none!important;
}
.gcr-shopper-tools-root.gcr-shopper-tools--bottom-left .gcr-shopper-panel{
  left:18px!important;right:auto!important;top:auto!important;bottom:calc(var(--gcr-shopper-floating-bottom,22px) + 56px)!important;transform:none!important;
}
.gcr-shopper-tools-root.gcr-shopper-tools--right-side .gcr-shopper-launcher,
.gcr-shopper-tools-root.gcr-shopper-tools--left-side .gcr-shopper-launcher{
  top:50%!important;bottom:auto!important;width:46px!important;min-width:46px!important;max-width:46px!important;height:auto!important;min-height:126px!important;padding:14px 0!important;transform:translateY(-50%)!important;writing-mode:vertical-rl!important;text-orientation:mixed!important;
}
.gcr-shopper-tools-root.gcr-shopper-tools--right-side .gcr-shopper-launcher{
  right:0!important;left:auto!important;border-radius:var(--gcr-button-radius,0) 0 0 var(--gcr-button-radius,0)!important;
}
.gcr-shopper-tools-root.gcr-shopper-tools--left-side .gcr-shopper-launcher{
  left:0!important;right:auto!important;writing-mode:vertical-lr!important;border-radius:0 var(--gcr-button-radius,0) var(--gcr-button-radius,0) 0!important;
}
.gcr-shopper-tools-root.gcr-shopper-tools--right-side .gcr-shopper-launcher:hover,
.gcr-shopper-tools-root.gcr-shopper-tools--right-side .gcr-shopper-launcher:focus{transform:translateY(-50%) translateX(-2px)!important;}
.gcr-shopper-tools-root.gcr-shopper-tools--left-side .gcr-shopper-launcher:hover,
.gcr-shopper-tools-root.gcr-shopper-tools--left-side .gcr-shopper-launcher:focus{transform:translateY(-50%) translateX(2px)!important;}
.gcr-shopper-tools-root.gcr-shopper-tools--right-side .gcr-shopper-panel{right:18px!important;left:auto!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;}
.gcr-shopper-tools-root.gcr-shopper-tools--left-side .gcr-shopper-panel{left:18px!important;right:auto!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;}

@media(max-width:782px){
  /* Mobile inherits only the chosen side: side tabs become bottom-left / bottom-right. */
  .gcr-shopper-tools-root.gcr-shopper-tools--right-side .gcr-shopper-launcher,
  .gcr-shopper-tools-root.gcr-shopper-tools--bottom-right .gcr-shopper-launcher{
    right:12px!important;left:auto!important;top:auto!important;bottom:var(--gcr-shopper-floating-bottom,22px)!important;transform:none!important;width:auto!important;min-width:auto!important;max-width:none!important;height:44px!important;min-height:44px!important;padding:0 17px!important;writing-mode:horizontal-tb!important;text-orientation:mixed!important;border-radius:var(--gcr-button-radius,0)!important;
  }
  .gcr-shopper-tools-root.gcr-shopper-tools--left-side .gcr-shopper-launcher,
  .gcr-shopper-tools-root.gcr-shopper-tools--bottom-left .gcr-shopper-launcher{
    left:12px!important;right:auto!important;top:auto!important;bottom:var(--gcr-shopper-floating-bottom,22px)!important;transform:none!important;width:auto!important;min-width:auto!important;max-width:none!important;height:44px!important;min-height:44px!important;padding:0 17px!important;writing-mode:horizontal-tb!important;text-orientation:mixed!important;border-radius:var(--gcr-button-radius,0)!important;
  }
  .gcr-shopper-tools-root.gcr-shopper-tools--right-side .gcr-shopper-panel,
  .gcr-shopper-tools-root.gcr-shopper-tools--bottom-right .gcr-shopper-panel{
    right:14px!important;left:auto!important;top:auto!important;bottom:calc(var(--gcr-shopper-floating-bottom,22px) + 54px)!important;transform:none!important;
  }
  .gcr-shopper-tools-root.gcr-shopper-tools--left-side .gcr-shopper-panel,
  .gcr-shopper-tools-root.gcr-shopper-tools--bottom-left .gcr-shopper-panel{
    left:14px!important;right:auto!important;top:auto!important;bottom:calc(var(--gcr-shopper-floating-bottom,22px) + 54px)!important;transform:none!important;
  }
}


/* 2.0.262 — Consolidated shopper overflow + compare workspace rules. */
.gcr-shopper-panel__content.is-compare{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  overflow:hidden!important;
}
.gcr-shopper-panel__content.is-compare .gcr-shopper-compare-workspace{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  min-height:0;
}
.gcr-shopper-panel__content.is-compare .gcr-shopper-compare-heading{
  flex:0 0 auto;
  margin-bottom:8px;
}
.gcr-shopper-compare-list{
  position:relative;
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
.gcr-shopper-compare-list::after{
  content:"";
  position:sticky;
  left:0;
  bottom:0;
  display:block;
  width:100%;
  height:28px;
  margin-top:-28px;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(to bottom,rgba(255,255,255,0),rgba(255,255,255,.98));
  transition:opacity .16s ease;
}
.gcr-shopper-compare-list.has-more::after{opacity:1}
.gcr-shopper-compare-sticky{
  flex:0 0 auto;
  padding-top:12px;
  border-top:1px solid #ececec;
  background:#fff;
  box-shadow:0 -10px 18px rgba(255,255,255,.96);
}
.gcr-shopper-compare-sticky .gcr-shopper-compare-action,
.gcr-shopper-compare-sticky .gcr-shopper-compare-hint{margin:0}

/* Recent / Saved overflow cue. */
.gcr-shopper-panel__content.is-vehicle-list{position:relative}
.gcr-shopper-panel__content.is-vehicle-list::after{
  content:"";
  position:sticky;
  left:0;
  bottom:-14px;
  z-index:4;
  display:block;
  width:calc(100% + 28px);
  height:34px;
  margin:-34px -14px -14px;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(to bottom,rgba(255,255,255,0),rgba(255,255,255,.98));
  transition:opacity .16s ease;
}
.gcr-shopper-panel__content.is-vehicle-list.has-more-vehicles::after{opacity:1}

/* Compare modal: one vertical scroller (body), one unconstrained horizontal scroller (table). */
.gcr-shopper-compare-modal{
  height:min(760px,calc(100dvh - 72px));
  max-height:calc(100dvh - 72px);
}
.gcr-shopper-compare-modal__header,
.gcr-shopper-compare-modal__footer{flex:0 0 auto}
.gcr-shopper-compare-modal__body{
  display:block;
  flex:1 1 auto;
  min-height:0;
  padding:18px 20px;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior-y:contain;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-y;
}
.gcr-shopper-compare-scroll-note{
  display:none;
  justify-content:flex-end;
  align-items:center;
  min-height:24px;
  margin:0 0 8px;
  color:#646970;
  font-size:12px;
  font-weight:700;
  line-height:1.2;
}
.gcr-shopper-compare-scroll-note.is-visible{display:flex}
.gcr-shopper-compare-scroll-note b{
  margin-left:5px;
  color:var(--gcr-primary-color,#CA0000);
  font-size:18px;
  line-height:1;
}
.gcr-shopper-compare-scroll-note__mobile{display:none}
.gcr-shopper-compare-scroll-shell{
  position:relative;
  width:100%;
  min-height:0;
}
.gcr-shopper-compare-scroll-shell::after{
  content:"";
  position:absolute;
  z-index:8;
  top:0;
  right:0;
  bottom:0;
  width:46px;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(to right,rgba(255,255,255,0),rgba(255,255,255,.94));
  transition:opacity .16s ease;
}
.gcr-shopper-compare-scroll-shell.has-more-x::after{opacity:1}
.gcr-shopper-compare-scroll-shell .gcr-shopper-compare-table{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  overflow-x:auto;
  /* Keep the horizontal scroller unconstrained vertically so wheel/trackpad Y bubbles to modal body. */
  overflow-y:clip;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  touch-action:pan-x pan-y;
}
.gcr-shopper-compare-modal .gcr-shopper-compare-table table{
  width:max-content;
  min-width:100%;
  table-layout:fixed;
}
.gcr-shopper-compare-modal .gcr-shopper-compare-table thead th:not(:first-child),
.gcr-shopper-compare-modal .gcr-shopper-compare-table tbody td{
  width:270px;
  min-width:270px;
  max-width:270px;
}
.gcr-shopper-compare-modal .gcr-shopper-compare-table th:first-child{
  width:105px;
  min-width:105px;
  max-width:105px;
  position:sticky;
  left:0;
  z-index:6;
  background:#fff;
}
.gcr-shopper-compare-modal .gcr-shopper-compare-table thead th{
  position:sticky;
  top:0;
  z-index:5;
  background:#f7faff;
}
.gcr-shopper-compare-modal .gcr-shopper-compare-table thead th:first-child{z-index:7;background:#f7faff}
.gcr-shopper-compare-head__content{width:100%}
.gcr-shopper-compare-head__content > a:not(.gcr-shopper-compare-image):not(.gcr-shopper-compare-quote){
  display:-webkit-box;
  min-height:44px;
  line-height:1.35;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.gcr-shopper-compare-quote{margin-top:auto!important}

@media(max-width:782px){
  .gcr-shopper-compare-modal{
    width:calc(100vw - 20px);
    height:calc(100dvh - 28px);
    max-height:calc(100dvh - 28px);
  }
  .gcr-shopper-compare-modal__body{padding:10px 14px 14px}
  .gcr-shopper-compare-scroll-note__desktop{display:none}
  .gcr-shopper-compare-scroll-note__mobile{display:inline-flex;align-items:center}
  .gcr-shopper-compare-modal .gcr-shopper-compare-table thead th:not(:first-child),
  .gcr-shopper-compare-modal .gcr-shopper-compare-table tbody td{
    width:210px;
    min-width:210px;
    max-width:210px;
  }
  .gcr-shopper-compare-modal .gcr-shopper-compare-table th:first-child{
    width:90px;
    min-width:90px;
    max-width:90px;
  }
}


/* 2.0.264 — keep side-mounted My Vehicles out of full gallery controls. */
body.gcr-gallery-lightbox-open .gcr-shopper-tools-root.gcr-shopper-tools--right-side .gcr-shopper-launcher,
body.gcr-gallery-lightbox-open .gcr-shopper-tools-root.gcr-shopper-tools--left-side .gcr-shopper-launcher{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* 2.0.405 — My Vehicles no-photo media uses the inventory placeholder treatment. */
.gcr-shopper-card__media{
  display:block;
  width:76px;
  height:62px;
  overflow:hidden;
  border-radius:var(--gcr-element-radius,0);
  text-decoration:none!important;
}
.gcr-shopper-card__media > img:not(.gcr-shopper-placeholder__logo){
  display:block;
  width:76px;
  height:62px;
  object-fit:cover;
}
.gcr-shopper-placeholder{
  box-sizing:border-box;
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  overflow:hidden;
  background:#f3f4f6!important;
  color:#6b7280!important;
  text-align:center;
  text-decoration:none!important;
}
.gcr-shopper-placeholder:hover,
.gcr-shopper-placeholder:focus{
  background:#eef0f3!important;
  color:var(--gcr-primary-color,#CA0000)!important;
}
.gcr-shopper-placeholder--card{
  width:76px!important;
  height:62px!important;
  min-width:76px!important;
  padding:6px!important;
}
.gcr-shopper-placeholder__logo{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:64px!important;
  max-height:30px!important;
  object-fit:contain!important;
  border-radius:0!important;
}
.gcr-shopper-placeholder__icon{
  font-size:20px;
  line-height:1;
}
.gcr-shopper-placeholder__text{
  display:block;
  color:inherit!important;
  font-size:7px!important;
  font-weight:900!important;
  line-height:1.05!important;
  letter-spacing:.025em;
  text-transform:uppercase;
}
.gcr-shopper-placeholder--compare{
  padding:18px 12px!important;
}
.gcr-shopper-placeholder--compare .gcr-shopper-placeholder__logo{
  max-width:min(72%,180px)!important;
  max-height:70px!important;
}
.gcr-shopper-placeholder--compare .gcr-shopper-placeholder__text{
  font-size:12px!important;
  line-height:1.2!important;
}


/* 2.0.549 — Shopper Tools use the canonical frontend design system end-to-end.
 * Buttons: button color/hover/text/radius. Containers: container radius.
 * Media and inner controls: element radius. Semantic close/remove controls stay neutral/danger. */


/* 2.0.550 — My Vehicles uses flat underline navigation for Recent / Saved / Compare.
 * Theme button backgrounds, rounded corners, shadows and hover fills are explicitly neutralized
 * so these controls read as tabs rather than CTAs. */

/* 2.0.592 — My Vehicles launcher is a compact GCR-owned utility control.
 * Dealer brand color/hover/radius remain dynamic; physical button typography and sizing do not inherit theme button rules. */
.gcr-shopper-tools-root .gcr-shopper-launcher{
  -webkit-appearance:none!important;
  appearance:none!important;
  box-sizing:border-box!important;
  min-height:38px!important;
  height:38px!important;
  padding:0 13px!important;
  border-width:1px!important;
  border-style:solid!important;
  font-family:var(--gcr-button-font-family,Arial,sans-serif)!important;
  font-size:12px!important;
  font-style:normal!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  text-transform:var(--gcr-button-text-transform,uppercase)!important;
  text-decoration:none!important;
}
.gcr-shopper-tools-root .gcr-shopper-launcher > span{
  font:inherit!important;
  letter-spacing:inherit!important;
  text-transform:inherit!important;
}
.gcr-shopper-tools-root.gcr-shopper-tools--right-side .gcr-shopper-launcher,
.gcr-shopper-tools-root.gcr-shopper-tools--left-side .gcr-shopper-launcher{
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:auto!important;
  min-height:112px!important;
  padding:12px 0!important;
  font-size:12px!important;
  font-weight:700!important;
}
@media(max-width:782px){
  .gcr-shopper-tools-root.gcr-shopper-tools--right-side .gcr-shopper-launcher,
  .gcr-shopper-tools-root.gcr-shopper-tools--left-side .gcr-shopper-launcher,
  .gcr-shopper-tools-root.gcr-shopper-tools--bottom-right .gcr-shopper-launcher,
  .gcr-shopper-tools-root.gcr-shopper-tools--bottom-left .gcr-shopper-launcher,
  .gcr-shopper-tools-root.gcr-shopper-tools--side-tab .gcr-shopper-launcher,
  .gcr-shopper-tools-root.gcr-shopper-tools--floating .gcr-shopper-launcher{
    width:auto!important;
    min-width:auto!important;
    max-width:none!important;
    height:38px!important;
    min-height:38px!important;
    padding:0 13px!important;
    font-size:12px!important;
    font-weight:700!important;
    line-height:1!important;
  }
}

/* 2.0.593 — Desktop My Vehicles remains a prominent shopper utility while mobile stays compact. */
@media(min-width:783px){
  .gcr-shopper-tools-root.gcr-shopper-tools--bottom-right .gcr-shopper-launcher,
  .gcr-shopper-tools-root.gcr-shopper-tools--bottom-left .gcr-shopper-launcher,
  .gcr-shopper-tools-root.gcr-shopper-tools--floating .gcr-shopper-launcher{
    min-height:44px!important;
    height:44px!important;
    padding:0 17px!important;
    font-size:13px!important;
    font-weight:800!important;
    line-height:1!important;
  }
  .gcr-shopper-tools-root.gcr-shopper-tools--right-side .gcr-shopper-launcher,
  .gcr-shopper-tools-root.gcr-shopper-tools--left-side .gcr-shopper-launcher,
  .gcr-shopper-tools-root.gcr-shopper-tools--side-tab .gcr-shopper-launcher{
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    min-height:124px!important;
    padding:14px 0!important;
    font-size:13px!important;
    font-weight:800!important;
  }
}



/* 2.0.617 — Compare Vehicles primary action is fully GCR-owned and follows the dealer text-transform token. */
.gcr-shopper-tools-root .gcr-shopper-compare-action,
.gcr-shopper-compare-sticky .gcr-shopper-compare-action {
  -webkit-appearance:none!important;
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  min-height:42px!important;
  height:auto!important;
  margin:0!important;
  padding:10px 14px!important;
  box-sizing:border-box!important;
  border:1px solid var(--gcr-primary-color,#CA0000)!important;
  border-radius:var(--gcr-button-radius,0)!important;
  background:var(--gcr-primary-color,#CA0000)!important;
  color:var(--gcr-primary-text-color,#fff)!important;
  box-shadow:none!important;
  font-family:var(--gcr-button-font-family,inherit)!important;
  font-size:13px!important;
  font-style:normal!important;
  font-weight:800!important;
  line-height:1.15!important;
  letter-spacing:normal!important;
  text-align:center!important;
  text-decoration:none!important;
  text-transform:var(--gcr-button-text-transform,uppercase)!important;
  white-space:normal!important;
  cursor:pointer!important;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease!important;
}
.gcr-shopper-tools-root .gcr-shopper-compare-action:hover,
.gcr-shopper-tools-root .gcr-shopper-compare-action:focus,
.gcr-shopper-compare-sticky .gcr-shopper-compare-action:hover,
.gcr-shopper-compare-sticky .gcr-shopper-compare-action:focus {
  border-color:var(--gcr-primary-hover-color,#000)!important;
  background:var(--gcr-primary-hover-color,#000)!important;
  color:var(--gcr-primary-hover-text-color,var(--gcr-primary-text-color,#fff))!important;
  box-shadow:none!important;
  outline:none!important;
}

/* Text-bearing Shopper Tools actions consume the dealer transform. Icon-only close/remove controls stay neutral. */
.gcr-shopper-tools-root .gcr-shopper-launcher,
.gcr-shopper-tools-root .gcr-shopper-card__save,
.gcr-shopper-tools-root .gcr-shopper-card__compare,
.gcr-shopper-tools-root .gcr-shopper-compare-back,
.gcr-shopper-compare-modal .gcr-shopper-compare-modal__back,
.gcr-shopper-compare-modal .gcr-shopper-compare-quote {
  text-transform:var(--gcr-button-text-transform,uppercase)!important;
}
