Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Template:ESWording/styles.css: Difference between revisions

Template page
Content deleted Content added
// via Wikitext Extension for VSCode
// via Wikitext Extension for VSCode
 
(100 intermediate revisions by the same user not shown)
Line 1: Line 1:
@keyframes spinMask {
@keyframes spin {
to { transform: translate(-50%, -50%) rotate(360deg); }
from {
transform: translate(-50%, -50%) rotate(0deg);
}
to {
transform: translate(-50%, -50%) rotate(360deg);
}
}
}


Line 11: Line 6:
border: 1px solid var(--border-color-base);
border: 1px solid var(--border-color-base);
border-radius: var(--border-radius--large);
border-radius: var(--border-radius--large);
background-color: #0000001A;
padding: 1em;
padding: 1em;
overflow: hidden;
overflow: hidden;
position: relative;
position: relative;
display: block;
}
}


Line 29: Line 24:
background-repeat: no-repeat;
background-repeat: no-repeat;
background-size: cover;
background-size: cover;
/* will-change: transform; */
/* transform: translateZ(0); */
}
}


.es-mask-rotator {
.es-mask-rotator {
--spell-circle-after: url("https://548916280-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpaqFHtSBIvRvOg8Wfmx5%2Fuploads%2FWEViu7j32vfudpdSmvEG%2FSpell%20Circle.svg?alt=media&token=e1e66eeb-da0d-47fa-b71b-d823fbfe3cd7");

position: absolute;
position: absolute;
top: calc(100% - 2em);
top: calc(100% - 4em);
left: calc(100% - 2em);
left: calc(100% - 4em);
width: 300%;
width: 150%;
height: 300%;
height: 150%;
transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
opacity: 0.2;
opacity: 0.2;
display: block;
filter: brightness(0.4);

/* Use the SVG directly as background */
mask-image: var(--spell-circle-after);
background-image: url("https://548916280-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpaqFHtSBIvRvOg8Wfmx5%2Fuploads%2FWEViu7j32vfudpdSmvEG%2FSpell%20Circle.svg?alt=media&token=e1e66eeb-da0d-47fa-b71b-d823fbfe3cd7");
mask-size: contain;
background-size: contain;
mask-repeat: no-repeat;
background-repeat: no-repeat;
mask-position: center;
background-position: center;
animation-play-state: running;
background-color: transparent;

/* Force-recolor the SVG using filters */
filter: brightness(0) saturate(100%); /* Default to black */
pointer-events: none;
pointer-events: none;
z-index: 0;
z-index: 0;
transform-origin: center;

/* will-change: transform; */
animation: spinMask 300s linear infinite;
/* backface-visibility: hidden; */
animation: spin 300s linear infinite;
}
}


.es-wording-container {
.es-wording-container {
padding-left: 1em;
padding-right: 1em;
position: relative;
position: relative;
z-index: 1;
z-index: 1;
display: block;
filter: brightness(0.5);
}

.es-wording-container,
.es-effect-container * {
color: unset;
}
}


Line 69: Line 73:
display: block;
display: block;
font-size: 2em;
font-size: 2em;
filter: brightness(0.4);
user-select: none;
user-select: none;
margin-bottom: 0;
}

.es-intro a {
color: unset;
}
}


.es-wording {
.es-wording {
display: block;
margin-left: 1em;
margin-right: 1em;
font-family: "Quintessential", serif;
font-family: "Quintessential", serif;
font-weight: 400;
font-weight: 400;
Line 79: Line 90:
}
}


/* Light mode colors */
@media (prefers-color-scheme: dark) {
@media (prefers-color-scheme: light) {
.es-wording-container {
.es-life .es-mask-rotator {
filter: brightness(1);
filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(20deg) brightness(1);
}
}
.es-storm .es-mask-rotator {

filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(190deg) brightness(1);
.es-intro {
filter: brightness(1);
}
}
.es-necro .es-mask-rotator {
filter: brightness(0) saturate(100%); /* Already black */
}
.es-flame .es-mask-rotator {
filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(330deg) brightness(1.2);
}
.es-nature .es-mask-rotator {
filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(100deg) brightness(0.8);
}
.es-multi .es-mask-rotator {
filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(270deg) brightness(0.8);
}
.es-life {
color: #3d340b;
background-color: #e5a50a0d;
}
.es-storm {
color: #0d2139;
background-color: #1a5fb40d;
}
.es-necro {
color: #000000;
background-color: #0000000d;
}
.es-flame {
color: #380609;
background-color: #a51d2d0d;
}
.es-nature {
color: #0c341e;
background-color: #26a2690d;
}
.es-multi {
color: #24102b;
background-color: #6135830d;
}
}


/* Dark mode colors */
.es-mask-rotator {
@media (prefers-color-scheme: dark) {
filter: brightness(0.7);
.es-life .es-mask-rotator {
filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(40deg) invert(1);
}
.es-storm .es-mask-rotator {
filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(200deg) invert(1);
}
.es-necro .es-mask-rotator {
filter: brightness(0) saturate(100%) invert(1); /* Grey */
}
.es-flame .es-mask-rotator {
filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(320deg) invert(1);
}
.es-nature .es-mask-rotator {
filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(110deg) invert(1);
}
.es-multi .es-mask-rotator {
filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(280deg) invert(1);
}
.es-life {
color: #faf7d0;
background-color: #e5a50a0d;
}
.es-storm {
color: #e4effc;
background-color: #1a5fb40d;
}
.es-necro {
color: #a9a8aa;
background-color: #0000000d;
}
.es-flame {
color: #f5d4d1;
background-color: #a51d2d0d;
}
.es-nature {
color: #dbf4e0;
background-color: #26a2690d;
}
.es-multi {
color: #e4d2e4;
background-color: #6135830d;
}
}
}
}

