/* Section minimap - from apps/web-snippets/section-minimap, tokens mapped to site.css.
   Content column is 1080px; rail shows once there is a ~90px gutter either side. */
.minimap{display:none}
@media (min-width:1260px) and (hover:hover){
  .minimap{display:block;position:fixed;left:22px;top:50%;transform:translateY(-50%);z-index:50}
  .minimap[hidden]{display:none}
}
.minimap-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem}
.minimap-link{
  position:relative;display:block;width:1.75rem;height:.9rem;padding:0;border:0;background:none;
  cursor:pointer;color:var(--dim);border-radius:4px;
}
.minimap-bar{
  position:absolute;left:0;top:50%;height:2px;width:var(--w,1rem);transform:translateY(-50%);
  border-radius:1px;background:currentColor;opacity:.45;
  transition:opacity .22s var(--e),width .22s var(--e),background-color .22s var(--e);
}
.minimap-link:hover .minimap-bar{opacity:.9}
.minimap-link[aria-current='true'] .minimap-bar{background:var(--ion);opacity:1;height:3px}
.minimap-link:focus-visible{outline:2px solid var(--ion);outline-offset:2px}
.minimap-link::after{
  content:attr(data-title);position:absolute;left:calc(100% + .75rem);top:50%;
  transform:translate(-.25rem,-50%);white-space:nowrap;
  font:500 12px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;
  padding:.4rem .65rem;border-radius:4px;background:var(--panel);color:var(--ink);
  border:1px solid var(--line);box-shadow:0 12px 32px -12px rgba(0,0,0,.6);
  opacity:0;pointer-events:none;transition:opacity .22s var(--e),transform .22s var(--e);
}
.minimap-link:hover::after,.minimap-link:focus-visible::after{opacity:1;transform:translate(0,-50%)}
@media (prefers-reduced-motion:reduce){.minimap-bar,.minimap-link::after{transition:none}}
