site/styles/base.css

1651 lines
46 KiB
CSS
Raw Normal View History

/*
/ _ _
/ ___| |_ _ _| | ___ ___ ___ ___
/ / __| __| | | | |/ _ \ / __/ __/ __|
/ \__ \ |_| |_| | | __/| (__\__ \__ \
/ |___/\__|\__, |_|\___(_)___|___/___/
/ |___/
/
/ style.css - synth.download styling featuring these fancy ass thingies because why the hell not */
/* --------------------------------------------------------------------
=======================================================================
-------------------------------------------------------------------- */
/*
/ _ _ _ _ _ _
/ __ _ ___ ___ ___ ___ ___(_) |__ (_) (_) |_ _ _
/ / _` |/ __/ __/ _ \/ __/ __| | '_ \| | | | __| | | |
/ | (_| | (_| (_| __/\__ \__ \ | |_) | | | | |_| |_| |
/ \__,_|\___\___\___||___/___/_|_.__/|_|_|_|\__|\__, |
/ |___/
/
/ accessibility - choosable accessibility settings */
/* - font settings - */
/* jetbrains mono */
:root:has(#font-jbm:checked) {
--font-family: 'JetBrains Mono', 'Segoe UI', Tahoma, Geneva, Verdana, system-ui, sans-serif;
.navbar .nav-base.nav-right.nav-systray span {
margin: 0px -.1rem;
}
}
/* atkinson hyperlegible next */
:root:has(#font-ahn:checked) {
--font-family: 'Atkinson Hyperlegible Next', 'Segoe UI', Tahoma, Geneva, Verdana, system-ui, sans-serif;
}
/* inter */
:root:has(#font-inter:checked) {
--font-family: 'Inter', 'Segoe UI', Tahoma, Geneva, Verdana, system-ui, sans-serif;
}
/* (browser) sans serif */
:root:has(#font-sans-serif:checked) {
--font-family: sans-serif, 'Segoe UI', Tahoma, Geneva, Verdana, system-ui;
}
/* (browser) serif */
:root:has(#font-serif:checked) {
--font-family: serif, 'Segoe UI', Tahoma, Geneva, Verdana, system-ui, sans-serif;
}
/* (browser) monospace */
:root:has(#font-monospace:checked) {
--font-family: monospace, 'Segoe UI', Tahoma, Geneva, Verdana, system-ui, sans-serif;
}
/* - misc - */
/* disable forced uncapitalization */
:root:has(#uncapitalization:checked) {
body {
text-transform: none !important;
}
}
/* disable background gradient */
:root:has(#disable-bg:checked) {
body {
background: var(--background) !important;
}
}
/* disable window animations */
:root:has(#disable-animations:checked) {
.window {
animation: unset !important;
transition: unset !important;
}
2025-05-27 00:53:32 -05:00
.window:hover {
transition: unset !important;
animation: unset !important;
box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px !important;
}
.navbar {
transition: unset !important;
}
2025-05-27 00:53:32 -05:00
.navbar:hover {
transition: unset !important;
animation: unset !important;
background-color: color-mix(in srgb, var(--accent) 30%, transparent) !important;
}
}
/* disable custom alt text popup */
:root:has(#disable-alttext:checked) {
.alt-popup {
display: none !important;
}
}
/* --------------------------------------------------------------------
=======================================================================
-------------------------------------------------------------------- */
/*
/ _ _ _
/ ___| |_ _ _| (_)_ __ __ _
/ / __| __| | | | | | '_ \ / _` |
/ \__ \ |_| |_| | | | | | | (_| |
/ |___/\__|\__, |_|_|_| |_|\__, |
/ |___/ |___/
/
/ styling - regular styling for regular/global html elements */
: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);
}
/* ----------------------------------
- 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;
2025-05-27 00:53:32 -05:00
margin: unset !important;
/* idk why it does that */
}
/* text formatting and config stuff */
/* headings */
2025-05-27 00:53:32 -05:00
h1,
h1 a {
color: var(--foreground);
font-size: 2rem;
text-decoration: none;
}
/* apparently having more than one h1 is against web standards
but i prefer how it looks so i just use the same styling again */
2025-05-27 00:53:32 -05:00
h2,
h2 a {
color: var(--foreground);
font-size: 2rem;
text-decoration: none;
}
2025-05-27 00:53:32 -05:00
h3,
h3 a {
font-size: 2rem;
}
/* text */
2025-05-27 00:53:32 -05:00
p,
li,
button {
font-size: 1.125rem;
[class^="tabler--"] {
transform: scale(1.13);
}
}
/* links should look good i think */
a {
font-size: 1.125rem;
color: var(--accent);
transition: 0.2s;
}
a:hover {
transition: 0.2s;
text-shadow: 0em 0em 0.25em var(--accent);
}
/* smol text */
2025-05-27 00:53:32 -05:00
small,
small a {
font-size: 0.875rem;
}
/* lists need some styling */
li {
margin-left: -1em;
padding-bottom: 18px;
}
/* gay ass text */
.rainbow {
animation: 2s linear infinite rainbow;
-webkit-animation: 2s linear infinite rainbow;
-moz-animation: 2s linear infinite rainbow;
}
/* heading 1 is also clickable */
h1 a:hover {
text-decoration: underline;
}
/* the tabler icons svgs styling */
2025-05-27 00:53:32 -05:00
.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-05-27 00:53:32 -05:00
/* Dashed border */
hr.dashed {
border-top: .1rem dashed var(--border);
}
/* Dotted border */
hr.dotted {
border-top: .1rem dotted var(--border);
}
/* Solid border */
hr.solid {
border-top: .1rem solid var(--border);
}
2025-05-27 00:53:32 -05:00
/* Rounded border */
hr.rounded {
border-top: .2rem solid var(--border);
border-radius: 5px;
}
/* audio */
audio {
border-radius: 3rem;
}
/* summary styling */
summary {
display: flex;
2025-05-27 00:53:32 -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;
}
/* --------------------------------------------------------------------
=======================================================================
-------------------------------------------------------------------- */
/*
/ _
/ _ __ __ ___ _| |__ __ _ _ __
/ | '_ \ / _` \ \ / / '_ \ / _` | '__|
/ | | | | (_| |\ V /| |_) | (_| | |
/ |_| |_|\__,_| \_/ |_.__/ \__,_|_|
/
/ navbar - styling the navigation bar / panel that sits on the top of the page at all times */
.navbar {
display: flex;
flex-direction: row;
max-height: 1.8em !important;
max-width: 100%;
min-height: 1.8em !important;
min-width: 100%;
position: fixed;
top: 0 !important;
2025-05-27 00:53:32 -05:00
padding: .4rem 0 .4rem 0;
2025-05-28 23:33:19 -05:00
z-index: 100;
align-content: center;
color: var(--foreground);
vertical-align: middle;
transition: .2s background-color;
.nav-base {
padding: 0px .2em !important;
max-width: fit-content;
align-content: center;
2025-05-27 00:53:32 -05:00
outline: .13rem solid var(--border);
border-radius: 1rem;
height: 1.9rem;
}
2025-05-27 00:53:32 -05:00
.nav-left {
2025-05-27 00:53:32 -05:00
margin-left: .6rem !important;
padding: 0px .5rem .1rem !important;
text-decoration: unset !important;
}
2025-05-27 00:53:32 -05:00
.nav-baselink {
background-color: var(--accent);
color: var(--background);
2025-05-27 00:53:32 -05:00
margin-left: .4rem !important;
outline-color: color-mix(in srgb, var(--accent) 60%, transparent);
padding: .13rem;
.synth-icon {
height: 2rem;
margin-right: 1rem;
pointer-events: none;
transform: scaleX(-1) scale(1.5) translateX(-.2rem) translateY(.1rem);
transition: all .2s ease-out;
width: 2rem;
}
}
2025-05-27 00:53:32 -05:00
.nav-baselink:hover {
.synth-icon {
transition: all .2s ease-out;
transform: scaleX(-1) scale(1.5) translateX(-.2rem) translateY(.2rem) rotate(10deg);
}
}
2025-05-27 00:53:32 -05:00
.nav-desktop {
overflow: hidden;
}
.nav-mobile-menu {
display: none;
}
2025-05-27 00:53:32 -05:00
.nav-links {
background-color: var(--background);
color: var(--foreground);
2025-05-27 00:53:32 -05:00
overflow: clip;
position: relative;
text-shadow: none;
transition: all .3s;
.text {
opacity: 0;
position: absolute;
transition: all .3s;
pointer-events: none;
white-space: nowrap;
}
[class^="tabler--"] {
transform: scale(1.1);
transition: all .3s;
}
}
.nav-links:hover {
padding-right: 9rem !important;
padding-bottom: 7rem !important;
transition: all .3s;
.text {
opacity: 1;
transform: scale(1.5) translateX(-.4rem);
transition: all .3s;
}
[class^="tabler--"] {
transform: scale(5) translateY(.9rem) translateX(.4rem) rotate(10deg);
transition: all .3s;
}
}
2025-05-27 00:53:32 -05:00
.nav-home:hover {
background-color: color-mix(in srgb, var(--accent) 20%, var(--background));
color: var(--foreground);
2025-05-27 00:53:32 -05:00
outline-color: color-mix(in srgb, var(--accent) 60%, transparent);
}
2025-05-27 00:53:32 -05:00
.nav-notebook:hover {
background-color: color-mix(in srgb, var(--purple) 20%, var(--background));
color: var(--foreground);
outline-color: color-mix(in srgb, var(--purple) 60%, transparent);
.text {
transform: scale(1.5) translateX(0rem);
}
}
.nav-webmaster:hover {
background-color: color-mix(in srgb, var(--green) 20%, var(--background));
color: var(--foreground);
outline-color: color-mix(in srgb, var(--green) 60%, transparent);
.text {
transform: scale(1.1) translateX(-.8rem);
}
}
.nav-donate:hover {
background-color: color-mix(in srgb, var(--pink) 20%, var(--background));
color: var(--foreground);
outline-color: color-mix(in srgb, var(--pink) 60%, transparent);
.text {
transform: scale(1.5) translateX(-.2rem);
}
}
.nav-right {
2025-05-27 00:53:32 -05:00
padding: 0px .5rem .1rem !important;
margin-right: .6rem !important;
}
2025-05-27 00:53:32 -05:00
.nav-settings {
background-color: var(--accent);
color: var(--background);
cursor: pointer;
2025-05-27 00:53:32 -05:00
margin-left: auto !important;
outline-color: color-mix(in srgb, var(--accent) 60%, transparent);
padding: unset !important; /* unset the padding for the button itself so the button can take the padding to make the entire button clickable */
2025-05-27 00:53:32 -05:00
input[type="checkbox"] {
left: -100vw;
position: absolute;
}
label {
cursor: pointer;
overflow: hidden !important;
padding: .3rem .5rem !important;
position: relative;
[class^="tabler--"] {
padding: 0 .5rem !important;
pointer-events: none;
transform: translateY(.1rem) scale(1.5);
transition: all 1.3s;
}
}
label:hover {
[class^="tabler--"] {
transform: translateY(.1rem) scale(1.5) rotate(360deg);
transition: all 1.3s;
}
}
ul {
background-color: var(--background);
2025-05-27 00:53:32 -05:00
border-radius: 1rem;
border: var(--accent) solid .15rem;
cursor: initial !important; /* reset the cursor otherwise it uses the pointer cursor */
margin-top: 1.2rem !important;
max-height: 27rem;
max-width: 17rem;
min-height: 27rem;
min-width: 17rem;
overflow: scroll;
position: absolute;
2025-05-27 00:53:32 -05:00
right: .4rem;
visibility: hidden;
/* inital "hidden" state, used for providing animation when activated */
opacity: 0;
scale: .5;
transform-origin: top right;
transition: opacity .3s, scale .3s, visibility .3s;
li {
border-radius: 1rem;
color: var(--foreground);
list-style-type: none;
margin-left: -2rem;
padding: .4rem;
span {
2025-05-27 00:53:32 -05:00
padding: .1rem 0px .1rem 0px !important;
}
h2 {
margin: 0 !important;
}
}
}
input[type="checkbox"]:checked ~ ul {
/* makes the menu visibile when activated and makes it appear from the top right */
opacity: 1;
scale: 1;
transition: opacity .3s, scale .3s, visibility .3s;
visibility: visible;
}
}
2025-05-27 00:53:32 -05:00
.nav-systray {
background-color: var(--background);
color: var(--foreground);
padding: 0px .1rem;
min-width: 6.45rem;
2025-05-27 00:53:32 -05:00
margin-right: .4rem !important;
}
2025-05-27 00:53:32 -05:00
a,
p {
margin: unset !important;
}
2025-05-27 00:53:32 -05:00
small {
opacity: .7;
}
2025-05-27 00:53:32 -05:00
svg {
color: var(--foreground) !important;
}
}
.navbar:hover {
2025-05-27 00:53:32 -05:00
transition: .2s all;
background-color: color-mix(in srgb, var(--accent) 40%, transparent);
border-bottom: solid .2rem var(--accent);
}
/* --------------------------------------------------------------------
=======================================================================
-------------------------------------------------------------------- */
/*
/ _ _
/ __ _(_)_ __ __| | _____ _____
/ \ \ /\ / / | '_ \ / _` |/ _ \ \ /\ / / __|
/ \ V V /| | | | | (_| | (_) \ V V /\__ \
/ \_/\_/ |_|_| |_|\__,_|\___/ \_/\_/ |___/
/
/ windows - related styling for the windows on pages */
.window {
summary {
display: inline-flex;
min-width: 100%;
background-color: color-mix(in srgb, var(--accent) 20%, var(--background));
opacity: .8;
text-align: center;
vertical-align: middle;
overflow: clip;
transition: .2s opacity;
div:first-child {
background: color-mix(in srgb, var(--accent) 40%, transparent);
padding: .4rem .4rem .2rem 1rem;
border-right: .2rem solid var(--accent);
2025-04-28 19:31:29 -05:00
border-bottom: .2rem solid var(--accent);
border-bottom-right-radius: 1rem;
2025-04-28 19:31:29 -05:00
margin-bottom: -.2rem;
span {
background-color: var(--foreground);
}
}
a {
padding: .3rem 0rem .3rem .5rem;
text-decoration: none;
color: var(--foreground);
}
a:hover {
text-decoration: underline;
}
[class^="tabler--"] {
transform: scale(1.1);
}
div:nth-child(3) {
margin-left: auto !important;
padding: .2rem .5rem .2rem 0rem;
2025-05-27 00:53:32 -05:00
span {
text-align: center;
vertical-align: middle;
background-color: var(--foreground);
}
/* maximize button (which does nothing) */
span:nth-child(2) {
opacity: .6;
cursor: not-allowed;
2025-05-27 00:53:32 -05:00
}
}
/* close button */
div:nth-child(4) {
background: color-mix(in srgb, var(--accent) 40%, transparent);
padding: .4rem .5rem .2rem .6rem;
border-left: .2rem solid var(--accent);
2025-04-28 19:31:29 -05:00
border-bottom: .2rem solid var(--accent);
border-bottom-left-radius: 1rem;
2025-04-28 19:31:29 -05:00
margin-bottom: -.2rem;
color: var(--foreground);
transition: background .2s;
transition: background-color .2s;
}
/* close button (animated on hover) */
div:nth-child(4):hover {
background: var(--red);
transition: background .2s;
span {
background-color: var(--background);
transition: background-color .2s;
}
}
}
2025-05-27 00:53:32 -05:00
main,
section,
article {
padding: .8rem;
}
background-color: var(--background);
color: var(--foreground);
border: var(--accent) solid .15rem;
border-radius: .6rem;
max-width: 60em;
overflow: clip;
margin-left: auto;
margin-right: auto;
margin-bottom: 2em;
transition: .2s box-shadow;
animation-fill-mode: backwards;
box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}
/* window styling when hovered */
.window:hover {
summary {
opacity: 1;
transition: .2s opacity;
}
}
/* window styling when open (default state) */
.window[open] {
summary {
opacity: 1;
border-bottom: .1rem solid var(--accent);
transition: .2s opacity;
}
border-radius: 2rem .6rem 2rem .6rem;
}
.window:hover {
box-shadow: var(--accent) 0px 0px 0px .3rem;
transition: .2s box-shadow;
}
/* window when its the first one on the page */
.window:nth-child(2) {
margin-top: 5rem;
animation: .3s ease-out .2s 1 window-appear;
animation-fill-mode: backwards;
}
/* rest of the windows if they exist, to finish the rest of the animations */
.window:nth-child(3) {
animation: .3s ease-out .4s 1 window-appear;
animation-fill-mode: backwards;
}
.window:nth-child(4) {
animation: .3s ease-out .6s 1 window-appear;
animation-fill-mode: backwards;
}
.window:nth-child(5) {
animation: .3s ease-out .8s 1 window-appear;
animation-fill-mode: backwards;
}
.window:nth-child(6) {
animation: .3s ease-out 1s 1 window-appear;
animation-fill-mode: backwards;
}
.window:nth-child(7) {
animation: .3s ease-out 1.2s 1 window-appear;
animation-fill-mode: backwards;
}
.window:nth-child(8) {
animation: .3s ease-out 1.4s 1 window-appear;
animation-fill-mode: backwards;
}
/* --------------------------------------------------------------------
=======================================================================
-------------------------------------------------------------------- */
/*
/ __ _
/ / _| ___ ___ | |_ ___ _ __
/ | |_ / _ \ / _ \| __/ _ \ '__|
/ | _| (_) | (_) | || __/ |
/ |_| \___/ \___/ \__\___|_|
/
/ footer - related styling for the footer window on all pages */
footer {
max-width: 30em;
margin-left: auto;
margin-right: auto;
2025-05-27 00:53:32 -05:00
details>summary>a {
padding: .3rem 0rem .3rem 1rem !important;
}
2025-05-27 00:53:32 -05:00
main,
section,
article {
padding: 1rem !important;
}
.fediring {
a {
display: inline-grid;
font-size: 1.5rem;
color: var(--green);
margin-bottom: .5em;
vertical-align: bottom;
}
2025-05-27 00:53:32 -05:00
[href="https://fediring.net"] {
color: var(--foreground);
background: color-mix(in srgb, var(--purple) 25%, transparent);
padding: 0px 10px 0px 10px;
border-radius: 5px;
}
2025-05-27 00:53:32 -05:00
[href="https://keithhacks.cyou/furryring.php"] {
color: var(--foreground);
background: color-mix(in srgb, var(--sapphire) 25%, transparent);
padding: 0px 10px 0px 10px;
border-radius: 5px;
}
2025-05-27 00:53:32 -05:00
[href="https://stellophiliac.github.io/roboring"] {
color: var(--foreground);
background: color-mix(in srgb, var(--comment) 25%, transparent);
padding: 0px 10px 0px 10px;
border-radius: 5px;
}
2025-05-27 00:53:32 -05:00
[href*="prev"] {
background: color-mix(in srgb, var(--orange) 25%, transparent);
padding: 5px 6px;
border-radius: 5px;
2025-05-27 00:53:32 -05:00
span {
background-color: var(--orange) !important;
}
}
2025-05-27 00:53:32 -05:00
[href*="next"] {
background: color-mix(in srgb, var(--green) 25%, transparent);
padding: 5px 6px;
border-radius: 5px;
2025-05-27 00:53:32 -05:00
span {
background-color: var(--green) !important;
}
}
}
2025-05-27 00:53:32 -05:00
p,
a {
text-align: center;
font-size: 0.938rem;
margin: .2em 0px .2em;
text-decoration: none;
}
2025-05-27 00:53:32 -05:00
img {
padding-top: 18px;
max-width: 30%;
display: flex;
margin-left: auto;
margin-right: auto;
transition: 1s animation;
}
2025-05-27 00:53:32 -05:00
img:hover {
animation: spin 5s infinite linear;
}
2025-05-27 00:53:32 -05:00
.inner-footer {
text-align: center;
padding-top: 14px;
padding-bottom: 14px;
2025-05-27 00:53:32 -05:00
a {
width: 3rem;
height: 3rem;
display: inline-block;
vertical-align: middle;
align-content: center;
border-radius: .5rem;
span {
transform: scale(1.58);
}
}
}
}
/* --------------------------------------------------------------------
=======================================================================
-------------------------------------------------------------------- */
/*
/ _ _ _
/ __ _ _ __ (_)_ __ ___ __ _| |_(_) ___ _ __ ___
/ / _` | '_ \| | '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
/ | (_| | | | | | | | | | | (_| | |_| | (_) | | | \__ \
/ \__,_|_| |_|_|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
/
/ animations - reusable css animations */
@keyframes window-appear {
2025-05-27 00:53:32 -05:00
0% {
opacity: 0;
transform: scale(0.5, 0.5);
}
100% {
opacity: 1;
transform: scale(1, 1);
}
}
@keyframes rainbow {
2025-05-27 00:53:32 -05:00
0% {
filter: hue-rotate(0deg) contrast(150%) saturate(150%);
}
100% {
filter: hue-rotate(360deg) contrast(150%) saturate(150%);
}
}
@keyframes bg-gradient {
2025-05-27 00:53:32 -05:00
0% {
background-position: 0% 27%
}
50% {
background-position: 100% 74%
}
100% {
background-position: 0% 27%
}
}
@keyframes opacity-blink {
0% { opacity: 0% }
5% { opacity: 100% }
45% { opacity: 100% }
50% { opacity: 0% }
100% { opacity: 0% }
}
@keyframes opacity-blink-reverse {
0% { opacity: 100% }
5% { opacity: 0% }
45% { opacity: 0% }
50% { opacity: 100% }
100% { opacity: 100% }
}
/* --------------------------------------------------------------------
=======================================================================
-------------------------------------------------------------------- */
/*
/ ____ _ _
/ / __ \ _ __ ___ ___ __| (_) __ _
/ / / _` | '_ ` _ \ / _ \/ _` | |/ _` |
/ | | (_| | | | | | | __/ (_| | | (_| |
/ \ \__,_|_| |_| |_|\___|\__,_|_|\__,_|
/ \____/
/
2025-05-27 00:53:32 -05:00
/ @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;
}
.fedi-icon-2 {
animation: opacity-blink-reverse 4s infinite !important;
}
2025-05-27 00:53:32 -05:00
}
2025-05-27 00:53:32 -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 */
2025-05-27 00:53:32 -05:00
@media (prefers-color-scheme: dark) {
html:not([data-theme="light"]) {
.navbar {
.nav-home:hover {
background-color: var(--accent);
color: var(--background);
}
.nav-notebook:hover {
background-color: var(--purple);
color: var(--background);
}
.nav-webmaster:hover {
background-color: var(--green);
color: var(--background);
}
.nav-donate:hover {
background-color: var(--pink);
color: var(--background);
}
}
}
}
2025-05-27 00:53:32 -05:00
html[data-theme="dark"] {
.navbar {
.nav-home:hover {
background-color: var(--accent);
color: var(--background);
}
2025-05-27 00:53:32 -05:00
.nav-notebook:hover {
background-color: var(--purple);
color: var(--background);
}
2025-05-27 00:53:32 -05:00
.nav-webmaster:hover {
background-color: var(--green);
color: var(--background);
}
2025-05-27 00:53:32 -05:00
.nav-donate:hover {
background-color: var(--pink);
color: var(--background);
}
}
}
/* modify widths and spacing depending on the size of the display */
@media screen and (max-width: 1083px) {
.navbar {
.nav-desktop {
display: none !important;
}
2025-05-27 00:53:32 -05:00
.nav-mobile-menu {
display: inline-block;
max-width: 3rem;
min-width: 3rem;
position: relative;
input[type="checkbox"] {
left: -100vw;
position: absolute;
}
2025-05-27 00:53:32 -05:00
label {
border-radius: 1rem;
cursor: pointer;
display: inline-block;
left: -.5rem;
margin-right: .1rem;
max-height: 2rem;
max-width: 3rem;
min-height: 2rem;
min-width: 3rem;
overflow: hidden !important;
padding-right: 1rem;
position: relative;
.synth-icon {
transform: scaleX(-1) scale(1.5) translateX(-.5rem) translateY(.1rem);
}
}
label:hover {
.synth-icon {
transform: scaleX(-1) scale(1.5) translateX(-.5rem) translateY(.2rem) rotate(10deg);
}
}
ul {
background-color: var(--background);
2025-05-27 00:53:32 -05:00
border-radius: 1rem;
border: var(--accent) solid .15rem;
height: max-content;
left: 0;
margin-top: .4rem !important;
position: absolute;
visibility: hidden;
2025-05-27 00:53:32 -05:00
width: max-content;
/* inital "hidden" state, used for providing animation when activated */
opacity: 0;
scale: .5;
transform-origin: top left;
transition: opacity .3s, scale .3s, visibility .3s;
li {
2025-05-27 00:53:32 -05:00
border-radius: 1rem;
list-style-type: none;
2025-05-27 00:53:32 -05:00
margin: .5rem .5rem .5rem -1.9rem;
overflow: clip;
padding: .7rem;
transition: .2s all;
a {
color: var(--foreground);
text-decoration: none;
text-shadow: unset;
}
[class^="tabler--"] {
padding-right: .3em;
transition: .2s all;
}
}
li:hover {
transition: .2s all;
[class^="tabler--"] {
transform: scale(2.5) translateX(-.1rem) translateY(.1rem) rotate(15deg);
transition: .2s all;
}
}
.nav-home:hover {
background-color: color-mix(in srgb, var(--accent) 20%, transparent);
a {
color: var(--foreground);
}
}
.nav-notebook:hover {
background-color: color-mix(in srgb, var(--purple) 20%, transparent);
a {
color: var(--foreground);
}
}
.nav-webmaster:hover {
background-color: color-mix(in srgb, var(--green) 20%, transparent);
a {
color: var(--foreground);
}
}
.nav-donate:hover {
background-color: color-mix(in srgb, var(--pink) 20%, transparent);
a {
color: var(--foreground);
}
}
}
input[type="checkbox"]:checked ~ ul {
/* makes the menu visibile when activated and makes it appear from the top right */
opacity: 1;
scale: 1;
transition: opacity .3s, scale .3s, visibility .3s;
visibility: visible;
}
}
2025-05-27 00:53:32 -05:00
.nav-links {
display: none !important;
}
2025-05-27 00:53:32 -05:00
.nav-settings {
span {
2025-05-27 00:53:32 -05:00
padding: 0 .4rem !important;
}
}
}
.window:not(#footer) {
2025-05-27 00:53:32 -05:00
summary {
div:first-child {
padding: .3rem .4rem .3rem .4rem;
}
div:nth-child(3) {
display: none !important;
}
div:nth-child(4) {
margin-left: auto !important;
}
}
animation: unset !important;
2025-05-27 00:53:32 -05:00
main,
section,
article {
padding: .5rem;
}
2025-05-27 00:53:32 -05:00
border-top: var(--accent) solid .15rem;
border-bottom: var(--accent) solid .15rem;
border-left: unset !important;
border-right: unset !important;
border-radius: unset !important;
2025-05-27 00:53:32 -05:00
margin-bottom: .8em;
}
/* window when its the first one on the page */
.window:nth-child(2) {
margin-top: 4rem;
}
2025-05-27 00:53:32 -05:00
@media (prefers-color-scheme: dark) {
html:not([data-theme="light"]) {
.navbar .nav-mobile-menu ul {
.nav-home:hover a {
color: var(--accent);
}
.nav-notebook:hover a {
color: var(--purple);
}
.nav-webmaster:hover a {
color: var(--green);
}
.nav-donate:hover a {
color: var(--pink);
}
}
}
}
html[data-theme="dark"] {
.navbar .nav-mobile-menu ul {
.nav-home:hover a {
color: var(--accent);
}
.nav-notebook:hover a {
color: var(--purple);
}
.nav-webmaster:hover a {
color: var(--green);
}
.nav-donate:hover a {
color: var(--pink);
}
}
}
}
@media screen and (max-width: 540px) {
details#footer.window {
border-top: var(--accent) solid .15rem;
border-bottom: var(--accent) solid .15rem;
border-left: unset !important;
border-right: unset !important;
border-radius: unset !important;
2025-05-27 00:53:32 -05:00
margin-bottom: .8em;
}
}
/* --------------------------------------------------------------------
=======================================================================
-------------------------------------------------------------------- */
/*
/ __ _ _
/ _ __ __ _ __ _ ___ / _(_)_ __ __| |
/ | '_ \ / _` |/ _` |/ _ \ |_| | '_ \ / _` |
/ | |_) | (_| | (_| | __/ _| | | | | (_| |
/ | .__/ \__,_|\__, |\___|_| |_|_| |_|\__,_|
/ |_| |___/
/
/ pagefind - pagefind search widget styling */
/* #search {
padding: .2rem;
} */
/* --------------------------------------------------------------------
=======================================================================
-------------------------------------------------------------------- */
/* --------------------------------------------------------------------
=======================================================================
-------------------------------------------------------------------- */
/* --------------------------------------------------------------------
=======================================================================
-------------------------------------------------------------------- */
/*
/ _
/ | |__ ___ _ __ ___ ___
/ | '_ \ / _ \| '_ ` _ \ / _ \
/ | | | | (_) | | | | | | __/
/ |_| |_|\___/|_| |_| |_|\___|
/
/ home - specific styling for the main synth.download home page (index.md) */
#site.window.home {
2025-05-27 00:53:32 -05:00
main,
section {
a:nth-child(2) {
cursor: default;
}
#logo {
width: 40rem;
height: auto;
line-break: strict;
margin-bottom: 0.5rem;
text-align: center;
cursor: default;
}
h1 {
margin-top: -1rem;
margin-bottom: 1px;
}
p {
margin-top: 3px;
}
ul {
text-align: left;
li a {
text-decoration: none !important;
}
2025-05-27 00:53:32 -05:00
li a:hover {
text-decoration: underline !important;
}
}
text-align: center;
}
}
/* - buttons section - */
#buttons.window.home section {
text-align: center;
font-size: 0px;
2025-05-27 00:53:32 -05:00
img {
margin-right: 5px;
image-rendering: auto;
image-rendering: crisp-edges;
image-rendering: pixelated;
transition: transform 0.2s;
}
img:hover {
transform: scale(2);
}
}
@media screen and (max-width: 59em) {
2025-05-27 00:53:32 -05:00
#site.window.home>main,
#site.window.home>section {
#logo {
max-width: 100%;
}
}
2025-04-28 19:31:29 -05:00
}
/* --------------------------------------------------------------------
=======================================================================
-------------------------------------------------------------------- */
/*
/ /\/|
/ |/\/___ _ __ ___ _____ ___ _
/ / __| '_ \ / _ \/ _ \ \/ / | | |
/ \__ \ | | | __/ __/> <| |_| |
/ |___/_| |_|\___|\___/_/\_\\__, |
/ |___/
/
/ ~sneexy - breeeep! my page! slooosh~ */
/* my page has goop in html to set goopy colors */
html[page-is="goopy"] {
--accent: #00d131 !important;
#sneexy > section {
#logo {
width: 40rem;
height: auto;
}
h1 #pfp {
width: auto;
height: 6rem;
vertical-align: middle;
transition: transform .2s;
}
h1 #pfp:hover {
transform: scale(2);
}
.selfinfo {
display: grid;
padding-top: 5px;
grid-template-areas:
"pronouns names";
div {
text-align: left;
border-radius: 1em;
padding: .7em 1em;
ul {
padding-left: 1em;
}
li {
padding-bottom: 6px !important;
list-style: none;
}
}
div:first-child {
background-color: color-mix(in srgb, var(--yellow) 15%, transparent);
border: var(--site-border);
}
div:last-child {
background-color: color-mix(in srgb, var(--sapphire) 15%, transparent);
border: var(--site-border);
margin-left: 1.5em;
}
}
h1 {
margin-bottom: 1px;
}
p {
margin-top: 3px;
}
text-align: center;
}
/* socials and links sections */
.socials-contacts-list {
a {
width: 3rem;
height: 3rem;
display: inline-block;
vertical-align: middle;
align-content: center;
text-align: center;
border-radius: .5rem;
span {
transform: scale(1.58) translateY(.07rem);
}
}
.fedi-icon {
anchor-name: --fedi-icon;
animation: opacity-blink 4s infinite;
}
.fedi-icon-2 {
position-anchor: --fedi-icon;
position: absolute;
margin-left: -3.681rem;
z-index: 2;
animation: opacity-blink-reverse 4s infinite;
}
}
/* sharkey iframe embed */
#links > section > iframe {
display: flex;
margin-top: 1rem;
margin-bottom: .3crem;
margin-left: auto;
margin-right: auto;
border: var(--accent) solid .15rem !important;
border-radius: .6rem;
transition: .2s box-shadow;
}
#links > section > iframe:hover {
box-shadow: var(--accent) 0px 0px 0px .3rem;
transition: .2s box-shadow;
}
}
html[data-theme="light"][page-is="goopy"] {
--accent: #00d131 !important;
.nav-baselink, .nav-accessibility {
background-color: var(--accent) !important;
color: var(--foreground) !important;
}
}
html[data-theme="dark"][page-is="goopy"] {
--accent: #65ff88 !important;
}
/* goop coloring for theme issues stuff */
@media (prefers-color-scheme: light) {
html[page-is="goopy"] {
.nav-baselink, .nav-accessibility {
background-color: var(--accent) !important;
color: var(--foreground) !important;
}
}
}
@media (prefers-color-scheme: dark) {
html[page-is="goopy"] {
--accent: #65ff88 !important;
}
}
@media screen and (max-width: 59em) {
html[page-is="goopy"] {
#sneexy > section {
#logo {
max-width: 100%;
}
.selfinfo {
grid-template-areas:
"pronouns"
"names";
div {
text-align: center;
margin-left: auto;
margin-right: auto;
ul {
text-align: left !important;
}
}
div:first-child {
margin-bottom: 1em;
}
div:last-child {
margin-left: auto !important;
}
}
}
.socials-contacts-list {
text-align: center;
a {
margin-top: .5rem;
margin-bottom: .5rem;
}
}
}
}
/* --------------------------------------------------------------------
=======================================================================
-------------------------------------------------------------------- */
2025-04-28 19:31:29 -05:00
/*
/ _ _ _
/ _ __ ___ | |_ ___| |__ ___ ___ | | __
/ | '_ \ / _ \| __/ _ \ '_ \ / _ \ / _ \| |/ /
/ | | | | (_) | || __/ |_) | (_) | (_) | <
/ |_| |_|\___/ \__\___|_.__/ \___/ \___/|_|\_\
/
/ notebook - specific styling for the notebook page where blogish things live */
details.notebook.article-category {
overflow: clip;
border-radius: .8rem .4rem .8rem .4rem;
background-color: color-mix(in srgb, var(--accent) 15%, transparent);
2025-05-27 00:53:32 -05:00
padding-bottom: .01rem;
/* weird bug ??? without this there is no space underneath so */
summary {
span {
padding-right: .6rem;
}
padding: .5rem;
background: linear-gradient(color-mix(in srgb, var(--accent) 15%, transparent), color-mix(in srgb, var(--accent) 30%, transparent));
border-bottom: unset !important;
cursor: pointer;
}
.article-card {
padding: 1rem;
margin: 1.4rem;
border-radius: 1rem;
border: .1rem solid var(--border);
background-color: var(--background);
h2 {
margin-top: 0rem !important;
}
.tags-holder {
margin-top: -.7rem !important;
a {
margin-top: -1rem !important;
transition: all .2s;
opacity: .9;
padding: .3rem;
border: solid .1rem var(--accent);
border-radius: .4rem;
font-size: .8rem;
}
a:hover {
opacity: 1;
text-shadow: none;
}
}
.read {
transition: all .2s;
text-decoration: none;
}
.read:hover {
transition: all .2s;
text-decoration: underline;
}
}
}
@media screen and (max-width: 59em) {
details.notebook {
.article-card {
padding: .5rem;
margin: .6rem;
}
}
}
/* ------------------------------------
- addition to above (the post pages ) -
------------------------------------ */
#information.window {
.post-info {
p {
margin: 0rem !important;
}
span {
color: var(--ui-green);
opacity: .8;
}
2025-05-27 00:53:32 -05:00
p:first-child,
p:last-child {
opacity: .5;
}
}
2025-05-27 00:53:32 -05:00
}