ba-thesis/assets/css/styles.css

364 lines
6.0 KiB
CSS
Raw Normal View History

2023-07-21 11:04:00 +01:00
@import "./fonts.css";
2023-07-21 09:57:46 +01:00
@import 'tailwindcss/base';
@import 'tailwindcss/components';
@import 'tailwindcss/utilities';
h1, h2, h3, h4, h5, h6 {
font-family: Kanit;
font-weight: 600;
font-style: normal;
2023-07-28 17:23:49 +01:00
text-align: center;
2023-08-01 05:52:18 +01:00
line-height: 1;
2023-07-21 09:57:46 +01:00
}
h1 {
2023-08-01 05:52:18 +01:00
font-size: 3rem;
@apply text-primary-200;
}
h1.title {
@apply font-title font-bold;
@apply underline text-primary-200/90;
2023-07-21 09:57:46 +01:00
}
h2 {
font-size: 2.6rem;
2023-07-21 09:57:46 +01:00
}
h3 {
font-size: 2.2rem;
2023-07-21 09:57:46 +01:00
}
h4 {
font-size: 1.8rem;
2023-07-21 09:57:46 +01:00
}
h5 {
font-size: 1.4rem;
2023-07-21 09:57:46 +01:00
}
h6 {
font-size: 1rem;
}
2023-08-01 05:52:18 +01:00
p {
@apply text-center sm:text-start;
}
2023-07-21 18:08:48 +01:00
input {
@apply rounded rounded-md drop-shadow-sm px-2 py-1;
2023-08-01 05:52:18 +01:00
@apply bg-secondary/25;
2023-07-21 18:08:48 +01:00
@apply w-full;
}
input[type="submit"] {
@apply rounded rounded-lg drop-shadow-md px-4 py-2;
2023-08-01 05:52:18 +01:00
@apply bg-secondary hover:bg-secondary-600;
@apply cursor-pointer;
2023-07-21 18:08:48 +01:00
@apply font-semibold;
@apply hover:drop-shadow-xl;
}
select {
@apply rounded rounded-md drop-shadow-sm px-2 py-1;
2023-08-01 05:52:18 +01:00
@apply bg-secondary/25;
@apply w-full;
}
select.error {
2023-08-01 05:52:18 +01:00
@apply border-2 border-failure/50;
}
2023-07-30 22:51:55 +01:00
input.error {
2023-08-01 05:52:18 +01:00
@apply border-2 border-failure/50;
2023-07-30 22:51:55 +01:00
}
fieldset {
2023-08-01 05:52:18 +01:00
@apply border border-secondary p-4;
2023-07-30 22:51:55 +01:00
}
legend {
2023-08-01 05:52:18 +01:00
@apply text-sm text-secondary px-2;
}
label {
@apply text-sm text-secondary/75 font-semibold;
2023-07-30 22:51:55 +01:00
}
2023-08-01 05:52:18 +01:00
a:not(.btn, .btn-outline) {
@apply underline text-secondary-300;
}
div.call-to-action-box a {
@apply text-secondary-200;
}
ul, ol {
list-style-position: outside;
}
ul {
list-style-type: disc;
}
ol {
list-style-type: decimal;
}
li {
@apply text-start;
}
code {
@apply bg-neutral-800/75 rounded-md;
@apply px-1 py-0.5;
@apply text-neutral-200 font-mono;
2023-07-30 22:51:55 +01:00
}
.btn {
2023-07-28 17:23:49 +01:00
text-align: center;
2023-08-01 05:52:18 +01:00
@apply rounded rounded-lg drop-shadow-md px-2 py-1;
@apply bg-accent hover:bg-accent-600;
@apply font-semibold text-primary-100 hover:text-primary-200;
2023-07-21 18:08:48 +01:00
@apply hover:drop-shadow-xl;
2023-08-01 05:52:18 +01:00
@apply border-2 border-accent hover:border-accent-700;
@apply transition-all;
2023-07-21 18:08:48 +01:00
}
2023-07-30 22:51:55 +01:00
.btn-outline {
2023-07-28 17:23:49 +01:00
text-align: center;
2023-08-01 05:52:18 +01:00
@apply rounded rounded-lg drop-shadow-md px-2 py-1;
@apply bg-transparent hover:bg-accent-600;
@apply font-semibold text-accent hover:text-primary-100;
2023-07-21 18:08:48 +01:00
@apply hover:drop-shadow-xl;
2023-08-01 05:52:18 +01:00
@apply border-2 border-accent hover:border-accent-700;
@apply transition-all;
2023-07-21 18:08:48 +01:00
}
body.global {
min-height: 100vh;
width: 100%;
display: flex;
flex-direction: column;
2023-08-01 05:52:18 +01:00
@apply bg-gradient-to-b from-primary-900/75 via-background to-primary-900/75;
}
header.global, main.global, footer.global {
width: 100%;
}
main.global {
2023-07-28 17:23:49 +01:00
display: flex;
flex-direction: column;
flex-grow: 1;
2023-07-28 17:23:49 +01:00
justify-content: center;
align-items: center;
2023-07-21 09:57:46 +01:00
}
2023-07-21 18:08:48 +01:00
div.status-message {
display: flex;
width: 100%;
justify-content: center;
align-items: center;
border-radius: 0.5rem;
padding: 0.5rem;
}
div.status-message.error {
2023-08-01 05:52:18 +01:00
@apply italic text-failure-300 bg-failure/50 border border-failure;
2023-07-21 18:08:48 +01:00
}
2023-07-28 17:23:49 +01:00
div.call-to-action-box {
@apply bg-gradient-to-r from-secondary-300/75 to-secondary-500/75;
@apply rounded-md py-4 px-6;
2023-08-01 05:52:18 +01:00
@apply text-center sm:text-start;
2023-07-28 17:23:49 +01:00
}
2023-07-30 22:51:55 +01:00
2023-07-31 01:41:13 +01:00
.loader {
overflow: hidden;
}
2023-08-01 05:52:18 +01:00
.loader.loader-bar {
@apply h-1 bg-accent rounded rounded-full;
}
.loader.loader-value {
@apply font-bold text-end;
}
2023-07-31 01:41:13 +01:00
2023-07-30 22:51:55 +01:00
.loader--loading {
animation: loading 2s infinite linear;
}
.loader--finished {
animation: finished 1.5s ease-in both;
}
.loader--value {
animation: loaded 1s ease-out both;
}
@keyframes loading {
0% {
transform: scaleX(0%) translateX(-100%);
transform-origin: left;
}
50% {
transform: scaleX(50%);
transform-origin: center;
}
100% {
transform: scaleX(0%) translateX(100%);
transform-origin: right;
}
}
@keyframes finished {
0% {
transform: scaleX(0%);
transform-origin: center;
}
50% {
transform: scaleX(100%);
transform-origin: center;
opacity: 1;
}
100% {
transform: scaleX(100%) translateX(1000%);
transform-origin: right;
opacity: 0;
}
}
@keyframes loaded {
0% {
transform: translateX(1000%);
opacity: 0;
}
100% {
transform: translateX(0%);
opacity: 1;
}
}
2023-08-01 05:52:18 +01:00
#logo-wings {
animation: logowings 2s ease-in-out infinite alternate;
}
#logo-wings--subtle {
animation: logowings-subtle 2s ease-in-out infinite alternate;
}
#logo-heart {
animation: logoheart 1s linear infinite;
transform-origin: center;
}
#logo-heart--subtle {
animation: logoheart-subtle 1s linear infinite;
transform-origin: center;
}
#logo-blips {
animation: logoblips 6s linear infinite;
transform-origin: bottom;
transform-box: fill-box;
}
#logo-blips--subtle {
animation: logoblips-subtle 6s linear infinite;
transform-origin: bottom;
transform-box: fill-box;
}
@keyframes logowings {
0% {
transform: translateY(0%);
}
100% {
transform: translateY(5%);
}
}
@keyframes logowings-subtle {
0% {
transform: translateY(5%);
}
100% {
transform: translateY(8%);
}
}
@keyframes logoheart {
0%, 25%, 50%, 100% {
transform: scale(100%);
}
12%, 37% {
transform: scale(105%);
}
}
@keyframes logoheart-subtle {
0%, 25%, 50%, 100% {
transform: scale(100%);
}
12%, 37% {
transform: scale(102%);
}
}
@keyframes logoblips {
0% {
transform: rotateY(0deg)
}
5%, 100% {
transform: rotateY(360deg);
}
}
@keyframes logoblips-subtle {
0% {
transform: rotateY(0deg)
}
5%, 100% {
transform: rotateY(360deg);
}
}
path.hamburger-path {
@apply fill-secondary stroke-secondary;
}
#hamburger-content.hamburger--closed {
@apply hidden sm:flex;
}
#hamburger-content.hamburger--open {
@apply flex;
}
#hamburger-svg.hamburger--open {
transform-origin: center;
transform: rotate(90deg);
}
#hamburger-svg.hamburger--closed {
transform-origin: center;
transform: rotate(0deg);
}
.help-div--changing p.fadeout {
animation: 1s fadeout ease-in-out both;
}
.help-div--changing p.fadein, a.fadein {
animation: 1s fadein ease-in-out 1s both;
}
@keyframes fadeout {
0% {
opacity: 1;
}
100% {
opacity: 0;
}
}
@keyframes fadein {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}