.compare-tray {
  align-items: center;
  background: #f5f8fc;
  border: 1px solid #e3e9f1;
  border-radius: 14px;
  bottom: 0.25rem;
  box-shadow: 0 12px 30px rgba(18, 35, 63, .16);
  color: #12233f;
  display: flex;
  gap: 1rem;
  left: 50%;
  max-width: min(760px, calc(100vw - 2rem));
  padding: .8rem 1rem;
  position: fixed;
  transform: translate(-50%, 160%);
  transition: transform .3s cubic-bezier(.2, .9, .3, 1);
  width: 100%;
  z-index: 1000;
}

.compare-tray.is-visible { transform: translate(-50%, 0); }

.compare-tray.is-collapsed {
  transform: translate(-50%, calc(100% - 2rem));
}

.compare-tray__handle {
  align-items: center;
  background: #f5f8fc;
  font-size: 0.75rem;
  border: 0;
  border-radius: 14px;
  color: #12233f;
  cursor: pointer;
  display: none;
  gap: .45rem;
  height: 2rem;
  justify-content: center;
  left: 0;
  padding: 0 .9rem;
  position: absolute;
  top: 0;
  width: 100%;
}

.compare-tray__handle strong { font-weight: 700; }
.compare-tray__handle:focus-visible { outline: 2px solid #1d65d8; outline-offset: -3px; }
.compare-tray.is-collapsed .compare-tray__handle { display: flex; }
.compare-tray.is-collapsed > :not(.compare-tray__handle) { pointer-events: none; visibility: hidden; }

.compare-tray__slots { display: flex; flex: 1; gap: .5rem; min-width: 0; }

.compare-tray__slot {
  align-items: center;
  background: #fff;
  border-radius: 8px;
  display: flex;
  flex: 1 1 0;
  gap: .45rem;
  min-width: 0;
  padding: .35rem;
  position: relative;
}

.compare-tray__slot--empty { border: 1px dashed #c7d5e5; min-height: 48px; }
.compare-tray__slot img { height: 40px; object-fit: contain; width: 30px; }
.compare-tray__slot-name { color: #12233f; font-size: .72rem; font-weight: 700; line-height: 1.2; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.compare-tray__remove {
  align-items: center;
  background: #12233f;
  border: 2px solid #fff;
  border-radius: 50%;
  color: #fff;
  display: flex;
  font-size: .8rem;
  height: 20px;
  justify-content: center;
  padding: 0;
  position: absolute;
  right: -6px;
  top: -6px;
  width: 20px;
}

.compare-tray__actions { align-items: center; display: flex; flex-shrink: 0; gap: .65rem; }
.compare-tray__count { color: #60708a; font-size: .78rem; font-weight: 700; white-space: nowrap; }
.compare-tray__count.is-limit { color: #b42318; }
.compare-tray__clear { background: transparent; border: 0; color: #40516b; font-size: .78rem; font-weight: 700; padding: .35rem; }
.compare-tray__clear:hover { color: #0559b7; }
.compare-tray__go { background: #12233f; border: 0; border-radius: 7px; color: #fff; font-size: .8rem; font-weight: 800; padding: .55rem .8rem; white-space: nowrap; }
.compare-tray__go:hover:not(:disabled) { background: #0559b7; }
.compare-tray__go:disabled { cursor: not-allowed; opacity: .45; }
.paddle-compare-toggle.is-compared,
.paddle-best .best-paddle-buttons .paddle-compare-toggle.is-compared { background: #0559b7; color: #fff; }

@media (max-width: 767.98px) {
  .compare-tray {
    gap: .65rem;
    padding: .7rem;
  }
  .compare-tray__slot { justify-content: center; min-width: 0; }
  .compare-tray__slot-name, .compare-tray__count { display: none; }
  .compare-tray__slot img { height: 32px; width: 24px; }
  .compare-tray__clear { display: block; font-size: 0; padding: .2rem; }
  .compare-tray__clear::before { content: '\00d7'; font-size: 1.35rem; line-height: 1; }
  .compare-tray__actions { gap: .4rem; }
  .compare-tray__go { padding: .5rem .65rem; }
}
