/* NEW VIBE — site cursor: pointer arrow + following label. Tone adapts to the surface underneath; palette per page via variables. */
@media (pointer: fine) {
  /* native pointer stays; only the label chip follows it */
  .nv-dc { display: none !important; position: fixed; top: 0; left: 0; z-index: 100000; pointer-events: none; opacity: 0; transition: opacity .2s; will-change: transform; }
  .nv-dc.is-on { opacity: 1; }
  .nv-dc.is-hidden, .nv-dc-label.is-hidden { opacity: 0 !important; }
  .nv-dc svg { display: block; width: 22px; height: 22px; filter: drop-shadow(0 1px 1.5px rgba(0,0,0,.25)); transition: transform .18s cubic-bezier(.34,1.56,.64,1), color .2s; }
  .nv-dc.is-down svg { transform: scale(.85); }
  .nv-dc-label { position: fixed; top: 0; left: 0; z-index: 99999; pointer-events: none; padding: 7px 12px; border-radius: 100px; font-family: Neuemontreal, Montreal, Arial, sans-serif; font-size: 13px; font-weight: 500; line-height: 1; letter-spacing: .01em; white-space: nowrap; opacity: 0; transform: translate3d(-100px,-100px,0) scale(.6); transition: opacity .18s, background-color .2s, color .2s; will-change: transform; }
  .nv-dc-label.is-on { opacity: 1; }
  /* surface themes — override the variables per project page */
  :root { --dc-light: #ff5400; --dc-light-chip: #ff5400; --dc-light-chip-text: #f8eee8;
          --dc-dark: #f8eee8;  --dc-dark-chip: #f8eee8;  --dc-dark-chip-text: #111;
          --dc-brand: #f8eee8; --dc-brand-chip: #f8eee8; --dc-brand-chip-text: #ff5400; }
  .nv-dc[data-tone="light"] svg { color: var(--dc-light); }  .nv-dc-label[data-tone="light"] { background: var(--dc-light-chip); color: var(--dc-light-chip-text); }
  .nv-dc[data-tone="dark"] svg { color: var(--dc-dark); }    .nv-dc-label[data-tone="dark"] { background: var(--dc-dark-chip); color: var(--dc-dark-chip-text); }
  .nv-dc[data-tone="brand"] svg { color: var(--dc-brand); }  .nv-dc-label[data-tone="brand"] { background: var(--dc-brand-chip); color: var(--dc-brand-chip-text); }
}
