Porting all CSS to SCSS for easier maintainance, checking on all best practices.

This commit is contained in:
Adsooi 2021-07-14 00:18:53 +02:00
parent 4f5089655b
commit bdded822bd
Signed by: Ad5001
GPG key ID: EF45F9C6AFE20160
37 changed files with 1115 additions and 424 deletions

100
assets/scss/apps.scss Normal file
View file

@ -0,0 +1,100 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
// CSS specific to the apps website.
#appslist {
width: Min(108em, 100vw);
}
@media screen and (max-width: 108em) {
#appslist {
width: 81em;
}
}
@media screen and (max-width: 81em) {
#appslist {
width: 54em;
}
}
@media screen and (max-width: 54em) {
#appslist {
width: Min(27em, 100vw);
}
}
.app-download {
--border: solid 1px var(--primary-color);
--border-radius: 1rem;
border-right: var(--border);
border-bottom: var(--border);
&:first-of-type {
border-left: var(--border);
border-top-left-radius: var(--border-radius);
border-bottom-left-radius: var(--border-radius);
.app-download-platform {
border-top-left-radius: var(--border-radius);
}
}
&:last-of-type {
border-top-right-radius: var(--border-radius);
border-bottom-right-radius: var(--border-radius);
.app-download-platform {
border-top-right-radius: var(--border-radius);
}
}
.app-download-platform {
line-height: 3;
font-size: x-large;
}
}
@media screen and (max-width: 700px) {
.app-download {
border-left: var(--border);
&:first-of-type {
border-top-left-radius: var(--border-radius) !important;
border-top-right-radius: var(--border-radius) !important;
border-bottom-left-radius: 0;
& .app-download-platform {
border-top-left-radius: var(--border-radius) !important;
border-top-right-radius: var(--border-radius) !important;
}
}
&:last-of-type {
border-top-right-radius: 0;
border-bottom-left-radius: var(--border-radius) !important;
border-bottom-right-radius: var(--border-radius) !important;
& .app-download-platform {
border-top-right-radius: 0;
}
}
}
}

20
assets/scss/blocks.scss Normal file
View file

@ -0,0 +1,20 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
@import "components/blocks/preview";
@import "components/blocks/card";

187
assets/scss/common.scss Normal file
View file

@ -0,0 +1,187 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
@import "components/columns";
@import "components/button";
body {
font-family: 'Metropolis', 'Fira Sans','Ubuntu', 'Noto Sans', sans-serif;
overflow-x: hidden;
margin: 0px;
--light-font: 'Metropolis Light', 'Fira Sans Light','Ubuntu Light', 'Noto Sans Light', sans-serif;
--primary-color: #50DC71;
--secondary-color: #FAFAFA;
--nav-background: var(--secondary-color);
--nav-background-dark: #282828;
--footer-background: #111111;
}
.content-center {
max-width: 75em;
}
.padding-container {
padding: 1em;
}
.padding-container-3 {
padding-left: 3em;
padding-right: 3em;
}
hr {
opacity: 0.5;
}
.primary {
background-color: var(--primary-color);
--theme-color: var(--primary-color);
}
.secondary {
background-color: var(--secondary-color);
--theme-color: var(--secondary-color);
}
.text-white a[role=button]:not(.primary), a[role=button]:not(.primary).text-white {
color: white;
}
/* format */
.fill-width {
width: 100%;
}
.center {
margin-right: auto !important;
margin-left: auto !important;
}
img.center {
display: block;
max-width: 100%;
}
.vertical-center {
margin-top: auto !important;
margin-bottom: auto !important;
max-height: 100%;
}
/* workaround for sometimes images don't position correctly vertically */
.vertical-center-img {
margin: auto;
max-height: 100%;
}
/* text and image formatting */
.text-left {
text-align: left;
}
.text-center {
text-align: center;
}
.text-right {
text-align: right;
}
.text-white {
color: white;
.icon-monochrome {
filter: invert(96%) sepia(0%) saturate(0%) hue-rotate(119deg) brightness(104%) contrast(104%);
}
}
.icon-as-text {
width: 1em;
height: 1em;
margin-right: 0.4em;
vertical-align: middle;
}
.icon-larger-text {
width: 1.4em;
height: 1.4em;
margin-right: 0.4em;
margin-top: -0.2em;
vertical-align: middle;
}
.icon-larger2-text {
width: 1.6em;
height: 1.6em;
margin-right: 0.4em;
margin-top: -0.3em;
vertical-align: middle;
}
.icon-twice-text {
width: 2em;
height: 2em;
margin-right: 0.4em;
margin-top: -0.5em;
vertical-align: middle;
}
h1 {
font-size: xx-large;
font-family: var(--light-font);
&.larger {
font-size: xxx-large;
}
}
h2 {
font-size: x-large;
font-family: var(--light-font);
}
h3 {
font-family: var(--light-font);
}
.text-content {
line-height: 1.5em;
}
.grid {
display: flex;
flex-wrap: wrap;
margin: 3px;
}
.flex {
display: flex !important;
}
.inline {
display: inline !important;
}
.flex-right {
justify-content: flex-end;
}
.flex-center {
justify-content: center;
}

