/* Khelaghor88 — back-to-top button (injected by initScrollTop in main.js) */
.scroll-top{
  position:fixed;right:20px;bottom:20px;z-index:62; /* above sticky header (60), below drawer scrim (65) / sidebar (70) */
  display:flex;align-items:center;justify-content:center;
  width:48px;height:48px;margin:0;padding:0;border-radius:50%;
  background:#1A1A1D;color:#FFFFFF;border:2px solid #EE2B3B;
  box-shadow:0 4px 14px rgba(0,0,0,.45),0 0 0 1px rgba(0,0,0,.4);
  cursor:pointer;-webkit-appearance:none;appearance:none;
  opacity:0;visibility:hidden;transform:translateY(12px);
  transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s,background-color .15s,color .15s;
}
.scroll-top.is-visible{
  opacity:1;visibility:visible;transform:translateY(0);
  transition:opacity .2s ease,transform .2s ease,visibility 0s,background-color .15s,color .15s;
}
.scroll-top svg{display:block;width:22px;height:22px;pointer-events:none}
.scroll-top:hover,.scroll-top:focus-visible{background:#EE2B3B;color:#1A1A1D}
.scroll-top:focus{outline:none}
.scroll-top:focus-visible{outline:2px solid #FFFFFF;outline-offset:3px;border-radius:50%}
@media (max-width:767px){
  .scroll-top{right:16px;bottom:16px;width:44px;height:44px}
}
@media (prefers-reduced-motion:reduce){
  .scroll-top,.scroll-top.is-visible{transition:none}
}

/* Vendor logos: square 120x120 files - fit whole logo inside the tile frame */
.tile-vendors .tile-img{position:relative;aspect-ratio:3/2}
.tile-vendors .tile-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:.25rem}

/* Language switcher flag */
.lang-switch{gap:0;padding:.35rem .55rem}
.lang-switch .flag{display:block;width:24px;height:auto;border-radius:2px;box-shadow:0 0 0 1px rgba(255,255,255,.15)}
