2025-06-02 11:20:03 -05:00
|
|
|
/* ╭────────────────────────╮
|
|
|
|
|
/ │ _ │
|
|
|
|
|
/ │ | |__ __ _ ___ ___ │
|
|
|
|
|
/ │ | '_ \ / _` / __|/ _ \ │
|
|
|
|
|
/ │ | |_) | (_| \__ \ __/ │
|
|
|
|
|
/ │ |_.__/ \__,_|___/\___| │
|
|
|
|
|
/ ╰────────────────────────╯
|
|
|
|
|
/ base - styling for regular/global html elements as well as the color schemes, and anything else that doesn't fit anywhere else */
|
|
|
|
|
|
|
|
|
|
:root {
|
|
|
|
|
--pagefind-ui-font: var(--font-family);
|
|
|
|
|
--pagefind-ui-primary: var(--foreground);
|
|
|
|
|
--pagefind-ui-text: var(--foreground);
|
|
|
|
|
--pagefind-ui-background: var(--background);
|
|
|
|
|
--pagefind-ui-border: var(--accent);
|
|
|
|
|
--pagefind-ui-tag: var(--background);
|
|
|
|
|
--site-border: .1rem solid var(--border);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
custom color scheme, based off of both Ayu Light & Dark and Catppuccin Latte & Mocha.
|
|
|
|
|
it's basically a mix and mash of the both of them together, and slightly modified.
|
|
|
|
|
it doesn't have a name, call it "synth.download color scheme official real"
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
:root {
|
|
|
|
|
/* base colors */
|
|
|
|
|
--background: #fafafa;
|
|
|
|
|
--foreground: #3d454d;
|
|
|
|
|
--selection: #f0eee4;
|
|
|
|
|
--comment: #abb0b6;
|
2025-06-30 01:00:20 -05:00
|
|
|
--accent: #ffaa33;
|
|
|
|
|
--link: #9f5e03;
|
2025-06-02 11:20:03 -05:00
|
|
|
|
|
|
|
|
/* original ayu colors */
|
|
|
|
|
--orange: #ff9940;
|
|
|
|
|
--green: #86b300;
|
|
|
|
|
--blue: #4cbf99;
|
|
|
|
|
--purple: #a37acc;
|
|
|
|
|
--red: #ec3838;
|
|
|
|
|
|
|
|
|
|
/* extended catppuccin based colors */
|
|
|
|
|
--flamingo: #ff7d7d;
|
|
|
|
|
--rosewater: #eca69a;
|
|
|
|
|
--pink: #ff8adb;
|
|
|
|
|
--mauve: #ba8aff;
|
|
|
|
|
--maroon: #e06c75;
|
|
|
|
|
--peach: #ffac6b;
|
|
|
|
|
--yellow: #e5c07b;
|
|
|
|
|
--teal: #2bbac5;
|
|
|
|
|
--sky: #3eacce;
|
|
|
|
|
--sapphire: #4db5d0;
|
|
|
|
|
--lavender: #7881ce;
|
|
|
|
|
|
|
|
|
|
/* ui accent colors */
|
|
|
|
|
--ui-orange: #fa8d3e;
|
|
|
|
|
--ui-green: #91b362;
|
|
|
|
|
--ui-blue: #6994bf;
|
|
|
|
|
--ui-purple: #7e57c2;
|
|
|
|
|
--ui-teal: #56c2c0;
|
|
|
|
|
--ui-lavender: #9d8cdb;
|
|
|
|
|
|
|
|
|
|
/* misc. */
|
|
|
|
|
--border: #e4e4e4;
|
|
|
|
|
--shadow: rgba(0, 0, 0, 0.1);
|
|
|
|
|
--hover: rgba(0, 0, 0, 0.05);
|
|
|
|
|
--active: rgba(0, 0, 0, 0.1);
|
|
|
|
|
--focus: #86b300;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@media (prefers-color-scheme: dark) {
|
|
|
|
|
:root {
|
|
|
|
|
/* base colors */
|
|
|
|
|
--background: #0a0e14;
|
|
|
|
|
--foreground: #d8d6d2;
|
|
|
|
|
--selection: #253340;
|
|
|
|
|
--comment: #5c6773;
|
|
|
|
|
--accent: #e6b450;
|
2025-07-01 20:51:29 -05:00
|
|
|
--link: var(--accent);
|
2025-06-02 11:20:03 -05:00
|
|
|
|
|
|
|
|
/* original ayu colors */
|
|
|
|
|
--orange: #ffb454;
|
|
|
|
|
--green: #aad94c;
|
|
|
|
|
--blue: #59c2ff;
|
|
|
|
|
--purple: #d2a6ff;
|
|
|
|
|
--red: #f0646b;
|
|
|
|
|
|
|
|
|
|
/* extended catppuccin based colors */
|
|
|
|
|
--flamingo: #f2cdcd;
|
|
|
|
|
--rosewater: #f5e0dc;
|
|
|
|
|
--pink: #ffc9e3;
|
|
|
|
|
--mauve: #cba6f7;
|
|
|
|
|
--maroon: #eba0ac;
|
|
|
|
|
--peach: #ffcca8;
|
|
|
|
|
--yellow: #f9e2af;
|
|
|
|
|
--teal: #8ddedc;
|
|
|
|
|
--sky: #89dceb;
|
|
|
|
|
--sapphire: #74c7ec;
|
|
|
|
|
--lavender: #b4befe;
|
|
|
|
|
|
|
|
|
|
/* ui accent colors */
|
|
|
|
|
--ui-orange: #e6b450;
|
|
|
|
|
--ui-green: #aad94c;
|
|
|
|
|
--ui-blue: #39bae6;
|
|
|
|
|
--ui-purple: #a37acc;
|
|
|
|
|
--ui-teal: #7adbd3;
|
|
|
|
|
--ui-lavender: #ada0f3;
|
|
|
|
|
|
|
|
|
|
/* misc. */
|
|
|
|
|
--border: #1a1f29;
|
|
|
|
|
--shadow: rgba(0, 0, 0, 0.4);
|
|
|
|
|
--hover: rgba(255, 255, 255, 0.05);
|
|
|
|
|
--active: rgba(255, 255, 255, 0.1);
|
|
|
|
|
--focus: #ffb454;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* theme classes for manual theme selection */
|
|
|
|
|
html[data-theme="light"] {
|
|
|
|
|
/* base colors */
|
|
|
|
|
--background: #fafafa;
|
|
|
|
|
--foreground: #3d454d;
|
|
|
|
|
--selection: #f0eee4;
|
|
|
|
|
--comment: #abb0b6;
|
|
|
|
|
--accent: #ffaa33;
|
2025-06-30 01:00:20 -05:00
|
|
|
--link: #9f5e03;
|
2025-06-02 11:20:03 -05:00
|
|
|
|
|
|
|
|
/* original ayu colors */
|
|
|
|
|
--orange: #ff9940;
|
|
|
|
|
--green: #86b300;
|
|
|
|
|
--blue: #4cbf99;
|
|
|
|
|
--purple: #a37acc;
|
|
|
|
|
--red: #ec3838;
|
|
|
|
|
|
|
|
|
|
/* extended catppuccin based colors */
|
|
|
|
|
--flamingo: #ff7d7d;
|
|
|
|
|
--rosewater: #eca69a;
|
|
|
|
|
--pink: #ff8adb;
|
|
|
|
|
--mauve: #ba8aff;
|
|
|
|
|
--maroon: #e06c75;
|
|
|
|
|
--peach: #ffac6b;
|
|
|
|
|
--yellow: #e5c07b;
|
|
|
|
|
--teal: #2bbac5;
|
|
|
|
|
--sky: #3eacce;
|
|
|
|
|
--sapphire: #4db5d0;
|
|
|
|
|
--lavender: #7881ce;
|
|
|
|
|
|
|
|
|
|
/* ui accent colors */
|
|
|
|
|
--ui-orange: #fa8d3e;
|
|
|
|
|
--ui-green: #91b362;
|
|
|
|
|
--ui-blue: #6994bf;
|
|
|
|
|
--ui-purple: #7e57c2;
|
|
|
|
|
--ui-teal: #56c2c0;
|
|
|
|
|
--ui-lavender: #9d8cdb;
|
|
|
|
|
|
|
|
|
|
/* misc. */
|
|
|
|
|
--border: #e4e4e4;
|
|
|
|
|
--shadow: rgba(0, 0, 0, 0.1);
|
|
|
|
|
--hover: rgba(0, 0, 0, 0.05);
|
|
|
|
|
--active: rgba(0, 0, 0, 0.1);
|
|
|
|
|
--focus: #86b300;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
html[data-theme="dark"] {
|
|
|
|
|
/* base colors */
|
|
|
|
|
--background: #0a0e14;
|
|
|
|
|
--foreground: #d8d6d2;
|
|
|
|
|
--selection: #253340;
|
|
|
|
|
--comment: #5c6773;
|
|
|
|
|
--accent: #e6b450;
|
2025-07-01 20:51:29 -05:00
|
|
|
--link: var(--accent);
|
2025-06-02 11:20:03 -05:00
|
|
|
|
|
|
|
|
/* original ayu colors */
|
|
|
|
|
--orange: #ffb454;
|
|
|
|
|
--green: #aad94c;
|
|
|
|
|
--blue: #59c2ff;
|
|
|
|
|
--purple: #d2a6ff;
|
|
|
|
|
--red: #f0646b;
|
|
|
|
|
|
|
|
|
|
/* extended catppuccin based colors */
|
|
|
|
|
--flamingo: #f2cdcd;
|
|
|
|
|
--rosewater: #f5e0dc;
|
|
|
|
|
--pink: #ffc9e3;
|
|
|
|
|
--mauve: #cba6f7;
|
|
|
|
|
--maroon: #eba0ac;
|
|
|
|
|
--peach: #ffcca8;
|
|
|
|
|
--yellow: #f9e2af;
|
|
|
|
|
--teal: #8ddedc;
|
|
|
|
|
--sky: #89dceb;
|
|
|
|
|
--sapphire: #74c7ec;
|
|
|
|
|
--lavender: #b4befe;
|
|
|
|
|
|
|
|
|
|
/* ui accent colors */
|
|
|
|
|
--ui-orange: #e6b450;
|
|
|
|
|
--ui-green: #aad94c;
|
|
|
|
|
--ui-blue: #39bae6;
|
|
|
|
|
--ui-purple: #a37acc;
|
|
|
|
|
--ui-teal: #7adbd3;
|
|
|
|
|
--ui-lavender: #ada0f3;
|
|
|
|
|
|
|
|
|
|
/* misc. */
|
|
|
|
|
--border: #1a1f29;
|
|
|
|
|
--shadow: rgba(0, 0, 0, 0.4);
|
|
|
|
|
--hover: rgba(255, 255, 255, 0.05);
|
|
|
|
|
--active: rgba(255, 255, 255, 0.1);
|
|
|
|
|
--focus: #ffb454;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* ----------------------------------
|
|
|
|
|
- background wallpaper, global font -
|
|
|
|
|
---------------------------------- */
|
|
|
|
|
|
|
|
|
|
html {
|
|
|
|
|
background: var(--background) linear-gradient(var(--background) 50%, color-mix(in srgb, var(--accent) 25%, var(--background)) 50%);
|
|
|
|
|
background-attachment: fixed;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
body {
|
|
|
|
|
background: linear-gradient(var(--background), color-mix(in srgb, var(--accent) 25%, var(--background)));
|
|
|
|
|
min-height: calc(100vh - 4rem);
|
|
|
|
|
font-family: var(--font-family);
|
|
|
|
|
font-size: 1.125rem;
|
|
|
|
|
text-transform: lowercase;
|
|
|
|
|
margin: unset !important;
|
|
|
|
|
/* idk why it does that */
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* text formatting and config stuff */
|
|
|
|
|
|
|
|
|
|
/* headings */
|
2025-07-01 20:51:29 -05:00
|
|
|
h1, h2, h3, h4, h5, h6,
|
|
|
|
|
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
|
|
|
|
|
color: var(--foreground);
|
|
|
|
|
margin-top: .5rem;
|
|
|
|
|
text-decoration-color: transparent;
|
|
|
|
|
transition: .2s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
|
|
|
|
|
text-decoration-color: var(--accent);
|
|
|
|
|
text-decoration-thickness: .3rem !important;
|
|
|
|
|
text-decoration: underline;
|
|
|
|
|
transition: .2s;
|
|
|
|
|
}
|
|
|
|
|
|
2025-06-02 11:20:03 -05:00
|
|
|
h1,
|
|
|
|
|
h1 a {
|
|
|
|
|
font-size: 2rem;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
h2,
|
|
|
|
|
h2 a {
|
2025-07-04 05:12:50 -05:00
|
|
|
font-size: 1.8rem;
|
2025-06-02 11:20:03 -05:00
|
|
|
}
|
|
|
|
|
|
2025-07-04 05:12:50 -05:00
|
|
|
h3, h4,
|
|
|
|
|
h3 a, h4 a {
|
|
|
|
|
font-size: 1.4rem;
|
2025-06-02 11:20:03 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* text */
|
|
|
|
|
p,
|
|
|
|
|
li,
|
|
|
|
|
button {
|
2025-06-30 17:33:06 -05:00
|
|
|
.icon {
|
2025-06-02 11:20:03 -05:00
|
|
|
transform: scale(1.13);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* links should look good i think */
|
|
|
|
|
a {
|
2025-07-01 19:49:19 -05:00
|
|
|
color: var(--foreground);
|
|
|
|
|
text-decoration-color: color-mix(in srgb, var(--accent) 60%, transparent);
|
|
|
|
|
text-decoration-thickness: 0.1em;
|
2025-06-02 11:20:03 -05:00
|
|
|
transition: 0.2s;
|
|
|
|
|
|
2025-07-14 18:48:05 -05:00
|
|
|
&:hover {
|
|
|
|
|
color: var(--link);
|
|
|
|
|
text-decoration-color: var(--accent);
|
|
|
|
|
text-decoration-skip-ink: none;
|
|
|
|
|
text-decoration-thickness: .3em;
|
|
|
|
|
transition: 0.2s;
|
|
|
|
|
}
|
2025-06-02 11:20:03 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* smol text */
|
|
|
|
|
small,
|
|
|
|
|
small a {
|
|
|
|
|
font-size: 0.875rem;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* lists need some styling */
|
|
|
|
|
li {
|
2025-06-29 02:32:29 -05:00
|
|
|
margin-left: -.7em;
|
|
|
|
|
padding-bottom: .5rem;
|
2025-06-02 11:20:03 -05:00
|
|
|
}
|
|
|
|
|
|
2025-07-14 18:48:05 -05:00
|
|
|
/* text with "title", little hover-over info tibblets */
|
|
|
|
|
._info {
|
|
|
|
|
cursor: help;
|
|
|
|
|
text-decoration-color: color-mix(in srgb, var(--foreground) 40%, transparent);
|
|
|
|
|
text-decoration-line: underline;
|
|
|
|
|
text-decoration-style: dashed;
|
|
|
|
|
text-decoration-thickness: 0.1em;
|
|
|
|
|
transition: 0.2s;
|
|
|
|
|
|
|
|
|
|
&:hover {
|
|
|
|
|
text-decoration-color: color-mix(in srgb, var(--foreground) 80%, transparent);
|
|
|
|
|
text-decoration-skip-ink: none;
|
|
|
|
|
transition: 0.2s;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2025-06-02 11:20:03 -05:00
|
|
|
/* the tabler icons svgs styling */
|
|
|
|
|
.tabler-icon,
|
|
|
|
|
.icon .icon-tabler {
|
|
|
|
|
width: 1.3rem;
|
|
|
|
|
height: 1.3rem;
|
|
|
|
|
padding-bottom: .2rem;
|
|
|
|
|
vertical-align: middle !important;
|
|
|
|
|
color: var(--foreground) !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* code (enforced monospace) */
|
|
|
|
|
.code {
|
|
|
|
|
font-family: 'JetBrains Mono', monospace, 'Segoe UI', Tahoma, Geneva, Verdana, system-ui, sans-serif !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* caption styled text */
|
|
|
|
|
.caption {
|
|
|
|
|
font-size: small;
|
|
|
|
|
opacity: .8;
|
|
|
|
|
|
|
|
|
|
.section {
|
|
|
|
|
font-size: smaller;
|
|
|
|
|
opacity: .9;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2025-06-03 22:35:05 -05:00
|
|
|
/* styled details elements */
|
|
|
|
|
details.styled {
|
|
|
|
|
summary {
|
|
|
|
|
span {
|
|
|
|
|
padding-right: .6rem;
|
|
|
|
|
transform: translateY(.1rem);
|
|
|
|
|
vertical-align: middle;
|
|
|
|
|
}
|
2025-07-01 19:49:19 -05:00
|
|
|
|
2025-06-03 22:35:05 -05:00
|
|
|
.tabler--arrow-autofit-height:last-of-type {
|
|
|
|
|
margin-left: auto;
|
|
|
|
|
}
|
2025-07-01 19:49:19 -05:00
|
|
|
|
2025-07-14 23:02:42 -05:00
|
|
|
background: linear-gradient(color-mix(in srgb, var(--accent) 3%, transparent), color-mix(in srgb, var(--accent) 15%, transparent));
|
2025-06-03 22:35:05 -05:00
|
|
|
border-bottom: unset !important;
|
|
|
|
|
cursor: pointer;
|
2025-07-14 23:02:42 -05:00
|
|
|
padding: .65rem;
|
2025-06-03 22:35:05 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
section {
|
2025-07-01 23:18:31 -05:00
|
|
|
padding: 1rem;
|
2025-06-03 22:35:05 -05:00
|
|
|
text-align: start !important;
|
2025-07-01 02:45:02 -05:00
|
|
|
|
|
|
|
|
ul {
|
2025-07-01 23:18:31 -05:00
|
|
|
margin: 0 0 0 -.5rem;
|
2025-06-03 22:35:05 -05:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.last {
|
|
|
|
|
margin-bottom: .8rem;
|
|
|
|
|
}
|
|
|
|
|
|
2025-07-14 23:02:42 -05:00
|
|
|
background-color: color-mix(in srgb, var(--accent) 8%, transparent);
|
2025-06-03 22:35:05 -05:00
|
|
|
border-radius: .8rem .4rem .8rem .4rem;
|
2025-07-14 23:02:42 -05:00
|
|
|
border: .13rem solid var(--accent);
|
|
|
|
|
margin-top: 1.3rem;
|
2025-06-03 22:35:05 -05:00
|
|
|
overflow: clip;
|
|
|
|
|
}
|
|
|
|
|
|
2025-07-01 13:18:44 -05:00
|
|
|
details.styled[open] {
|
|
|
|
|
summary {
|
|
|
|
|
border-bottom: .1rem solid var(--accent) !important;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2025-07-14 23:02:42 -05:00
|
|
|
/* badge text styling */
|
|
|
|
|
.badge {
|
|
|
|
|
border-radius: .2rem;
|
|
|
|
|
border: .1rem solid var(--accent);
|
|
|
|
|
color: var(--link);
|
|
|
|
|
font-size: .8rem;
|
|
|
|
|
font-weight: normal;
|
|
|
|
|
padding: .15rem;
|
|
|
|
|
}
|
|
|
|
|
|
2025-07-01 23:18:31 -05:00
|
|
|
/* card styling */
|
|
|
|
|
.card {
|
2025-07-04 05:12:50 -05:00
|
|
|
background-color: color-mix(in srgb, var(--background) 95%, white);
|
2025-07-01 23:18:31 -05:00
|
|
|
border-radius: 1rem;
|
2025-07-04 05:12:50 -05:00
|
|
|
border: .2rem solid var(--border);
|
2025-07-01 23:18:31 -05:00
|
|
|
gap: .5rem;
|
|
|
|
|
margin-bottom: 1.4rem;
|
|
|
|
|
padding: 1rem;
|
|
|
|
|
|
2025-07-04 05:12:50 -05:00
|
|
|
h4 {
|
|
|
|
|
margin-top: unset !important;
|
2025-07-01 23:18:31 -05:00
|
|
|
margin-bottom: .4rem !important;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.card.last {
|
|
|
|
|
margin-bottom: unset !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.card.tilde-list {
|
|
|
|
|
display: grid;
|
|
|
|
|
grid-template-columns: repeat(auto-fill, minmax(195px, 1fr));
|
|
|
|
|
margin-bottom: unset !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.card.question {
|
|
|
|
|
p {
|
|
|
|
|
margin: .6rem !important;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2025-06-29 02:32:29 -05:00
|
|
|
/* Dashed border */
|
2025-06-02 11:20:03 -05:00
|
|
|
hr.dashed {
|
2025-07-01 02:45:02 -05:00
|
|
|
border: .1rem dashed var(--border);
|
2025-06-02 11:20:03 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Dotted border */
|
|
|
|
|
hr.dotted {
|
2025-07-01 02:45:02 -05:00
|
|
|
border: .1rem dotted var(--border);
|
2025-06-02 11:20:03 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Solid border */
|
|
|
|
|
hr.solid {
|
2025-07-01 02:45:02 -05:00
|
|
|
border: .1rem solid var(--border);
|
2025-06-02 11:20:03 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Rounded border */
|
|
|
|
|
hr.rounded {
|
2025-07-01 02:45:02 -05:00
|
|
|
border: .2rem solid var(--border);
|
2025-06-02 11:20:03 -05:00
|
|
|
border-radius: 5px;
|
2025-07-01 19:49:19 -05:00
|
|
|
}
|
2025-06-02 11:20:03 -05:00
|
|
|
|
2025-07-04 05:12:50 -05:00
|
|
|
/* text formatting, like github kinda */
|
|
|
|
|
.info-box {
|
|
|
|
|
padding: .5rem;
|
|
|
|
|
border: .1rem solid;
|
|
|
|
|
border-radius: .4rem;
|
|
|
|
|
|
|
|
|
|
&.info {
|
|
|
|
|
background-color: color-mix(in srgb, var(--blue) 10%, transparent);
|
|
|
|
|
border-color: var(--blue);
|
|
|
|
|
.icon { color: var(--blue); }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
&.warn {
|
|
|
|
|
background-color: color-mix(in srgb, var(--orange) 10%, transparent);
|
|
|
|
|
border-color: var(--orange);
|
|
|
|
|
.icon { color: var(--orange); }
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2025-06-02 11:20:03 -05:00
|
|
|
/* audio */
|
|
|
|
|
audio {
|
|
|
|
|
border-radius: 3rem;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* summary styling */
|
|
|
|
|
summary {
|
|
|
|
|
display: flex;
|
|
|
|
|
}
|
|
|
|
|
|
2025-07-01 02:45:02 -05:00
|
|
|
/* button link styling */
|
2025-06-29 23:32:45 -05:00
|
|
|
.button {
|
2025-07-01 19:49:19 -05:00
|
|
|
background-color: color-mix(in srgb, var(--accent) 25%, transparent);
|
2025-06-29 23:32:45 -05:00
|
|
|
border-radius: 1rem;
|
|
|
|
|
color: var(--foreground);
|
|
|
|
|
padding: .4rem;
|
|
|
|
|
text-decoration: none;
|
|
|
|
|
text-shadow: none;
|
|
|
|
|
transition: all .2s;
|
2025-07-01 02:45:02 -05:00
|
|
|
white-space: nowrap;
|
|
|
|
|
line-height: 3rem;
|
|
|
|
|
|
|
|
|
|
.icon {
|
|
|
|
|
transform: scale(1.13) translateY(.7rem);
|
|
|
|
|
}
|
2025-06-29 23:32:45 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.button:hover {
|
|
|
|
|
background-color: var(--accent);
|
2025-07-01 19:49:19 -05:00
|
|
|
color: var(--foreground);
|
2025-06-29 23:32:45 -05:00
|
|
|
transition: all .2s;
|
|
|
|
|
}
|
|
|
|
|
|
2025-07-04 05:12:50 -05:00
|
|
|
.button-container {
|
|
|
|
|
margin-bottom: unset !important;
|
|
|
|
|
}
|
|
|
|
|
|
2025-06-30 01:00:20 -05:00
|
|
|
/* focus styling */
|
|
|
|
|
:focus-visible {
|
|
|
|
|
outline: .4rem solid var(--ui-purple) !important;
|
|
|
|
|
border-radius: .2rem;
|
|
|
|
|
z-index: 999999 !important;
|
|
|
|
|
}
|
|
|
|
|
|
2025-07-01 02:45:02 -05:00
|
|
|
/* image-button grid */
|
|
|
|
|
.img-buttons {
|
2025-07-12 21:56:54 -05:00
|
|
|
align-items: normal;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-wrap: wrap;
|
|
|
|
|
font-size: 0 !important;
|
|
|
|
|
gap: 5px;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
margin-inline: auto;
|
2025-07-01 02:45:02 -05:00
|
|
|
|
|
|
|
|
img {
|
2025-07-12 21:56:54 -05:00
|
|
|
height: 31px;
|
2025-07-12 22:50:35 -05:00
|
|
|
image-rendering: crisp-edges !important;
|
2025-07-12 21:56:54 -05:00
|
|
|
margin: unset !important;
|
|
|
|
|
transition: transform 0.2s;
|
2025-07-12 22:50:35 -05:00
|
|
|
width: 88px;
|
2025-07-12 21:56:54 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.generic {
|
|
|
|
|
align-content: center;
|
|
|
|
|
background-color: color-mix(in srgb, var(--background) 90%, white);
|
2025-07-12 22:50:35 -05:00
|
|
|
border: solid .15rem;
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
color: var(--foreground);
|
2025-07-12 21:56:54 -05:00
|
|
|
font-size: .95rem !important;
|
|
|
|
|
height: 31px;
|
|
|
|
|
text-align: center;
|
2025-07-01 02:45:02 -05:00
|
|
|
transition: transform 0.2s;
|
2025-07-12 21:56:54 -05:00
|
|
|
width: 88px;
|
2025-07-01 02:45:02 -05:00
|
|
|
}
|
|
|
|
|
|
2025-07-12 21:56:54 -05:00
|
|
|
.generic:hover, img:hover {
|
2025-07-01 02:45:02 -05:00
|
|
|
transform: scale(2);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2025-07-14 20:43:25 -05:00
|
|
|
/* spoiler text */
|
|
|
|
|
._spoiler {
|
|
|
|
|
filter: blur(.4rem) contrast(200%);
|
|
|
|
|
transition: 0.2s;
|
|
|
|
|
|
|
|
|
|
&:hover {
|
|
|
|
|
filter: unset !important;
|
|
|
|
|
transition: 0.2s;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2025-07-14 18:48:05 -05:00
|
|
|
/* ------------------
|
|
|
|
|
- nsfw toggle group -
|
|
|
|
|
------------------ */
|
|
|
|
|
|
|
|
|
|
.nsfw-toggle-holder {
|
|
|
|
|
background-color: color-mix(in srgb, var(--background) 95%, white);
|
|
|
|
|
border-radius: 1rem;
|
|
|
|
|
border: .2rem solid var(--border);
|
|
|
|
|
color: var(--foreground);
|
|
|
|
|
padding: .5rem;
|
|
|
|
|
position: fixed;
|
|
|
|
|
max-width: 30rem;
|
|
|
|
|
margin-left: .4rem;
|
|
|
|
|
z-index: 30;
|
|
|
|
|
right: .4rem;
|
|
|
|
|
top: 3rem;
|
|
|
|
|
transition: 0.2s;
|
|
|
|
|
|
|
|
|
|
/* inital "shrunken" state */
|
|
|
|
|
opacity: .5;
|
|
|
|
|
scale: .75;
|
|
|
|
|
transform-origin: top right;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* hide captions when unhovered */
|
|
|
|
|
.caption {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
&:hover {
|
|
|
|
|
transition: 0.2s;
|
|
|
|
|
|
|
|
|
|
/* hovered "full" state */
|
|
|
|
|
opacity: 1;
|
|
|
|
|
scale: 1;
|
|
|
|
|
|
|
|
|
|
.caption {
|
|
|
|
|
opacity: .9;
|
|
|
|
|
display: unset;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.nsfw-toggle, .spoil-nsfw-toggle {
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* hide the spoil option if nsfw itself is disabled */
|
|
|
|
|
.spoil-nsfw-toggle {
|
|
|
|
|
display: none;
|
|
|
|
|
margin-top: 1rem;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
&:has(input[type="checkbox"]#view-nsfw-content:checked) .spoil-nsfw-toggle {
|
|
|
|
|
display: inherit !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* shrink it even more if on a small display */
|
|
|
|
|
@media screen and (max-width: 580px) {
|
|
|
|
|
scale: .5;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* _is-nsfw class for elements that are "nsfw" - will be hidden and spoiled by default */
|
|
|
|
|
._is-nsfw {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* inverse to remove elements if they aren't nsfw while the option is toggled */
|
|
|
|
|
._is-nsfw-inverse {
|
|
|
|
|
display: inherit;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* show if enabled */
|
|
|
|
|
html:has(input[type="checkbox"]#view-nsfw-content:checked) {
|
|
|
|
|
._is-nsfw {
|
|
|
|
|
display: inherit;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
._is-nsfw-inverse {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* blue/spoiler if enabled */
|
|
|
|
|
html:has(input[type="checkbox"]#spoil-nsfw-content:checked) {
|
|
|
|
|
._is-nsfw {
|
|
|
|
|
filter: blur(.4rem) contrast(200%);
|
|
|
|
|
transition: 0.2s;
|
|
|
|
|
|
|
|
|
|
&:hover {
|
|
|
|
|
filter: unset !important;
|
|
|
|
|
transition: 0.2s;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* _always-show to ignore the "spoiler" option */
|
|
|
|
|
._always-show {
|
|
|
|
|
filter: unset !important;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2025-06-02 11:20:03 -05:00
|
|
|
/* ---------------
|
|
|
|
|
- alt text popup -
|
|
|
|
|
--------------- */
|
|
|
|
|
|
|
|
|
|
.alt-popup {
|
|
|
|
|
position: fixed;
|
|
|
|
|
text-transform: none !important;
|
|
|
|
|
background-color: color-mix(in srgb, var(--background) 85%, transparent);
|
|
|
|
|
backdrop-filter: blur(.5rem);
|
|
|
|
|
color: var(--foreground);
|
|
|
|
|
padding: .5rem;
|
|
|
|
|
border: solid .01rem var(--accent);
|
|
|
|
|
border-radius: .5rem;
|
|
|
|
|
font-size: 1rem;
|
|
|
|
|
max-width: 30rem;
|
|
|
|
|
z-index: 1000;
|
|
|
|
|
pointer-events: none;
|
|
|
|
|
opacity: 0;
|
|
|
|
|
transition: opacity 0.4s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* ╭────────────────────────────────────────╮
|
|
|
|
|
/ │ ____ _ _ │
|
|
|
|
|
/ │ / __ \ _ __ ___ ___ __| (_) __ _ │
|
|
|
|
|
/ │ / / _` | '_ ` _ \ / _ \/ _` | |/ _` | │
|
|
|
|
|
/ │ | | (_| | | | | | | __/ (_| | | (_| | │
|
|
|
|
|
/ │ \ \__,_|_| |_| |_|\___|\__,_|_|\__,_| │
|
|
|
|
|
/ │ \____/ │
|
|
|
|
|
/ ╰────────────────────────────────────────╯
|
|
|
|
|
/ @media / at-media - styling depending on browser configuration / settings
|
|
|
|
|
/ other sorts of "Theming Jank" also goes in here for the sake of uniforming everything */
|
|
|
|
|
|
|
|
|
|
/* disable certain animations if user has animations disabled on their system */
|
|
|
|
|
|
|
|
|
|
@media (prefers-reduced-motion: reduce) {
|
|
|
|
|
body {
|
|
|
|
|
background: var(--background) !important;
|
|
|
|
|
animation: unset !important;
|
|
|
|
|
-moz-animation: unset !important;
|
|
|
|
|
-webkit-animation: unset !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* animations aren't important for anything so we can simply just disable them on every element then choose which ones not to disable */
|
|
|
|
|
* {
|
|
|
|
|
transition: none !important;
|
|
|
|
|
animation: unset !important;
|
|
|
|
|
-moz-animation: unset !important;
|
|
|
|
|
-webkit-animation: unset !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* fedi icon on /me should keep its animation (temp, find a better solution later) */
|
|
|
|
|
.fedi-icon {
|
|
|
|
|
animation: opacity-blink 4s infinite !important;
|
|
|
|
|
}
|
2025-07-01 19:49:19 -05:00
|
|
|
|
2025-06-02 11:20:03 -05:00
|
|
|
.fedi-icon-2 {
|
|
|
|
|
animation: opacity-blink-reverse 4s infinite !important;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@media screen and (max-width: 1083px) {
|
2025-07-01 02:45:02 -05:00
|
|
|
details.styled {
|
|
|
|
|
section {
|
2025-07-01 19:49:19 -05:00
|
|
|
|
2025-07-01 02:45:02 -05:00
|
|
|
/* reset margins for list on mobile view */
|
2025-06-02 11:20:03 -05:00
|
|
|
ul {
|
2025-07-01 02:45:02 -05:00
|
|
|
margin: unset !important;
|
2025-06-02 11:20:03 -05:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-07-01 19:49:19 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* different styling for elements in dark mode
|
|
|
|
|
must also be applied to the html element below - needed as to not break with users using their browser settings or manually setting the theme through the website */
|
|
|
|
|
html:not([data-theme="light"]) {
|
|
|
|
|
@media (prefers-color-scheme: dark) {
|
|
|
|
|
.button:hover {
|
|
|
|
|
color: var(--background);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
html[data-theme="dark"] {
|
|
|
|
|
.button:hover {
|
|
|
|
|
color: var(--background);
|
|
|
|
|
}
|
2025-06-02 11:20:03 -05:00
|
|
|
}
|