Latest revision as of 17:46, 23 April 2025

@keyframes spin {
  to { transform: translate(-50%, -50%) rotate(360deg); }
}

.es-container {
  border: 1px solid var(--border-color-base);
  border-radius: var(--border-radius--large);
  padding: 1em;
  overflow: hidden;
  position: relative;
  display: block;
}

.es-container::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  opacity: 0.25;
  background-image: url("https://raw.githubusercontent.com/foundryvtt/dnd5e/refs/heads/4.4.x/ui/texture-gray1.webp");
  background-repeat: no-repeat;
  background-size: cover;
  /* will-change: transform; */
  /* transform: translateZ(0); */
}

.es-mask-rotator {
  position: absolute;
  top: calc(100% - 4em);
  left: calc(100% - 4em);
  width: 150%;
  height: 150%;
  transform: translate(-50%, -50%);
  opacity: 0.2;
  display: block;
  
  /* Use the SVG directly as background */
  background-image: url("https://548916280-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpaqFHtSBIvRvOg8Wfmx5%2Fuploads%2FWEViu7j32vfudpdSmvEG%2FSpell%20Circle.svg?alt=media&token=e1e66eeb-da0d-47fa-b71b-d823fbfe3cd7");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-color: transparent;
  
  /* Force-recolor the SVG using filters */
  filter: brightness(0) saturate(100%); /* Default to black */
  
  pointer-events: none;
  z-index: 0;
  transform-origin: center;
  /* will-change: transform; */
  /* backface-visibility: hidden; */
  animation: spin 300s linear infinite;
}

.es-wording-container {
  position: relative;
  z-index: 1;
  display: block;
}

.es-wording-container,
.es-effect-container * {
  color: unset;
}

.es-intro {
  font-family: "Mea Culpa", cursive;
  font-weight: 400;
  font-style: normal;
  display: block;
  font-size: 2em;
  user-select: none;
  margin-bottom: 0;
}

.es-intro a {
  color: unset;
}

.es-wording {
  display: block;
  margin-left: 1em;
  margin-right: 1em;
  font-family: "Quintessential", serif;
  font-weight: 400;
  font-style: normal;
}

/* Light mode colors */
@media (prefers-color-scheme: light) {
  .es-life .es-mask-rotator {
    filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(20deg) brightness(1);
  }
  .es-storm .es-mask-rotator {
    filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(190deg) brightness(1);
  }
  .es-necro .es-mask-rotator {
    filter: brightness(0) saturate(100%); /* Already black */
  }
  .es-flame .es-mask-rotator {
    filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(330deg) brightness(1.2);
  }
  .es-nature .es-mask-rotator {
    filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(100deg) brightness(0.8);
  }
  .es-multi .es-mask-rotator {
    filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(270deg) brightness(0.8);
  }
  
  .es-life {
    color: #3d340b;
    background-color: #e5a50a0d;
  }
  .es-storm {
    color: #0d2139;
    background-color: #1a5fb40d;
  }
  .es-necro {
    color: #000000;
    background-color: #0000000d;
  }
  .es-flame {
    color: #380609;
    background-color: #a51d2d0d;
  }
  .es-nature {
    color: #0c341e;
    background-color: #26a2690d;
  }
  .es-multi {
    color: #24102b;
    background-color: #6135830d;
  }
}

/* Dark mode colors */
@media (prefers-color-scheme: dark) {
  .es-life .es-mask-rotator {
    filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(40deg) invert(1);
  }
  .es-storm .es-mask-rotator {
    filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(200deg) invert(1);
  }
  .es-necro .es-mask-rotator {
    filter: brightness(0) saturate(100%) invert(1); /* Grey */
  }
  .es-flame .es-mask-rotator {
    filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(320deg) invert(1);
  }
  .es-nature .es-mask-rotator {
    filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(110deg) invert(1);
  }
  .es-multi .es-mask-rotator {
    filter: brightness(0) saturate(100%) sepia(100%) saturate(10000%) hue-rotate(280deg) invert(1);
  }
  
  .es-life {
    color: #faf7d0;
    background-color: #e5a50a0d;
  }
  .es-storm {
    color: #e4effc;
    background-color: #1a5fb40d;
  }
  .es-necro {
    color: #a9a8aa;
    background-color: #0000000d;
  }
  .es-flame {
    color: #f5d4d1;
    background-color: #a51d2d0d;
  }
  .es-nature {
    color: #dbf4e0;
    background-color: #26a2690d;
  }
  .es-multi {
    color: #e4d2e4;
    background-color: #6135830d;
  }
}