body[data-theme="glitch"] {
  background: #000;
  overflow: hidden;
}

/* scanlines bem sutis */
body[data-theme="glitch"] .theme-fx::before {
  content: "";
  position: fixed; inset: 0;
  background: repeating-linear-gradient(0deg, rgba(255,255,255,.04) 0 1px, transparent 1px 4px);
  pointer-events: none;
  z-index: 1000;
  opacity: .5;
}

/* slices coloridos com shift horizontal */
body[data-theme="glitch"] .glitch-slice {
  position: fixed; left: 0; right: 0;
  pointer-events: none;
  z-index: 999;
  height: 0;
  display: none;
}
body[data-theme="glitch"].glitch-on .glitch-slice { display: block; }

/* card */
body[data-theme="glitch"] .profile-card {
  border: 1px solid rgba(255,255,255,.08);
  position: relative;
  transition: transform .06s ease, filter .06s ease;
}

body[data-theme="glitch"].card-glitch .profile-card {
  animation: glitch-shake .25s steps(5);
}
@keyframes glitch-shake {
  0%   { transform: translate(0, 0); filter: none; }
  20%  { transform: translate(-6px, 1px) skewX(-3deg); filter: hue-rotate(60deg); }
  40%  { transform: translate(5px, -2px) skewX(2deg); filter: hue-rotate(-40deg) saturate(2); }
  60%  { transform: translate(-3px, 2px); filter: hue-rotate(20deg); }
  80%  { transform: translate(2px, -1px); }
  100% { transform: translate(0, 0); filter: none; }
}

body[data-theme="glitch"] .profile-card h1 {
  position: relative;
  text-shadow:
    2px 0 rgba(255, 0, 170, .7),
    -2px 0 rgba(0, 240, 255, .7);
}
body[data-theme="glitch"].card-glitch .profile-card h1 {
  text-shadow:
    calc(4px + 6px * var(--beat, 0)) 0 #ff00aa,
    calc(-4px - 6px * var(--beat, 0)) 0 #00f0ff;
}

body[data-theme="glitch"].card-glitch .profile-card .banner,
body[data-theme="glitch"].card-glitch .profile-card .body img {
  filter: hue-rotate(80deg) saturate(2) contrast(1.3);
}

body[data-theme="glitch"] .badges-strip {
  transition: transform .1s ease;
}
body[data-theme="glitch"].card-glitch .badges-strip {
  transform: translateX(-6px);
}
