gnu-social/public/assets/css/base.css

941 lines
24 KiB
CSS

@import url("../fonts/poppins/poppins.css");
@import url("../fonts/opensans/opensans.css");
html {
scroll-margin-top: 4rem;
}
* {
max-width: 100%;
max-height: 100%;
}
*:hover,
*:active {
-webkit-box-shadow: unset;
-moz-box-shadow: unset;
box-shadow: unset;
}
*:focus {
-webkit-box-shadow: inset 0 0 0 3px var(--bg3);
-moz-box-shadow: inset 0 0 0 3px var(--bg3);
box-shadow: inset 0 0 0 3px var(--bg3);
}
:root {
/* FONTS */
--display-font: 'Poppins', sans-serif;
--main-font: 'Open Sans', sans-serif;
/* UNITS
* unit size - every element should be a multiplier of this
* main size - used for headers and icons
* medium size - same as above, except that the element in question is contained in something else
* small size - used in common text, borders
*/
--unit-size: 0.5rem;
--main-size: 1.5rem;
--medium-size: 1.2rem;
--small-size: 1rem;
--smaller-size: 0.8rem;
/* transitions and animations */
--cubic-transition: all 200ms cubic-bezier(0, 0.55, 0.45, 1);
--fade-in: fadeIn 200ms cubic-bezier(0, 0.55, 0.45, 1);
--fade-out: fadeOut 200ms cubic-bezier(0, 0.55, 0.45, 1);
}
h1, h2, h3, h4, h5, h6 {
font-family: var(--display-font);
}
@media (prefers-color-scheme: dark) {
:root {
/* colours and shadows */
--bg1: #242434;
--bg2: #46465E;
--bg3: #8081BA;
--bg-button: linear-gradient(180deg, var(--bg2), transparent) !important;
--translucent: #1A1A2666;
--white: #FFFFFF;
--shadow: 0px 0px 32px 0px #00000066;
--shadow-light: 0px 0px 32px 0px #FFFFFF66;
}
.bg {
background-color: var(--bg1);
background-image: url("../images/bg.png");
}
body:after {
content: "";
position: fixed;
top: 0;
bottom: 0;
left: 0;
right: 0;
z-index: -1;
background-image: url(data:image/png;base64,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);
url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAMAAAAp4XiDAAAAUVBMVEWFhYWDg4N3d3dtbW17e3t1dXWBgYGHh4d5eXlzc3OLi4ubm5uVlZWPj4+NjY19fX2JiYl/f39ra2uRkZGZmZlpaWmXl5dvb29xcXGTk5NnZ2c8TV1mAAAAG3RSTlNAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAvEOwtAAAFVklEQVR4XpWWB67c2BUFb3g557T/hRo9/WUMZHlgr4Bg8Z4qQgQJlHI4A8SzFVrapvmTF9O7dmYRFZ60YiBhJRCgh1FYhiLAmdvX0CzTOpNE77ME0Zty/nWWzchDtiqrmQDeuv3powQ5ta2eN0FY0InkqDD73lT9c9lEzwUNqgFHs9VQce3TVClFCQrSTfOiYkVJQBmpbq2L6iZavPnAPcoU0dSw0SUTqz/GtrGuXfbyyBniKykOWQWGqwwMA7QiYAxi+IlPdqo+hYHnUt5ZPfnsHJyNiDtnpJyayNBkF6cWoYGAMY92U2hXHF/C1M8uP/ZtYdiuj26UdAdQQSXQErwSOMzt/XWRWAz5GuSBIkwG1H3FabJ2OsUOUhGC6tK4EMtJO0ttC6IBD3kM0ve0tJwMdSfjZo+EEISaeTr9P3wYrGjXqyC1krcKdhMpxEnt5JetoulscpyzhXN5FRpuPHvbeQaKxFAEB6EN+cYN6xD7RYGpXpNndMmZgM5Dcs3YSNFDHUo2LGfZuukSWyUYirJAdYbF3MfqEKmjM+I2EfhA94iG3L7uKrR+GdWD73ydlIB+6hgref1QTlmgmbM3/LeX5GI1Ux1RWpgxpLuZ2+I+IjzZ8wqE4nilvQdkUdfhzI5QDWy+kw5Wgg2pGpeEVeCCA7b85BO3F9DzxB3cdqvBzWcmzbyMiqhzuYqtHRVG2y4x+KOlnyqla8AoWWpuBoYRxzXrfKuILl6SfiWCbjxoZJUaCBj1CjH7GIaDbc9kqBY3W/Rgjda1iqQcOJu2WW+76pZC9QG7M00dffe9hNnseupFL53r8F7YHSwJWUKP2q+k7RdsxyOB11n0xtOvnW4irMMFNV4H0uqwS5ExsmP9AxbDTc9JwgneAT5vTiUSm1E7BSflSt3bfa1tv8Di3R8n3Af7MNWzs49hmauE2wP+ttrq+AsWpFG2awvsuOqbipWHgtuvuaAE+A1Z/7gC9hesnr+7wqCwG8c5yAg3AL1fm8T9AZtp/bbJGwl1pNrE7RuOX7PeMRUERVaPpEs+yqeoSmuOlokqw49pgomjLeh7icHNlG19yjs6XXOMedYm5xH2YxpV2tc0Ro2jJfxC50ApuxGob7lMsxfTbeUv07TyYxpeLucEH1gNd4IKH2LAg5TdVhlCafZvpskfncCfx8pOhJzd76bJWeYFnFciwcYfubRc12Ip/ppIhA1/mSZ/RxjFDrJC5xifFjJpY2Xl5zXdguFqYyTR1zSp1Y9p+tktDYYSNflcxI0iyO4TPBdlRcpeqjK/piF5bklq77VSEaA+z8qmJTFzIWiitbnzR794USKBUaT0NTEsVjZqLaFVqJoPN9ODG70IPbfBHKK+/q/AWR0tJzYHRULOa4MP+W/HfGadZUbfw177G7j/OGbIs8TahLyynl4X4RinF793Oz+BU0saXtUHrVBFT/DnA3ctNPoGbs4hRIjTok8i+algT1lTHi4SxFvONKNrgQFAq2/gFnWMXgwffgYMJpiKYkmW3tTg3ZQ9Jq+f8XN+A5eeUKHWvJWJ2sgJ1Sop+wwhqFVijqWaJhwtD8MNlSBeWNNWTa5Z5kPZw5+LbVT99wqTdx29lMUH4OIG/D86ruKEauBjvH5xy6um/Sfj7ei6UUVk4AIl3MyD4MSSTOFgSwsH/QJWaQ5as7ZcmgBZkzjjU1UrQ74ci1gWBCSGHtuV1H2mhSnO3Wp/3fEV5a+4wz//6qy8JxjZsmxxy5+4w9CDNJY09T072iKG0EnOS0arEYgXqYnXcYHwjTtUNAcMelOd4xpkoqiTYICWFq0JSiPfPDQdnt+4/wuqcXY47QILbgAAAABJRU5ErkJggg==);
opacity: 21%;
filter: grayscale(100%);
}
select {
background-image: url("../images/drop.png") !important;
}
}
@media (prefers-color-scheme: light) {
:root {
/* colours and shadows */
--bg1: #eceff4;
--bg2: #4c566a66;
--bg3: #2e3440;
--bg-button: #d8dee966 !important;
--translucent: #eceff488;
--white: #2e3440;
--shadow: 0px 0px 32px 0px #00000066;
--shadow-light: 0px 0px 32px 0px #FFFFFF66;
}
.bg {
background-color: var(--bg1);
background-image: url(../images/bg-light.png);
}
select {
background-image: url("../images/drop-light.png") !important;
}
}
a,
a:visited {
text-decoration: none;
color: var(--white);
}
a:hover {
text-decoration: underline;
color: var(--white);
}
figcaption a:link {
font-size: var(--smaller-size);
color: var(--white);
}
hr {
all: unset;
display: block;
height: 1px;
background: var(--bg2);
}
/* CHECKERBOARD BACKGROUND FOR TRANSPARENT IMAGES */
.note img {
background: repeating-conic-gradient(
#ffffff66 0deg 90deg,
#ffffff33 0deg 180deg) 0 0/40px 40px round;
}
/* BACKGROUND IMG GRADIENT */
.bg {
background-position: center;
background-repeat: no-repeat;
background-size: 100% 100%;
}
.anchor-hidden {
display: none;
}
/* HEADER AND SIDEPANELS */
#header {
z-index: 1;
font-family: var(--display-font);
font-size: var(--main-size);
height: 3rem;
display: flex;
position: fixed;
top: 0;
background-color: var(--bg1);
width: 100%;
align-items: center;
padding: var(--unit-size);
box-shadow: var(--shadow);
}
#instance {
display: flex;
align-items: center;
margin-left: auto;
margin-right: auto;
}
#instance > * {
margin: unset;
}
.icon {
fill: var(--white);
align-self: center;
}
/* CURRENT PAGE LINK */
.active {
font-weight: bold;
}
/* CONTAINS ALL ELEMENTS BESIDES HEADER */
.container {
position: relative;
top: 3rem;
width: 48vw;
margin-left: auto;
margin-right: auto;
justify-content: center;
padding: var(--unit-size) var(--unit-size) 0 var(--unit-size);
}
/* THE FOCUSED (middle) DIV */
.content {
display: flex;
flex-direction: column;
padding: var(--unit-size) var(--unit-size) 0 var(--unit-size);
width: 100%;
}
.markdown-blocks {
background-color: var(--translucent);
border-radius: 0 0 var(--unit-size) var(--unit-size);
border: solid 2px var(--bg2);
border-top: solid 2px var(--bg3);
padding: var(--unit-size);
}
.markdown-blocks ul {
margin-left: 1em;
list-style: disc;
}
.markdown-blocks ul li {
margin-bottom: 0.2em;
}
.doc-navigation {
background-color: var(--translucent);
border-radius: var(--unit-size) var(--unit-size) 0 0;
border: solid 2px var(--bg2);
border-bottom: none;
padding: var(--unit-size);
}
.doc-navigation ul {
display: flex;
justify-content: space-evenly;
font-size: var(--main-size);
}
/* NOTES */
#replyform {
padding: var(--unit-size);
margin-top: var(--unit-size);
background-color: var(--translucent);
border-radius: var(--unit-size);
display: flex;
flex-direction: column;
font-size: var(--small-size);
}
#replyform textarea {
width: 100%;
resize: vertical;
margin-top: var(--unit-size);
padding: var(--unit-size);
}
.notes hr {
margin-top: 5px;
}
.note-wrapper {
width: 100%;
height: inherit;
}
.note-sidebar {
padding: var(--unit-size);
}
.note-sidebar * {
display: flex;
flex-direction: column;
margin-left: auto;
margin-right: auto;
max-height: 100%;
}
.note-sidebar .avatar {
width: 3rem;
height: auto;
background: unset;
margin-bottom: var(--unit-size);
border-radius: 2px;
}
.h-entry {
margin-top: var(--unit-size);
}
.h-entry .embed {
display: flex;
flex-direction: column;
padding: var(--smaller-size);
border: unset;
width: max-content;
}
.h-entry .embed[class*="p-"] {
padding: unset !important;
}
.h-entry a:focus {
text-decoration: underline;
}
.h-entry .embed header img {
padding: unset;
max-width: min-content;
max-height: min-content;
}
.h-entry {
display: flex;
background-color: var(--translucent);
border-radius: var(--unit-size);
border: solid 2px var(--bg2);
}
.h-entry figure {
margin: unset;
object-fit: cover;
}
.h-entry .replies .h-entry {
background-color: unset;
padding: 0 var(--unit-size) var(--unit-size) 0;
margin-left: var(--medium-size);
}
.note-info {
display: flex;
justify-content: space-between;
align-items: center;
max-height: 3rem;
border-bottom: unset;
border-radius: var(--unit-size) var(--unit-size) 0 0;
background: linear-gradient(to left, var(--translucent), transparent);
font-size: var(--medium-size);
padding: 5px 10px 5px 0;
}
.note-author {
font-size: var(--small-size);
font-weight: bold;
display: flex;
align-items: center;
align-self: center;
}
.note-actions {
display: flex;
vertical-align: middle;
}
.note-actions .form-group {
all: unset;
}
.button-container {
all: unset;
border: none !important;
background-repeat: no-repeat !important;
width: var(--medium-size) !important;
height: var(--medium-size) !important;
margin-left: var(--unit-size);
text-indent: -9999em;
}
.button-container:hover,
.button-container:focus {
border: none !important;
background: var(--bg3) !important;
}
.favourite-button-container {
-webkit-mask-image: url("../icons/heart.svg") !important;
-o-mask-image: url("../icons/heart.svg") !important;
-moz-mask-image: url("../icons/heart.svg") !important;
mask-image: url("../icons/heart.svg") !important;
}
.reply-button-container {
-webkit-mask-image: url("../icons/reply.svg") !important;
-o-mask-image: url("../icons/reply.svg") !important;
-moz-mask-image: url("../icons/reply.svg") !important;
mask-image: url("../icons/reply.svg") !important;
}
.repeat-button-container {
-webkit-mask-image: url("../icons/repeat.svg") !important;
-o-mask-image: url("../icons/repeat.svg") !important;
-moz-mask-image: url("../icons/repeat.svg") !important;
mask-image: url("../icons/repeat.svg") !important;
}
.note-actions-unset {
background: var(--bg2) !important;
}
.note-actions-set {
background: var(--white) !important;
}
.note-content {
display: flex;
flex-direction: column;
border-radius: 0 0 var(--unit-size) var(--unit-size);
padding: var(--small-size);
}
.note-text {
margin-bottom: var(--unit-size);
}
.section-attachments {
display: flex;
flex-wrap: wrap;
max-width: max-content;
border-radius: var(--unit-size);
background-color: var(--translucent);
padding: var(--smaller-size);
align-self: flex-start;
}
.note-attachments:not(:only-child) {
margin-right: var(--unit-size);
}
.note-attachments > figure figcaption {
display: flex;
word-break: break-all;
margin-bottom: var(--unit-size);
}
/* SECTIONS */
.section-widget {
display: flex;
flex-direction: column;
width: fit-content;
background-color: var(--translucent);
border-radius: var(--unit-size);
border: solid 2px var(--bg2);
margin-bottom: var(--medium-size);
color: var(--white);
}
.section-widget hr {
margin-bottom: var(--unit-size);
}
.section-widget-padded {
padding: var(--unit-size);
}
.section-title {
font-size: var(--medium-size);
font-weight: 700;
margin: 0;
}
.section-widget-button-like {
border: 2px solid var(--bg2);
border-radius: var(--unit-size);
background: var(--bg-button);
padding: 5px 10px;
margin-top: 5px;
cursor: pointer;
float: right;
align-self: end;
font-family: var(--main-font);
font-weight: 700;
}
.section-title-details {
font-size: var(--medium-size);
font-weight: 700;
border-radius: var(--unit-size);
padding: 5px 10px 5px 10px;
background-color: var(--translucent);
}
.section-title-details[open] svg {
transform: rotate(180deg);
animation: var(--fade-out)
}
/* SECTION DETAILS CLOSED */
.section-title-details:not([open]) svg {
transform: initial;
animation: var(--fade-in);
}
.section-title-summary {
display: flex;
justify-content: space-between;
}
.section-form {
display: flex;
flex-direction: column;
padding: var(--unit-size);
}
.section-form-legend {
margin-top: unset;
margin-bottom: 10px;
font-weight: bold;
font-size: var(--main-size);
}
.section-form-label {
margin-bottom: 5px;
}
.form-group {
all: unset;
display: flex;
flex-direction: column;
margin-bottom: 10px;
}
.help-block {
margin-top: 5px;
margin-bottom: 10px;
}
.help-text {
font-style: italic;
font-size: var(--small-size);
margin-top: 5px;
margin-bottom: 10px;
}
.help-block > .list-unstyled,
.alert,
.alert-danger {
display: inline-block;
border: solid 2px #FF6347;
background-color: #FF634733;
border-radius: var(--unit-size);
padding: 2px 6px;
margin-top: 5px;
margin-bottom: 10px;
}
.section-form-options {
display: block !important;
margin-bottom: var(--unit-size);
}
.section-form-textarea {
border-radius: var(--unit-size);
background-color: var(--translucent);
color: var(--white);
width: 100%;
max-width: 100%;
height: calc(6 * var(--main-size));
border: 2px solid transparent;
resize: vertical;
}
/* BUTTONS AND INPUT SHENANIGANS */
label, button {
font-weight: bold !important;
}
select,
button,
textarea,
input {
font-size: inherit !important;
color: var(--white);
padding: 2px 8px;
border: 2px solid var(--bg2);
border-radius: var(--unit-size);
background-color: var(--translucent);
}
select,
textarea {
padding: 4px;
}
button {
background: var(--bg-button);
padding: 4px 12px;
margin-left: auto;
}
select {
-webkit-appearance: none !important;
-moz-appearance: none !important;
background-repeat: no-repeat;
background-size: 16px;
background-position: center right 5px;
color: var(--white) !important;
border: 2px solid var(--bg2);
border-radius: var(--unit-size);
}
input[type=radio] {
border: solid 0.25em var(--bg2) !important;
background-color: var(--bg1) !important;
}
input[type=checkbox] {
all: unset;
display: inline-block;
width: var(--medium-size);
height: var(--medium-size);
vertical-align: middle;
background-color: var(--bg2) !important;
background-size: cover;
margin-right: 2px;
-webkit-mask-image: url("../icons/check-off.svg") !important;
-o-mask-image: url("../icons/check-off.svg") !important;
-moz-mask-image: url("../icons/check-off.svg") !important;
mask-image: url("../icons/check-off.svg") !important;
}
input[type=color] {
border: unset;
padding: 2px;
width: 100%;
height: 3rem;
}
/* DISABLED STATE TEXT COLOR */
:is(:disabled, :disabled:active)::file-selector-button,
button:is(:disabled, :disabled:active),
input:is([type=reset], [type=button], [type=submit]):is(:disabled, :disabled:active),
select:is(:disabled, :disabled:active) > button {
color: var(--white) !important;
}
/* HOVER AND FOCUS */
textarea:hover,
textarea:focus,
button:hover,
button:focus,
input:hover,
input:focus,
select:hover,
select:focus {
color: var(--white) !important;
-webkit-box-shadow: inset 0px 0px 0px 2px var(--bg3) !important;
-moz-box-shadow: inset 0px 0px 0px 2px var(--bg3) !important;
box-shadow: inset 0px 0px 0px 2px var(--bg3) !important;
}
/* checkbox and radio */
input[type=radio]:hover,
input[type=radio]:focus,
input[type=checkbox]:hover,
input[type=checkbox]:focus {
color: var(--white) !important;
background-color: var(--bg3) !important;
}
input[type=radio]:checked {
background-color: var(--white) !important;
}
input[type=checkbox]:checked {
background-color: var(--bg3) !important;
-webkit-mask-image: url("../icons/check-on.svg") !important;
-o-mask-image: url("../icons/check-on.svg") !important;
-moz-mask-image: url("../icons/check-on.svg") !important;
mask-image: url("../icons/check-on.svg") !important;
}
/* file selector */
input[type=file] {
font-family: var(--main-font) !important;
font-weight: normal !important;
padding: unset !important;
background: var(--bg-button);
border: 2px solid var(--bg2);
border-radius: var(--unit-size);
}
/* button part of file selector */
::file-selector-button {
font-family: var(--main-font) !important;
font-weight: bold !important;
color: var(--white) !important;
}
/* ACCESSIBILITY MENU */
#accessibility-menu {
display: block;
position: absolute;
z-index: 999;
top: -90%;
left: -90%;
width: 30%;
height: min-content;
background-color: var(--bg1);
padding: var(--unit-size);
border: solid 2px var(--bg3);
border-radius: var(--unit-size);
box-shadow: var(--shadow);
}
#accessibility-menu ul {
list-style-type: disc;
margin-left: var(--medium-size);
}
#accessibility-menu:focus-within:not(:active) {
top: var(--unit-size);
left: var(--unit-size);
}
.anchor-hidden {
width: 1px;
height: 1px;
overflow: hidden;
}
/* ANIMATIONS */
@keyframes fadeIn {
0% {
opacity: 0;
transform: translateY(-10px);
}
100% {
opacity: unset;
transform: none;
}
}
@keyframes fadeOut {
100% {
opacity: 0;
transform: translateY(-10px);
}
0% {
opacity: unset;
transform: none;
}
}
@keyframes highlight {
0% {
box-shadow: initial;
border-radius: var(--unit-size);
}
50% {
border-radius: var(--unit-size);
box-shadow: inset 0 20px 40px var(--white);
transition: box-shadow 0.3s ease-in-out;
}
100% {
box-shadow: initial;
border-radius: var(--unit-size);
}
}
/* PROFILE */
.profile {
display: flex;
flex-direction: column;
flex-wrap: wrap;
font-family: var(--main-font);
background-color: var(--translucent);
margin-bottom: var(--unit-size);
border-radius: var(--unit-size);
padding: var(--unit-size);
}
.profile > * {
flex: 1;
}
.profile-info {
display: flex;
flex-wrap: wrap;
flex-direction: column;
}
.profile-info-nickname {
font-size: var(--medium-size);
}
.profile-info-tags {
margin: unset;
}
.profile-info-stats strong {
margin-right: 5px;
}
.profile-info-stats {
margin-top: var(--unit-size);
}
.profile-avatar {
max-width: 4rem;
min-width: 3rem;
width: 100%;
height: auto;
margin-right: 5px;
border-radius: 2px;
}
/* MEDIA QUERIES */
/* sidepanels need to be shown by default on desktop, hidden on mobile */
.panel .panel-content {
display: flex;
flex-direction: column;
font-family: var(--main-font);
font-size: var(--small-size);
/* should remain in place for the user */
position: fixed;
top: 0;
/* should be bellow header */
margin-top: 3rem;
/* should occupy the entire vertical real estate */
height: calc(100% - 3rem);
padding: var(--unit-size);
overflow-y: auto;
}
@media only screen
and (min-width: 1281px) {
.content {
padding: var(--unit-size) var(--main-size) 0 var(--main-size);
}
.panel .panel-content {
width: 15vw;
}
a[id|="anchor"]:target + .accessibility-target {
animation-name: highlight;
animation-duration: 600ms;
animation-timing-function: ease-in-out;
}
}
@media only screen
and (max-width: 1280px) {
/* content should occupy the entire width at this size */
.container {
width: 100%;
}
.content {
max-width: 100%;
}
#panel-left-toggle:not(:checked) ~ .panel-content,
#panel-right-toggle:not(:checked) ~ .panel-content {
display: none;
}
#panel-left-toggle:checked ~ .panel-content,
#panel-right-toggle:checked ~ .panel-content,
a[id|="anchor"]:target ~ .panel-content {
display: flex;
width: 100%;
background-color: var(--bg1);
background-size: 100% 100%;
z-index: auto;
}
@media (prefers-color-scheme: dark) {
#panel-left-toggle:checked ~ .panel-content,
#panel-right-toggle:checked ~ .panel-content,
a[id|="anchor"]:target ~ .panel-content {
background-image: url(../images/bg.png);
}
}
@media (prefers-color-scheme: light) {
#panel-left-toggle:checked ~ .panel-content,
#panel-right-toggle:checked ~ .panel-content,
a[id|="anchor"]:target ~ .panel-content {
background-image: url(../images/bg-light.png);
}
}
}