MediaWiki:Common.css: Difference between revisions

From PsychoactiveWiki
Jump to navigation Jump to search
(aesthetic)
 
No edit summary
Line 1: Line 1:
/* CSS placed here will be applied to all skins */
/* Psychedelic Background Base */
body {
  background: radial-gradient(circle at center, #ff00cc, #3333ff);
  animation: hueShift 60s infinite linear;
  overflow-x: hidden;
  background-attachment: fixed;
  background-size: 400% 400%;
  transition: background 1s ease-in-out;
}


/* Dynamic swirl overlay via pseudo element */
body::before {
  content: "";
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: url('data:image/svg+xml;utf8,<svg width="100%" height="100%" xmlns="http://www.w3.org/2000/svg"><filter id="swirl"><feTurbulence type="turbulence" baseFrequency="0.01 0.02" numOctaves="2" result="turbulence"/><feDisplacementMap in2="turbulence" in="SourceGraphic" scale="30" xChannelSelector="R" yChannelSelector="G"/></filter><rect width="100%" height="100%" filter="url(%23swirl)" fill="transparent"/></svg>') no-repeat center center;
  pointer-events: none;
  z-index: -1;
  mix-blend-mode: lighten;
  opacity: 0.15;
}


/* Full-page psychedelic background */
/* Keyframe for shifting hue */
body {
@keyframes hueShift {
    margin: 0;
  0% {
     padding: 0;
     filter: hue-rotate(0deg);
    font-family: Georgia, serif;
  }
    font-size: 1em;
  100% {
     background: linear-gradient(270deg, #ff0055, #00ffcc, #ffff00, #ff00ff);
     filter: hue-rotate(360deg);
    background-size: 800% 800%;
  }
    animation: psychedelicBG 20s ease infinite;
}
}


/* Smooth gradient animation */
/* Optional star-like shimmer dots */
@keyframes psychedelicBG {
body::after {
    0%{background-position:0% 50%;}
  content: "";
    50%{background-position:100% 50%;}
  position: fixed;
    100%{background-position:0% 50%;}
  width: 100%;
  height: 100%;
  background: repeating-radial-gradient(circle, rgba(255,255,255,0.05) 0, rgba(255,255,255,0.05) 1px, transparent 2px, transparent 100px);
  animation: shimmer 80s linear infinite;
  pointer-events: none;
  z-index: -1;
}
}


/* Optional content container to keep text readable */
/* Star shimmer motion */
#content {
@keyframes shimmer {
    position: relative;
  0% {
     background: rgba(255, 255, 255, 0.85); /* semi-transparent */
     background-position: 0 0;
    padding: 20px;
  }
    margin: 40px auto;
  100% {
    max-width: 800px;
     background-position: 1000px 1000px;
     border-radius: 8px;
  }
    z-index: 1;
}
}

Revision as of 06:12, 26 November 2025

/* Psychedelic Background Base */
body {
  background: radial-gradient(circle at center, #ff00cc, #3333ff);
  animation: hueShift 60s infinite linear;
  overflow-x: hidden;
  background-attachment: fixed;
  background-size: 400% 400%;
  transition: background 1s ease-in-out;
}

/* Dynamic swirl overlay via pseudo element */
body::before {
  content: "";
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: url('data:image/svg+xml;utf8,<svg width="100%" height="100%" xmlns="http://www.w3.org/2000/svg"><filter id="swirl"><feTurbulence type="turbulence" baseFrequency="0.01 0.02" numOctaves="2" result="turbulence"/><feDisplacementMap in2="turbulence" in="SourceGraphic" scale="30" xChannelSelector="R" yChannelSelector="G"/></filter><rect width="100%" height="100%" filter="url(%23swirl)" fill="transparent"/></svg>') no-repeat center center;
  pointer-events: none;
  z-index: -1;
  mix-blend-mode: lighten;
  opacity: 0.15;
}

/* Keyframe for shifting hue */
@keyframes hueShift {
  0% {
    filter: hue-rotate(0deg);
  }
  100% {
    filter: hue-rotate(360deg);
  }
}

/* Optional star-like shimmer dots */
body::after {
  content: "";
  position: fixed;
  width: 100%;
  height: 100%;
  background: repeating-radial-gradient(circle, rgba(255,255,255,0.05) 0, rgba(255,255,255,0.05) 1px, transparent 2px, transparent 100px);
  animation: shimmer 80s linear infinite;
  pointer-events: none;
  z-index: -1;
}

/* Star shimmer motion */
@keyframes shimmer {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 1000px 1000px;
  }
}