Nofu/public/assets/css/style.css
2024-09-12 16:21:52 +02:00

673 lines
No EOL
11 KiB
CSS

/*
#############################################################
################ DO NOT EDIT THIS FILE ######################
################ USE data/assets/user.css ###################
#############################################################
*/
:root {
color-scheme: dark light;
--primary: #cc2027;
--primary-darken: #8E161B;
--primary-lighten: #D64C52;
--primary-text-contrast: #FFF;
--secondary: #20ccc5;
--secondary-darken: #168E89;
--secondary-lighten: #4CD6D0;
--secondary-text-contrast: #000;
--error: #c43933;
--error-darken: #892723;
--error-lighten: #CF605B;
--error-text-contrast: #FFF;
--info: #206ccc;
--info-darken: #164B8E;
--info-lighten: #4C89D6;
--info-text-contrast: #FFF;
--success: #7dcc20;
--success-darken: #578E16;
--success-lighten: #97D64C;
--success-text-contrast: #000;
--warning: #cc5e20;
--warning-darken: #8E4116;
--warning-lighten: #D67E4C;
--warning-text-contrast: #FFF;
--background-color: light-dark(#fffbfb, #171414);
--background-color-darken: light-dark(#B2AFAF, #100E0E);
--background-color-lighten: light-dark(#FFFBFB, #454343);
--header-background-color: light-dark(#171414, #fffbfb);
--header-background-color-darken: light-dark(#100E0E, #B2AFAF);
--header-background-color-lighten: light-dark(#454343, #FFFBFB);
--header-text-color: light-dark(#fffbfb, #171414);
--header-text-color-secondary: #ffffffb3;
--header-text-color-disable: light-dark(#ffffff80, #454343);
--text-color: light-dark(#171414, #fffbfb);
--text-color-secondary: #ffffffb3;
--text-color-disable: light-dark(#454343, #ffffff80);
--text-color-inverse: light-dark(#fffbfb, #171414);
--text-color-secondary-inverse: #ffffffb3;
--text-color-disable-inverse: light-dark(#ffffff80, #454343);
--h1-color: var(--primary);
--h2-color: #c33d35;
--h3-color: #b94f44;
--h4-color: #ae5e52;
--h5-color: #a16a61;
--h6-color: #927671;
}
[data-theme="dark"] {
--background-color: #171414;
--text-color: #fffbfb;
--text-color-inverse: #171414;
}
[data-theme="light"] {
--background-color: #fffbfb;
--text-color: #171414;
--text-color-inverse: #fffbfb;
.card, .modal-content, .modal-header {
background: var(--background-color) !important;
}
}
:root {
--margin: .7em;
--border-radius: 10px;
}
*,
*:after,
*:before {
box-sizing: border-box;
}
html {
font-size: 59%;
}
body {
background: var(--background-color);
color: var(--text-color);
margin: var(--margin);
}
h1 {
color: var(--h1-color);
font-size: 2.5rem;
margin: 0;
}
svg {
fill: var(--primary);
height: 1.2em;
transition: .3s all ease;
vertical-align: text-bottom;
}
svg:hover {
background-color: var(--primary-lighten);
fill: var(--light-color);
}
.titleBar {
text-align: center;
}
.titleBar .linkList {
float: right;
svg {
height: 2.5em;
width: 2.5em;
margin: var(--margin);
fill: var(--primary);
}
svg:hover {
background-color: inherit;
fill: var(--primary-lighten);
}
}
.titleBar div {
margin: 0;
padding: 0;
line-height: 2.5em;
height: 2.5em;
}
.card-container {
display: flex;
flex-flow: row wrap;
justify-content: center;
margin: 0 auto;
max-width: 100dvw;
padding: 0 .5em;
}
.card a {
display: block;
}
.card-container h3 a {
color: var(--text-color);
text-decoration: none;
}
.card-container .card {
background: var(--background-color-lighten);
box-shadow: 0 0 2px 2px rgba(0, 0, 0, .05);
cursor: pointer;
margin: var(--margin);
transition: .3s all ease;
width: calc(100% / 7 - 20px);
}
.card-container .card:hover {
border-radius: 15px 15px var(--border-radius) var(--border-radius);
box-shadow: 0 0 30px 15px rgba(0, 0, 0, 0.56);
transform: scale(1.20);
z-index: 1;
}
.card-container .card .thumb {
margin: 0;
padding: 0;
transition: .3s all ease;
width: 100%;
}
.card-container .card .thumb:hover {
border-top-left-radius: var(--border-radius);
border-top-right-radius: var(--border-radius);
}
.card-container .card .content {
padding: .5em;
}
.card-container .card h3 {
font: 2.6rem/3.2rem 'Bree Serif', serif;
letter-spacing: -.075rem;
margin: 0 0 5px;
padding: 0;
}
.card-container .card p {
color: var(--text-color);
font: 400 1.6rem/2.2rem 'Open Sans script=all', sans-serif;
margin: 0;
padding: 0;
}
.card-container .readMore {
text-align: right;
}
.card .favicon {
height: 20px;
width: 20px;
margin-right: .1em;
}
.icons {
.card {
padding: 0;
width: auto;
}
.card .content {
padding: 0;
margin: 0;
}
.card .content h3 {
margin: 0;
padding: 0;
}
.card .content .favicon {
margin: 0;
width: 128px;
height: 128px;
padding: 0;
}
a {
display: block;
height: 128px;
}
img {
transition: .3s all ease;
}
img:hover {
border-radius: 10px;
}
}
.modal {
background-color: rgb(0, 0, 0);
background-color: rgba(0, 0, 0, 0.6);
display: none;
height: 100%;
left: 0;
overflow: auto;
padding-top: 100px;
position: fixed;
top: 0;
width: 100%;
z-index: 2;
}
.modal-content {
animation-duration: 0.3s;
animation-name: animatetop;
background: var(--background-color-lighten);
border-radius: var(--border-radius);
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
font-size: 150%;
height: calc(100% / 1 - 100px);
margin: auto;
padding: .2em;
position: relative;
width: calc(100% / 2 - 20px);
}
.modal-content .screenshot {
margin: 0 auto;
text-align: center;
}
.screenshot {
width: 100%;
}
.modal-header a,
.modal-header a:visited {
color: var(--secondary);
}
.modal-header a:hover,
.modal-header a:visited:hover {
color: var(--secondary-lighten);
}
.userDoc {
overflow: scroll;
font-size: 1.8em;
}
@keyframes animatetop {
from {
opacity: 0;
top: -400px;
}
to {
opacity: 1;
top: 0;
}
}
.close {
color: var(--text-color);
display: block;
float: right;
font-size: 32px;
font-weight: bold;
transition: .3s all ease;
}
.close:hover,
.close:focus {
color: var(--text-color-disable);
cursor: pointer;
text-decoration: none;
transform: rotate(90deg);
}
.modal h2 {
font-size: 160%;
}
.modal-content h2 img {
vertical-align: text-bottom;
}
.modal-header {
color: var(--text-color);
padding: 1px 15px;
background: var(--background-color-lighten);
}
.modal-body {
padding: 2px 16px;
}
.modal-body a {
display: block;
}
.modal-body img {
position: relative;
}
nav {
background-color: var(--primary);
border-radius: var(--border-radius);
color: var(--primary-text-contrast);
display: flex;
flex-wrap: wrap;
height: auto;
margin: .5em 0;
padding: .5em 0;
position: relative;
width: fit-content;
}
nav img {
display: inline-block;
vertical-align: text-bottom;
}
nav span {
font-size: 1.5rem;
font-weight: bold;
line-height: 1.5rem;
margin: auto var(--margin);
;
}
.readMore {
display: flex;
flex-wrap: wrap;
height: auto;
margin: var(--margin);
padding: var(--margin);
position: relative;
width: fit-content;
}
nav a {
background-clip: text;
background-position: -100%;
background-size: 200% 100%;
color: var(--text-color-inverse);
cursor: pointer;
display: inline-block;
font-size: 1.5rem;
font-weight: bold;
line-height: 1.5rem;
margin: auto var(--margin);
padding: 5px 0;
position: relative;
text-align: center;
text-decoration: none;
text-transform: uppercase;
transition: all 0.3s ease-in-out;
}
nav a:before,
nav .active::before {
background: var(--text-color);
bottom: -3px;
content: '';
display: block;
height: 3px;
left: 0;
position: absolute;
transition: all 0.3s ease-in-out;
width: 0;
}
nav a:hover,
nav .active {
background-position: 0;
color: var(--text-color);
}
nav a:hover::before,
nav .active::before {
width: 100%;
}
.login {
border: 1px solid var(--background-color-lighten);
border-radius: var(--border-radius);
color: var(--text-color);
display: flex;
flex-direction: column;
font-size: 2rem;
gap: 1rem;
margin: var(--margin) auto 0;
padding: 1rem;
width: 40vw;
}
input[type=text],
input[type=password],
select {
border: 1px solid var(--background-color-lighten);
box-sizing: border-box;
display: inline-block;
margin: 0 0 var(--margin) 0;
padding: 12px 20px;
width: 100%;
}
input[type=text]:active,
input[type=password]:active,
select:active,
input[type=text]:focus,
input[type=password]:focus,
select:focus,
input[type=text]:focus-visible,
input[type=password]:focus-visible,
select:focus-visible,
textarea:focus-visible {
border: 1px solid red;
outline: none;
}
button,
.button {
border-radius: var(--border-radius);
line-height: 2.5em;
height: 2.5em;
margin: 0 auto;
border-style: solid;
border-width: 1px;
width: 30%;
font-size: 2rem;
}
button[type=submit] {
background-color: var(--success);
border-color: var(--success-lighten);
color: var(--success-text-contrast);
}
button[type=submit]:hover {
background-color: var(--success-lighten);
border-color: var(--success-darken);
color: var(--success-text-contrast);
}
.button {
background-color: var(--primary-darken);
border-color: var(--primary-lighten);
color: var(--primary-text-contrast);
transition: all 0.3s ease-in-out;
text-decoration: none;
text-align: center;
}
.button:hover {
background-color: var(--primary-lighten);
border-color: var(--primary-darken);
}
.button-error {
background-color: var(--error);
border-color: var(--error-lighten);
color: var(--error-text-contrast);
}
.flex {
display: flex;
flex-flow: row wrap;
}
.readMore .button {
width: auto;
padding: .2em .3em;
line-height: inherit;
height: auto;
}
.checkbox {
display: flex;
gap: 10px;
justify-content: center;
}
.table-list {
font-size: 1.7rem;
margin: auto;
width: 80vw;
color: var(--background-color-lighten);
border-collapse: collapse;
th,
td {
padding: 0.5rem;
border: 1px solid var(--background-color-lighten);
}
th {
background-color: var(--background-color-lighten);
}
}
@media only screen and (max-width: 600px) {
.card-container:not(.icons) .card {
width: calc(100% / 1 - 20px);
}
.modal-content {
width: 90%;
}
.login {
width: 90vw;
}
.table-list {
margin: auto;
width: 100%;
}
}
@media only screen and (min-width: 600px) {
.card-container:not(.icons) .card {
width: calc(100% / 2 - 20px);
}
.modal-content {
width: calc(100% / 1);
}
.login {
width: 80vw;
}
}
@media only screen and (min-width: 768px) {
.card-container:not(.icons) .card {
width: calc(100% / 3 - 20px);
}
.modal-content {
width: calc(100% / 2 + 150px);
}
.login {
width: 70vw;
}
.table-list {
margin: auto;
width: 100%;
}
}
@media only screen and (min-width: 992px) {
.card-container:not(.icons) .card {
width: calc(100% / 4 - 20px);
}
.modal-content {
width: calc(100% / 2 + 100px);
}
.login {
width: 60vw;
}
}
@media only screen and (min-width: 1200px) {
.card-container:not(.icons) .card {
width: calc(100% / 5 - 20px);
}
.modal-content {
width: calc(100% / 2 + 50px);
}
.login {
width: 50vw;
}
}
@media only screen and (min-width: 1600px) {
.card-container:not(.icons) .card {
width: calc(100% / 7 - 20px);
}
.modal-content {
width: calc(100% / 2 + 200px);
}
.login {
width: 40vw;
}
.table-list {
margin: auto;
width: 70vw;
}
}
.hide {
display: none;
}