View file

@ -0,0 +1,52 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
// Cards used on main website
.card {
--angle: 0deg;
transition: box-shadow 0.2s;
box-shadow: 0px 0px 2px 0px #000000;
// Specifiying gradient orientation
&.topleft2bottomright {
--angle: 135deg;
}
&.topright2bottomleft {
--angle: 225deg;
}
&.top2bottom {
--angle: 180deg;
}
// Gradient colors
&.yellow {
background: linear-gradient(var(--angle, 0deg), rgba(255,255,204,1) 0%, rgba(255,242,107,1) 100%);
}
&.blue {
background: linear-gradient(var(--angle, 0deg), rgba(204,253,255,1) 0%, rgba(107,250,255,1) 100%);
}
&.red {
background: linear-gradient(var(--angle, 0deg), rgba(255,204,204,1) 0%, rgba(255,107,107,1) 100%);
}
&.green {
background: linear-gradient(var(--angle, 0deg), rgba(206,255,204,1) 0%, rgba(124,255,107,1) 100%);
}
&.purple {
background: linear-gradient(var(--angle, 0deg), rgba(229,181,255,1) 0%, rgba(210,114,255,1) 100%);
}
}

View file

@ -0,0 +1,64 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
// Preview blocks used in the apps main page.
.block-preview {
box-shadow: 0px 0px 2px 0px #000000;
width: Min(25em, calc(100vw - 2em));
height: 20em;
background-size: cover;
background-repeat: no-repeat;
// Base label setting
.label {
transition: max-height 0.15s ease-in;
max-height: 20%;
overflow: hidden;
bottom: 0;
background-color: #FFFFFFDD;
padding: 0.5em;
bottom: 0;
// Hide this information by default
.show-on-hover {
display: none;
transition: opacity 0.15s;
opacity: 0;
max-height: 0;
background: none;
}
}
// Used when the block is hovered/toggled
&:hover, &.toggled {
box-shadow: 0px 0px 4px 0px #000000;
// Take full height
.label {
max-height: 100%;
height: calc(100% - 1em);
// Show previously hidden text
.show-on-hover {
display: block;
opacity: 1;
max-height: 100%;
}
}
}
}

View file

@ -0,0 +1,46 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
a[role=button] {
text-decoration: none;
color: black;
cursor: pointer;
&.primary, &.secondary {
padding: 0.5em;
text-transform: uppercase;
font-size: larger;
box-shadow: 0px 0px 2px 0px #000000;
transition: box-shadow 0.15s ease-in-out, filter 0.15s ease-in-out;
line-height: 3em;
filter: brightness(100%);
&:active {
box-shadow: 0px 0px 8px 0px #000000;
filter: brightness(80%);
}
&:hover {
box-shadow: 0px 0px 8px 0px #000000;
filter: brightness(90%);
}
}
&.primary {
}
}

View file

@ -0,0 +1,91 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
// All columns related rules.
.columns-container {
display: flex;
}
.column {
&.col1 {
&:not(.col1-fill) {
width: 50%;
margin-right: auto !important;
margin-left: auto !important;
}
&.col1-fill {
width: 100%;
}
}
&.col2 {
width: 50%;
}
&.col3 {
width: 33%;
}
&.col2-3 {
width: 66%;
}
&.col4 {
width: 25%;
}
&.col3-4 {
width: 75%;
}
&.col5 {
width: 20%;
}
}
@media screen and (max-width: 700px) {
.padding-container-3 {
padding-left: 0.5em;
padding-right: 0.5em;
}
:not(footer) > .columns-container {
display: block;
}
.column {
width: 100%;
& :not(p).text-right, &.text-right :not(p), & :not(p).text-left, &.text-left :not(p) {
text-align: center;
}
.flex-right {
justify-content: center;
}
}
.section-header .column > img {
width: 100%;
}
.col1:not(.col1-fill) {
width: 100%;
}
}

View file

@ -0,0 +1,38 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
section.section-header {
height: calc(100vh + 3em);
& > div.columns-container {
padding-top: 3em !important;
height: calc(100% - 6em);
}
}
@media screen and (max-width: 700px) {
section.section-header {
height: auto;
min-height: calc(100vh + 3em);
& > div.columns-container {
min-height: calc(100vh - 3em);
}
}
}

View file

