/* Panel pointer glow — archival theme */
.surface-a, .surface-c, .quote-tile {
  --mx: 50%;
  --my: 50%;
  position: relative;
  isolation: isolate;
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.surface-a::before, .surface-c::before, .quote-tile::before {
  content: "";
  position: absolute; inset: 0; border-radius: inherit;
  pointer-events: none; z-index: 0; opacity: 0;
  transition: opacity .25s ease;
  background: radial-gradient(420px circle at var(--mx) var(--my), color-mix(in srgb, var(--accent-gold) 16%, transparent), transparent 55%);
}
.surface-a > *, .surface-c > *, .quote-tile > * { position: relative; z-index: 1; }
.surface-a:hover, .surface-c:hover, .quote-tile:hover {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--accent-gold) 40%, var(--line));
  box-shadow: 0 16px 36px rgba(0,0,0,.35), 0 0 0 1px color-mix(in srgb, var(--accent-copper) 18%, transparent);
}
.surface-a:hover::before, .surface-c:hover::before, .quote-tile:hover::before { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
  .surface-a:hover, .surface-c:hover, .quote-tile:hover { transform: none; }
  .surface-a::before, .surface-c::before, .quote-tile::before { display: none; }
}
