Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* --- [Globals] --- */
- * {
- font-family: '{customFont}', '{googleFont}', Nunito, Arial, sans-serif;
- font-size: {fontSize}px;
- font-weight: {fontWeight};
- overflow-wrap: break-word;
- margin: 0;
- padding: 0;
- }
- /* --- [Widget Container] --- */
- main {
- --customBorderColor: {borderColor};
- --customNameColor: {nameColor};
- --customBackgroundColor: {backgroundColor};
- --customTextColor: {textColor};
- color: #444;
- box-sizing: border-box;
- position: absolute;
- height: 100%;
- width: 100%;
- left: 0;
- }
- /* darker than the actual color in animal crossing */
- /* just so that it's easier to read since it's smaller */
- main.theme-animal-crossing {
- color: #564A39;
- }
- main.theme-98\.css {
- color: black;
- }
- main.theme-xp\.css {
- color: #222;
- }
- main.preview-true.editor::before {
- --borderSize: 10px;
- content: '';
- position: absolute;
- height: calc(100% - {padding}px * 2);
- width: calc(100% - {padding}px * 2);
- bottom: calc({padding}px - var(--borderSize));
- left: calc({padding}px - var(--borderSize));
- border: var(--borderSize) dashed white;
- box-shadow: 0 0 5px #000;
- background-color: #0008;
- z-index: -20;
- }
- main.preview-true.editor::after {
- --borderSize: 10px;
- --space: 10px;
- content: '⚠️ Preview Mode is On! ⚠️ (Only shows up in the editor)\a ➡️ Set [Preview > Preview Mode] to Off to hide this. ⬅️\a\a Whenever you change the settings, a few test message bubbles will automatically appear!';
- white-space: pre-wrap;
- color: white;
- font-size: 24px;
- position: absolute;
- top: {padding}px;
- left: {padding}px;
- right: {padding}px;
- text-align: left;
- padding: 30px;
- text-shadow: 0 0 5px black, 0 0 3px black, 0 0 1px black;
- font-weight: bold;
- font-family: Roboto, Arial, sans-serif;
- background-color: #000B;
- z-index: -10;
- }
- main.preview-true.editor::before, main.preview-true.editor::after {
- animation: fade .4s reverse forwards;
- }
- main.dark-mode { color: white; }
- main.dark-mode.theme-animal-crossing { color: #DEFEFE; }
- main.dark-mode..theme-98\.css { color: black; }
- main.custom-message-colors { color: var(--customTextColor) }
- main.list-mode {
- display: flex;
- align-items: {listAlignment};
- align-content: start;
- overflow: hidden;
- padding: {padding}px;
- }
- main.direction-bottom {
- flex-direction: column-reverse;
- bottom: 0;
- }
- main.direction-top {
- flex-direction: column;
- }
- main.direction-left {
- flex-direction: row;
- }
- main.direction-right {
- flex-direction: row-reverse;
- }
- main.direction-top main.random-mode {
- top: 0;
- }
- .spacer {
- flex: 1;
- }
- /* --- [Bubble Container] --- */
- .bubble {
- --defaultBackgroundColor: #FFFC;
- --backgroundColor: var(--defaultBackgroundColor);
- --cornerSize: 23px;
- --userColor: #FF4A80;
- --borderColor: var(--userColor);
- --borderSize: 5px;
- --marginSize: 15px;
- position: absolute;
- visibility: hidden;
- }
- .theme-98\.css .bubble {
- --backgroundColor: silver;
- background-color: var(--backgroundColor);
- }
- .theme-xp\.css .bubble {
- --backgroundColor: #ece9d8;
- background-color: var(--backgroundColor);
- box-shadow:
- inset -1px -1px var(--darkerColor),
- inset 1px 1px var(--darkerColor),
- inset -2px -2px var(--darkerColor),
- inset 2px 2px var(--darkerColor),
- inset -3px -3px var(--darkerColor),
- inset 3px 3px var(--darkerColor)
- ;
- }
- .list-mode.direction-top .bubble {
- margin-bottom: var(--marginSize);
- }
- .list-mode.direction-bottom .bubble {
- margin-top: var(--marginSize);
- }
- .list-mode.direction-left .bubble {
- margin-right: var(--marginSize);
- }
- .list-mode.direction-right .bubble {
- margin-left: var(--marginSize);
- }
- .theme-default.corner-diagonal .bubble {
- --topRightCorner: calc(var(--cornerSize) - var(--borderSize));
- --bottomLeftCorner: calc(var(--cornerSize) / 2);
- --bottomRightCorner: calc(var(--cornerSize) / 2);
- -webkit-mask:
- linear-gradient( 135deg, transparent 0 var(--topLeftCorner, 0), white 0) top left,
- linear-gradient(-135deg, transparent 0 var(--topRightCorner, 0), white 0) top right,
- linear-gradient( 45deg, transparent 0 var(--bottomLeftCorner, 0), white 0) bottom left,
- linear-gradient( -45deg, transparent 0 var(--bottomRightCorner, 0), white 0) bottom right
- ;
- -webkit-mask-size: 51% 51%;
- -webkit-mask-repeat: no-repeat;
- padding: var(--borderSize);
- }
- .theme-default.corner-round .bubble, .theme-default.corner-square .bubble {
- border: var(--borderSize) solid var(--borderColor);
- }
- .theme-default.corner-round .bubble {
- border-radius: 10px;
- }
- .custom-border-colors .bubble {
- --borderColor: var(--customBorderColor);
- }
- .custom-message-colors .bubble {
- --backgroundColor: var(--customBackgroundColor);
- }
- .bubble.animate {
- visibility: visible;
- }
- .theme-98\.css .highlight.bubble, .theme-xp\.css .highlight.bubble {
- animation: gradientShift 5s infinite linear;
- }
- .bubble.dynamic {
- animation: pop .5s calc({lifetime}s - .5s) forwards;
- }
- .lifetime-0 .bubble.dynamic {
- animation: fade reverse 0s 1s;
- }
- .theme-98\.css .highlight.bubble.dynamic, .theme-xp\.css .highlight.bubble.dynamic {
- animation:
- pop .5s calc({lifetime}s - .5s) forwards,
- gradientShift 5s infinite linear
- ;
- }
- .lifetime-0.theme-98\.css .highlight.bubble.dynamic, .lifetime-0.theme-xp\.css .highlight.bubble.dynamic {
- animation:
- fade reverse 0s 1s,
- gradientShift 5s infinite linear
- ;
- }
- .bubble.fade {
- animation:
- fade reverse .5s,
- fade .5s calc({lifetime}s - .5s) forwards
- ;
- }
- .lifetime-0 .bubble.fade {
- animation:
- fade reverse .5s,
- fade reverse 0s 1s
- ;
- }
- .theme-98\.css .highlight.bubble.fade, .theme-xp\.css .highlight.bubble.fade {
- animation:
- fade reverse .5s,
- fade .5s calc({lifetime}s - .5s) forwards,
- gradientShift 5s infinite linear
- ;
- }
- .lifetime-0.theme-98\.css .highlight.bubble.fade, .lifetime-0.theme-xp\.css .highlight.bubble.fade {
- animation:
- fade reverse .5s,
- fade reverse 0s 1s,
- gradientShift 5s infinite linear
- ;
- }
- .bubble.fade-up {
- animation:
- fade reverse .5s,
- fade .5s calc({lifetime}s - .5s) forwards,
- up .5s,
- up reverse .5s calc({lifetime}s - .5s) forwards
- ;
- }
- .lifetime-0 .bubble.fade-up {
- animation:
- fade reverse .5s,
- up .5s,
- fade reverse 0s 1s
- ;
- }
- .theme-98\.css .highlight.bubble.fade-up, .theme-xp\.css .highlight.bubble.fade-up {
- animation:
- fade reverse .5s,
- fade .5s calc({lifetime}s - .5s) forwards,
- up .5s,
- up reverse .5s calc({lifetime}s - .5s) forwards,
- gradientShift 5s infinite linear
- ;
- }
- .lifetime-0.theme-98\.css .highlight.bubble.fade-up, .lifetime-0.theme-xp\.css .highlight.bubble.fade-up {
- animation:
- fade reverse .5s,
- up .5s,
- fade reverse 0s 1s,
- gradientShift 5s infinite linear
- ;
- }
- .bubble.fade-down {
- animation:
- fade reverse .5s,
- fade .5s calc({lifetime}s - .5s) forwards,
- down .5s,
- down reverse .5s calc({lifetime}s - .5s) forwards
- ;
- }
- .lifetime-0 .bubble.fade-down {
- animation:
- fade reverse .5s,
- down .5s,
- fade reverse 0s 1s
- ;
- }
- .theme-98\.css .highlight.bubble.fade-down, .theme-xp\.css .highlight.bubble.fade-down {
- animation:
- fade reverse .5s,
- fade .5s calc({lifetime}s - .5s) forwards,
- down .5s,
- down reverse .5s calc({lifetime}s - .5s) forwards,
- gradientShift 5s infinite linear
- ;
- }
- .lifetime-0.theme-98\.css .highlight.bubble.fade-down, .lifetime-0.theme-xp\.css .highlight.bubble.fade-down {
- animation:
- fade reverse .5s,
- down .5s,
- fade reverse 0s 1s,
- gradientShift 5s infinite linear
- ;
- }
- .bubble.fade-left {
- animation:
- fade reverse .5s,
- fade .5s calc({lifetime}s - .5s) forwards,
- left .5s,
- left reverse .5s calc({lifetime}s - .5s) forwards
- ;
- }
- .lifetime-0 .bubble.fade-left {
- animation:
- fade reverse .5s,
- left .5s,
- fade reverse 0s 1s
- ;
- }
- .theme-98\.css .highlight.bubble.fade-left, .theme-xp\.css .highlight.bubble.fade-left {
- animation:
- fade reverse .5s,
- fade .5s calc({lifetime}s - .5s) forwards,
- left .5s,
- left reverse .5s calc({lifetime}s - .5s) forwards,
- gradientShift 5s infinite linear
- ;
- }
- .lifetime-0.theme-98\.css .highlight.bubble.fade-left, .lifetime-0.theme-xp\.css .highlight.bubble.fade-left {
- animation:
- fade reverse .5s,
- left .5s,
- fade reverse 0s 1s,
- gradientShift 5s infinite linear
- ;
- }
- .bubble.fade-right {
- animation:
- fade reverse .5s,
- fade .5s calc({lifetime}s - .5s) forwards,
- right .5s,
- right reverse .5s calc({lifetime}s - .5s) forwards
- ;
- }
- .lifetime-0 .bubble.fade-right {
- animation:
- fade reverse .5s,
- right .5s,
- fade reverse 0s 1s
- ;
- }
- .theme-98\.css .highlight.bubble.fade-right, .theme-xp\.css .highlight.bubble.fade-right {
- animation:
- fade reverse .5s,
- fade .5s calc({lifetime}s - .5s) forwards,
- right .5s,
- right reverse .5s calc({lifetime}s - .5s) forwards,
- gradientShift 5s infinite linear
- ;
- }
- .lifetime-0.theme-98\.css .highlight.bubble.fade-right, .lifetime-0.theme-xp\.css .highlight.bubble.fade-right {
- animation:
- fade reverse .5s,
- right .5s,
- fade reverse 0s 1s,
- gradientShift 5s infinite linear
- ;
- }
- .bubble.zoom {
- animation:
- pop reverse .5s,
- pop .5s calc({lifetime}s - .5s) forwards
- ;
- }
- .lifetime-0 .bubble.zoom {
- animation:
- pop reverse .5s,
- fade reverse 0s 1s
- ;
- }
- .theme-98\.css .highlight.bubble.zoom, .theme-xp\.css .highlight.bubble.zoom {
- animation:
- pop reverse .5s,
- pop .5s calc({lifetime}s - .5s) forwards,
- gradientShift 5s infinite linear
- ;
- }
- .lifetime-0.theme-98\.css .highlight.bubble.zoom, .lifetime-0.theme-xp\.css .highlight.bubble.zoom {
- animation:
- pop reverse .5s,
- fade reverse 0s 1s,
- gradientShift 5s infinite linear
- ;
- }
- .bubble-background {
- z-index: -1;
- position: absolute;
- top: 0;
- left: 0;
- height: 100%;
- width: 100%;
- background-color: var(--backgroundColor);
- }
- .theme-default.corner-diagonal .bubble-background {
- background:
- linear-gradient( 0deg, var(--borderColor) calc(var(--borderSize) + 1px), transparent 0),
- linear-gradient( 90deg, var(--borderColor) calc(var(--borderSize) + 1px), transparent 0),
- linear-gradient( 180deg, var(--borderColor) calc(var(--borderSize) + 1px), transparent 0),
- linear-gradient( 270deg, var(--borderColor) calc(var(--borderSize) + 1px), transparent 0),
- linear-gradient( 135deg, var(--borderColor) 0 calc(var(--topLeftCorner, 0px) + var(--borderSize)), transparent 0) top left / 50% 50%,
- linear-gradient(-135deg, var(--borderColor) 0 calc(var(--topRightCorner, 0px) + var(--borderSize)), transparent 0) top right / 50% 50%,
- linear-gradient( 45deg, var(--borderColor) 0 calc(var(--bottomLeftCorner, 0px) + var(--borderSize)), transparent 0) bottom left / 50% 50%,
- linear-gradient( -45deg, var(--borderColor) 0 calc(var(--bottomRightCorner, 0px) + var(--borderSize)), transparent 0) bottom right / 50% 50%,
- var(--backgroundColor)
- ;
- background-origin: border-box;
- background-repeat: no-repeat;
- }
- .theme-default.corner-round .bubble-background {
- border-radius: 5px;
- }
- .dark-mode .bubble { --defaultBackgroundColor: #000D; }
- /* --- [Container Blocks] --- */
- .username-box {
- z-index: 1;
- background-color: var(--borderColor);
- box-shadow: 0 -1px 0 1px var(--borderColor);
- padding: .2rem 0;
- }
- .theme-98\.css .username-box {
- background-image: linear-gradient(90deg, #000C, transparent);
- padding: .1rem 0;
- }
- .theme-xp\.css .username-box {
- padding: .2rem !important;
- border-color: var(--darkerColor);
- background-image: linear-gradient(180deg, var(--borderColor), var(--darkerColor) 8%, var(--borderColor) 95%, var(--darkerColor));
- text-shadow: 1px 1px #000B;
- position: relative;
- }
- .theme-animal-crossing .username-box {
- border-radius: 30px;
- display: inline-block;
- padding: .2rem .5rem;
- }
- .theme-animal-crossing.corner-square .username-box {
- border-radius: 0;
- }
- .theme-98\.css .username-box, .theme-xp\.css .username-box {
- box-shadow: none;
- }
- .username {
- padding-left: .3rem;
- padding-right: .3rem;
- display: inline-block;
- color: black;
- }
- .user-color-dark .username {
- color: #FFFC;
- }
- .theme-xp\.css .username {
- padding-left: .1rem;
- padding-right: .1rem;
- }
- .theme-98\.css .username, .theme-xp\.css .username {
- color: white;
- }
- .theme-98\.css .username, .theme-xp\.css .username {
- display: flex;
- align-items: center;
- }
- .theme-98\.css .username {
- -webkit-font-smoothing: none;
- padding-left: .2rem;
- padding-right: .2rem;
- }
- .custom-border-colors .username {
- color: var(--customNameColor);
- }
- .message {
- --dynamicWidth: {maxWidth}px;
- padding: .6rem;
- width: var(--dynamicWidth);
- max-height: {maxHeight}px;
- overflow: hidden;
- }
- .theme-animal-crossing .message {
- --backgroundColor: #FFFAE4DD;
- background-color: var(--backgroundColor);
- border-radius: 30px / 25px;
- padding: 1.75rem .75rem .75rem .75rem;
- margin-top: -1rem;
- margin-left: 15px;
- }
- .theme-animal-crossing.corner-square .message {
- border-radius: 0;
- }
- .fixed-width-false .emote-4 .message {
- display: flex;
- justify-content: center;
- align-items: flex-start;
- }
- .dark-mode.theme-animal-crossing .message {
- --backgroundColor: #1B3852DD;
- }
- .theme-animal-crossing.custom-message-colors .message {
- --backgroundColor: var(--customBackgroundColor);
- }
- .dynamic .message { animation: expand 2s; }
- /* --- [Message Parts] --- */
- .emote {
- position: relative;
- vertical-align: middle;
- margin: -.25rem 0;
- }
- .dynamic .text, .dynamic .emote { animation: fadeMessage 1.5s; }
- .emote-1 .emote { height: 1.75rem; max-height: 112px; }
- .emote-2 .emote { height: 3.5rem; max-height: 112px; }
- .emote-4 .emote { height: 112px; }
- /* --- [Message Types] --- */
- .highlight .bubble-background, .theme-animal-crossing .highlight .message {
- background: linear-gradient(-45deg, #FFADADDD, #FFD6A5DD, #FDFFB6DD, #CAFFBFDD, #9BF6FFDD, #A0C4FFDD, #BDB2FFDD, #FFC6FFDD, #FFADADDD, #FFD6A5DD) 100% 100% / 900% 900%;
- }
- .theme-98\.css .highlight.bubble, .theme-xp\.css .highlight.bubble {
- background: linear-gradient(-45deg, #FFADAD, #FFD6A5, #FDFFB6, #CAFFBF, #9BF6FF, #A0C4FF, #BDB2FF, #FFC6FF, #FFADAD, #FFD6A5) 100% 100% / 900% 900%;
- }
- .highlight .bubble-background {
- animation: gradientShift 5s infinite linear;
- }
- .theme-animal-crossing .dynamic.highlight .message {
- animation: gradientShift 5s infinite linear, expand 2s;
- }
- .theme-default.corner-diagonal .highlight .bubble-background {
- background:
- linear-gradient( 0deg, var(--borderColor) calc(var(--borderSize) + .1px), transparent 0),
- linear-gradient( 90deg, var(--borderColor) calc(var(--borderSize) + .1px), transparent 0),
- linear-gradient( 180deg, var(--borderColor) calc(var(--borderSize) + .1px), transparent 0),
- linear-gradient( 270deg, var(--borderColor) calc(var(--borderSize) + .1px), transparent 0),
- linear-gradient( 135deg, var(--borderColor) 0 calc(var(--topLeftCorner, 0px) + var(--borderSize)), transparent 0) top left / 50% 50%,
- linear-gradient(-135deg, var(--borderColor) 0 calc(var(--topRightCorner, 0px) + var(--borderSize)), transparent 0) top right / 50% 50%,
- linear-gradient( 45deg, var(--borderColor) 0 calc(var(--bottomLeftCorner, 0px) + var(--borderSize)), transparent 0) bottom left / 50% 50%,
- linear-gradient( -45deg, var(--borderColor) 0 calc(var(--bottomRightCorner, 0px) + var(--borderSize)), transparent 0) bottom right / 50% 50%,
- linear-gradient(-45deg, #FFADADDD, #FFD6A5DD, #FDFFB6DD, #CAFFBFDD, #9BF6FFDD, #A0C4FFDD, #BDB2FFDD, #FFC6FFDD, #FFADADDD, #FFD6A5DD) 100% 100% / 900% 900%
- ;
- background-origin: border-box;
- background-repeat: no-repeat;
- animation: gradientShift-cornerDiagonal 5s infinite linear;
- }
- .highlight .text {
- color: #000B;
- }
- .action .text {
- font-style: italic;
- }
- .action .emote {
- transform: skew(-5deg);
- }
- .badge {
- height: 1.5rem;
- padding-bottom: .25rem;
- padding-right: .25rem;
- position: relative;
- vertical-align: middle;
- }
- .theme-98\.css .badge, .theme-xp\.css .badge {
- height: 1rem;
- padding-bottom: 0;
- }
- .pronouns-badge {
- display: inline-block;
- margin-right: .25rem;
- border-radius: 5px;
- border: 2px solid currentcolor;
- padding-left: .25rem;
- padding-right: .25rem;
- margin-bottom: .25rem;
- }
- .theme-98\.css .pronouns-badge, .theme-xp\.css .pronouns-badge {
- margin-bottom: 0;
- font-size: .7rem;
- border-radius: 3px;
- }
- .theme-xp\.css .pronouns-badge, .theme-xp\.css .badge {
- filter: drop-shadow(1px 1px #000B);
- }
- .theme-xp\.css .pronouns-badge {
- text-shadow: none;
- }
- .custom-pronouns-badge-colors .pronouns-badge {
- color: {pronounsBadgeTextColor};
- background-color: {pronounsBadgeBackgroundColor};
- border-color: {pronounsBadgeBorderColor};
- }
- .theme-animal-crossing .badge {
- padding-bottom: .15rem;
- }
- /* --- [Overrides for 98.css and xp.css] --- */
- .title-bar {
- background-color: var(--borderColor) !important;
- display: block !important;
- }
- .title-bar-controls {
- display: inline-block;
- padding-left: .25rem;
- }
- .title-bar-controls button {
- display: inline-block;
- }
- .theme-xp\.css .title-bar-controls button[aria-label=Minimize], .theme-xp\.css .title-bar-controls button[aria-label=Maximize] {
- mix-blend-mode: luminosity;
- display: inline-block;
- }
- /* --- [Animations] --- */
- @keyframes gradientShift-cornerDiagonal {
- from { background-position: 0 0, 0 0, 0 0, 0 0, top left, top right, bottom left, bottom right, 100% 100%; }
- to { background-position: 0 0, 0 0, 0 0, 0 0, top left, top right, bottom left, bottom right, 0 0; }
- }
- @keyframes gradientShift {
- from { background-position: 100% 100%; }
- to { background-position: 0 0; }
- }
- @keyframes pop {
- 20% { transform: scale(1.3); }
- to { opacity: 0; transform: scale(0); }
- }
- @keyframes fadeMessage {
- 0%, 30% { opacity: 0; }
- }
- @keyframes fade {
- from { opacity: 1; }
- to { opacity: 0; }
- }
- @keyframes up {
- from { transform: translateY(50px); }
- to { transform: translateY(0px); }
- }
- @keyframes down {
- from { transform: translateY(-50px); }
- to { transform: translateY(0px); }
- }
- @keyframes left {
- from { transform: translateX(50px); }
- to { transform: translateX(0px); }
- }
- @keyframes right {
- from { transform: translateX(-50px); }
- to { transform: translateX(0px); }
- }
- @keyframes expand {
- 0% {
- width: 0;
- max-height: 0;
- }
- 10% { width: calc(var(--dynamicWidth) * {dynamicModifier}); }
- 30% {
- width: var(--dynamicWidth);
- max-height: 0;
- }
- 70% { max-height: {maxHeight}px; }
- }
Advertisement
Add Comment
Please, Sign In to add comment