@ -0,0 +1,37 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
section.section1 {
background-size: cover;
background-repeat: no-repeat;
color: black;
padding-left: 1em;
padding-top: 1em;
padding-right: 1em;
}
.section-end-triangle {
width: 0;
height: 0;
border-top-width: 3em;
border-top-style: solid;
border-top-color: transparent;
border-right-width: 100vw;
border-right-style: solid;
border-right-color: #FFFFFF;
}

View file

@ -0,0 +1,32 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
section.section-skewed {
--angle: 2deg;
transform: skewY(var(--angle));
background: #D2D2D2;
background: linear-gradient(170deg, rgba(238,238,238,1) 0%, rgba(210,210,210,1) 49%, rgba(238,238,238,1) 100%);
padding-top: 3em;
padding-bottom: 3em;
margin-bottom: 2em;
}
section.section-skewed > * {
transform: skewY(calc(0deg - var(--angle)));
}

36
assets/scss/font.scss Normal file
View file

@ -0,0 +1,36 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
@font-face {
font-family: "Metropolis";
src: url(/fonts/metropolis/Metropolis-Regular.otf) format("opentype");
font-display: swap;
}
@font-face {
font-family: "Metropolis";
src: url(/fonts/metropolis/Metropolis-Bold.otf) format("opentype");
font-weight: bold;
font-display: swap;
}
@font-face {
font-family: "Metropolis Light";
src: url(/fonts/metropolis/Metropolis-Light.otf) format("opentype");
font-display: swap;
}

38
assets/scss/footer.scss Normal file
View file

@ -0,0 +1,38 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
footer {
width: 100%;
background: var(--footer-background);
color: white;
a:not([role=button]) {
color: #3DAEE9;
}
}
.footer-social-list {
display: flex;
font-size: 24px;
}
@media screen and (max-width: 550px) {
footer {
font-size: 17px;
}
}

184
assets/scss/header.scss Normal file
View file

@ -0,0 +1,184 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
nav {
font-size: 1.3em;
height: 3em;
position: absolute;
width: 100%;
font-family: var(--light-font);
.nav-flex {
display: flex;
max-width: 99%;
}
.navbar-brand {
padding-top: 1em;
padding-left: 0.5em;
display: flex;
.icon-brand {
width: 2.5em;
height: 2.5em;
margin-top: -0.7em;
margin-right: 5px;
}
}
.navbar-menu {
flex: auto;
display: block;
width: 2em;
}
// Links list
.navbar-list {
float: right;
flex: auto;
display: flex;
margin-top: 0px;
list-style-type: none;
text-transform: uppercase;
li {
list-style: none;
&.active {
background-color: var(--primary-color);
}
&.background a[role=button] {
background-color: var(--nav-background);
color: black;
}
a {
padding: 1em;
margin-left: 0;
display: flex;
}
}
}
}
.menu-with-sub {
display: block;
.sub-menu {
display: none;
position: absolute;
padding: 0;
margin-top: -2px;
}
&.toggled .sub-menu, &:hover .sub-menu, & .sub-menu:hover {
display: block;
}
}
#navbar-toggler {
border: 0;
background: none;
box-shadow: none;
border-radius: 0px;
display: none;
cursor: pointer;
padding-right: 1em;
img {
width: 1.9em;
height: 1.9em;
}
}
@media screen and (max-width: 700px) {
#navbar-toggler {
display: block;
}
nav.menu-shown {
position: fixed;
z-index: 1;
background: var(--nav-background);
}
/* positioning for mobile */
nav .nav-flex {
display: block;
max-width: 100%;
.nav-mobile {
display: flex;
width: 100%;
.navbar-brand {
flex: auto;
}
}
.navbar-menu {
height: 100vh;
width: 100% !important;
display: none !important;
background: var(--nav-background);
&.shown {
display: block !important;
}
.navbar-list {
display: block !important;
width: 100%;
height: 100%;
padding-left: 0;
li {
width: 100% !important;
display: flex;
a[role=button] {
width: 100%;
}
}
.menu-with-sub {
display: block;
.sub-menu {
margin-left: 1em;
display: ruby;
}
}
}
}
}
/* removing white text from menu with light background */
nav.menu-shown.text-white li a[role=button], nav.menu-shown .text-white li a[role=button], nav.menu-shown a[role=button].text-white {
color: black;
}
nav.menu-shown.text-white .icon-monochrome {
filter: unset;
}
nav.menu-shown.text-white .navbar-list li.background {
background-color: var(--nav-background);
}
}

26
assets/scss/main.scss Normal file
View file

@ -0,0 +1,26 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
// Main spreadsheet including all common elements
@import "blocks";
@import "common";
@import "font";
@import "footer";
@import "header";
@import "sections";

21
assets/scss/sections.scss Normal file
View file

@ -0,0 +1,21 @@
/**
* Omegamma - Hugo theme for ad5001.eu and related websites.
* Copyright (C) 2021 Ad5001
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
@import "components/sections/section1";
@import "components/sections/header";
@import "components/sections/skewed";