More actions
Content deleted Content added
// via Wikitext Extension for VSCode |
// via Wikitext Extension for VSCode |
||
(23 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
@keyframes |
@keyframes spin { |
||
to { transform: translate(-50%, -50%) rotate(360deg); } |
|||
from { |
|||
transform: translate(-50%, -50%) rotate(0deg); |
|||
} |
|||
to { |
|||
transform: translate(-50%, -50%) rotate(360deg); |
|||
} |
|||
} |
} |
||
Line 15: | Line 9: | ||
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% - |
top: calc(100% - 4em); |
||
left: calc(100% - |
left: calc(100% - 4em); |
||
width: |
width: 150%; |
||
height: |
height: 150%; |
||
transform: translate(-50%, -50%); |
transform: translate(-50%, -50%); |
||
opacity: 0.2; |
opacity: 0.2; |
||
display: block; |
|||
mask-image: var(--spell-circle-after); |
|||
/* Use the SVG directly as background */ |
|||
mask-size: contain; |
|||
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-repeat: no-repeat; |
|||
background-size: contain; |
|||
mask-position: center; |
|||
background-repeat: no-repeat; |
|||
animation-play-state: running; |
|||
background-position: center; |
|||
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; |
|||
} |
} |
||
.es-wording-container |
.es-wording-container, |
||
.es-effect-container * { |
|||
color: unset; |
color: unset; |
||
} |
} |
||
Line 72: | Line 74: | ||
font-size: 2em; |
font-size: 2em; |
||
user-select: none; |
user-select: none; |
||
margin-bottom: 0; |
|||
} |
|||
.es-intro a { |
|||
color: unset; |
|||
} |
} |
||
.es-wording { |
.es-wording { |
||
display: block; |
display: block; |
||
margin-left: 1em; |
|||
margin-right: 1em; |
|||
font-family: "Quintessential", serif; |
font-family: "Quintessential", serif; |
||
font-weight: 400; |
font-weight: 400; |
||
Line 81: | Line 90: | ||
} |
} |
||
/* Light mode colors */ |
|||
.es-life .es-mask-rotator { |
|||
background-color: #e5a50a; |
|||
} |
|||
.es-storm .es-mask-rotator { |
|||
background-color: #1a5fb4; |
|||
} |
|||
.es-necro .es-mask-rotator { |
|||
background-color: #000000; |
|||
} |
|||
.es-mask-rotator { |
|||
background-color: #a51d2d; |
|||
} |
|||
.es-nature .es-mask-rotator { |
|||
background-color: #26a269; |
|||
} |
|||
.es-multi .es-mask-rotator { |
|||
background-color: #613583; |
|||
} |
|||
@media (prefers-color-scheme: light) { |
@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 { |
.es-life { |
||
color: #3d340b; |
color: #3d340b; |
||
Line 112: | Line 123: | ||
background-color: #0000000d; |
background-color: #0000000d; |
||
} |
} |
||
.es-flame { |
|||
color: #380609; |
color: #380609; |
||
background-color: #a51d2d0d; |
background-color: #a51d2d0d; |
||
Line 126: | Line 137: | ||
} |
} |
||
/* Dark mode colors */ |
|||
@media (prefers-color-scheme: dark) { |
@media (prefers-color-scheme: dark) { |
||
.es- |
.es-life .es-mask-rotator { |
||
filter: brightness(1); |
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-intro { |
|||
filter: brightness(1); |
|||
} |
} |
||
.es-necro .es-mask-rotator { |
|||
filter: brightness(0) saturate(100%) invert(1); /* Grey */ |
|||
.es-mask-rotator { |
|||
} |
|||
filter: brightness(0.6); |
|||
.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;
}
}