baseddata.io/static/css/style.css

570 lines
10 KiB
CSS

* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
:root {
--font-family: sans-serif;
--font-size: 10;
--author-row-font-size: 12px;
--heading1-font-size: 25px;
--code-block-font-size: 10px;
--chart-modifier-height: 60px;
--article-max-width: 60vw;
--content-padding: 40px;
--content-margin: 40px;
--element-padding: 20px;
--element-margin: 10px;
--article-margin: 10px;
--heading-margin: 30px;
--radius: 5px;
--line-height: 1.5;
--checkbox-width: max-content;
--checkbox-font-size: 16px;
--avatar-width: 20px;
--background-color: #181a1b;
--text-color: #e0ddd9;
--subtext-color: #6c757d;
--link-color: #749571;
--hover-color: #0056b3;
--heading1-color: #fc8452;
--heading2-color: #e0ddd9;
--heading3-color: #e0ddd9;
--navbar-background-color: #343451;
--navbar-text-color: #e0ddd9;
--navbar-hover: #50507c;
--footer-background-color: #333;
--summary-container-hover-bg: #343a40;
--codeblock-bg-color: #0d1117;
--inline-code-bg-color: #749571;
--table-even-row-bg-color: #343a40;
--table-odd-row-bg-color: #515c66;
--table-header-bg: #212529;
--table-font-color: #e0ddd9;
--table-header-font-size: 14px;
--table-row-font-size: 12px;
}
@media (max-width: 800px) {
:root {
--font-size: 10;
--author-row-font-size: 12px;
--heading1-font-size: 25px;
--code-block-font-size: 10px;
--avatar-width: 20px;
--article-max-width: 100%;
--table-header-font-size: 14px;
--table-row-font-size: 12px;
}
}
body {
font-family: var(--font-family);
background-color: var(--background-color);
font-size: var(--font-size);
color: var(--text-color);
}
.main-page {
display: flex;
flex-direction: column;
min-height: 100vh;
}
.main-content {
flex-grow: 1;
}
a {
text-decoration: none;
color: var(--link-color);
}
a:hover {
color: var(--hover-color);
}
.page-content {
color: var(--text-color);
padding-top: var(--content-padding);
padding: var(--content-padding);
padding-left: var(--content-padding);
padding-right: var(--content-padding);
max-width: 1000px;
line-height: var(--line-height);
text-align: left;
}
.page-content h1 {
color: var(--heading1-color);
}
.home-page {
display: flex;
align-items: flex-start;
}
.profile-img {
margin-right: 20px;
}
.profile-img img {
width: 300px;
height: auto;
}
@media (max-width: 800px) {
.home-page {
flex-direction: column;
align-items: center;
}
.profile-img {
margin-right: 0px;
order: 1;
height: auto;
}
.profile-img img {
width: 200px;
height: auto;
}
.home-page-content {
order: 2;
}
}
/* Articles */
.main-article {
padding: var(--content-padding);
width: var(--article-max-width);
line-height: 1.5;
text-align: left;
}
.main-article h1 {
color: var(--heading1-color);
font-size: var(--heading1-font-size);
}
.main-article h2,
h3 {
margin-bottom: var(--article-margin);
margin-top: var(--heading-margin);
color: var(--heading2-color);
}
.main-article ul,
ol {
margin-bottom: var(--article-margin);
margin-left: var(--article-margin);
}
.main-article li {
margin: 5px;
}
.main-article img {
max-width: 60vw;
margin-bottom: var(--article-margin);
}
time {
color: var(--subtext-color);
margin-bottom: var(--article-margin);
}
.article-card-flex-container {
margin-left: var(--content-margin);
margin-right: var(--content-margin);
margin-bottom: var(--content-margin);
display: flex;
flex-wrap: wrap;
justify-content: left;
line-height: var(--line-height);
text-align: left;
}
.article-card {
margin: var(--element-margin);
background-color: black;
width: 200px;
min-height: 100%;
border-radius: var(--radius);
transition: background-color 0.3s ease;
text-decoration: none; /* Remove underline */
position: relative;
}
.article-card-text p,
.article-text a {
color: var(--subtext-color);
margin-bottom: var(--element-margin);
}
.article-card-summary h3 {
color: var(--heading3-color);
margin: var(--article-margin);
font-size: 16px;
font-family: Arial, Helvetica, sans-serif;
}
.article-card-summary p {
color: var(--subtext-color);
margin: var(--article-margin);
}
.article-card-info {
display: flex;
flex-direction: column;
align-items: flex-start;
}
.article-card-thumbnail {
max-width: 100%;
border-top-left-radius: var(--radius);
border-top-right-radius: var(--radius);
}
.article-card-author-row {
font-size: 10px;
position: absolute;
bottom: 0;
width: 100%;
margin: var(--element-margin);
}
.article-card:hover {
background-color: var(--summary-container-hover-bg);
}
/* Navbar */
.navbar {
background-color: var(--navbar-background-color);
display: flex;
justify-content: space-between;
position: sticky;
top: 0;
height: 50px;
width: 100%;
z-index: 999;
}
.navbar a {
color: var(--navbar-text-color);
padding: 10px;
margin: 5px;
text-decoration: none;
transition: background-color 0.3s ease;
border-radius: var(--radius);
}
.navbar a:hover {
padding: 10px;
background-color: var(--navbar-hover);
border-radius: var(--radius);
color: var(--text-color);
}
.navbar__left a {
text-decoration: none !important;
color: var(--text-color) !important;
font-size: 22px;
}
.navbar__left {
display: flex;
align-items: center;
}
.navbar__right {
display: flex;
align-items: center;
}
.navbar-links {
display: flex;
align-items: center;
margin-right: var(--element-margin);
}
.navbar-dropdown {
display: none;
}
@media (max-width: 800px) {
.navbar-links {
display: none;
}
.navbar-dropdown {
display: block;
align-items: center;
float: right;
max-height: 60px;
}
.hamburger {
width: 30px;
margin-right: var(--article-margin);
}
.navbar-dropdown .hamburger-dropbtn {
font-size: 66px;
display: flex;
align-items: center;
justify-content: center;
border: none;
max-height: 60px;
outline: none;
color: white;
background-color: inherit;
font-family: inherit;
margin: 0;
border-radius: var(--radius);
}
.navbar-dropdown:hover .hamburger {
background-color: var(--navbar-hover);
border-radius: var(--radius);
}
.navbar-dropdown-content {
display: none;
position: absolute;
right: 20px;
width: 300px;
background-color: var(--navbar-background-color);
min-width: 160px;
box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
z-index: 1;
border-radius: var(--radius);
}
/* Links inside the dropdown */
.navbar-dropdown-content a {
float: none;
color: var(--text-color);
padding: 12px 16px;
text-decoration: none;
display: block;
text-align: left;
}
/* Add a grey background color to dropdown links on hover */
.navbar-dropdown-content a:hover {
padding: 12px 16px;
background-color: var(--navbar-hover);
}
/* Show the dropdown menu on hover */
.navbar-dropdown:hover .navbar-dropdown-content {
display: block;
}
}
/* Charts */
.chart-flex-container {
display: flex;
}
.chart-flex-container article {
flex: 1;
}
#chart {
width: 100%;
height: 50vh;
}
.chart-area {
width: 60%;
margin: var(--article-margin);
}
/* @media only screen and (max-width: 800px) {
.chart-flex-container {
flex-direction: column;
}
.chart-area {
width: 95%;
margin: var(--article-margin);
}
#chart {
width: 100%;
height: 30vh;
order: 1;
}
.chart-flex-container article {
order: 2;
}
} */
/* Footer */
footer {
background-color: var(--footer-background-color);
color: var(--text-color);
padding: 20px;
display: flex;
justify-content: space-between;
}
footer a {
color: #f2f2f2;
transition: background-color 0.3s ease;
}
footer a:hover {
background-color: #ddd;
color: black;
}
/* Chart modifiers */
.chart-modifiers {
height: var(--chart-modifier-height);
}
.ck-button {
width: var(--checkbox-width);
color: white;
font-size: var(--checkbox-font-size);
cursor: pointer;
overflow: auto;
display: flex;
margin-left: 50px;
padding-top: 10px;
}
.ck-button label span {
border-radius: 4px;
text-align: center;
align-items: center;
justify-content: center;
background-color: #a19fbc;
margin: 5px;
display: flex;
width: 100px;
height: 30px;
}
.ck-button input:checked + span {
background-color: #666fbc;
}
.author-row {
display: flex;
justify-content: left;
align-items: center;
color: var(--subtext-color);
font-size: var(--author-row-font-size);
}
.avatar-container {
width: var(--avatar-width);
margin-right: var(--element-margin);
}
.avatar {
display: block;
width: 100%;
height: auto;
}
.author-name {
margin-right: var(--element-margin);
}
article p {
margin-bottom: var(--article-margin);
}
article em,
article strong {
color: var(--heading-color);
}
/* Code block */
pre {
overflow-x: auto;
}
.codeblock {
position: relative;
background-color: var(--codeblock-bg-color);
max-width: 100vw;
width: 60vw;
padding: var(--element-padding);
margin-top: var(--article-margin);
margin-bottom: var(--article-margin);
border-radius: var(--radius);
font-size: var(--code-block-font-size);
}
/* Code block language label */
.codeblock::before {
content: attr(data-lang);
position: absolute;
color: var(--heading1-color);
right: 5px;
top: 0px;
font-size: var(--code-block-font-size);
}
/* Styles for inline <code> */
:not(pre) > code {
color: #343a40;
background-color: var(--inline-code-bg-color);
padding: 0.1em 0.3em;
border-radius: var(--radius);
font-size: var(--code-block-font-size);
}
#jsonTableContainer {
max-width: 150%;
}
/* Tables */
table {
width: 100%;
border-collapse: collapse;
color: var(--table-font-color);
margin-bottom: var(--article-margin);
}
th {
background-color: var(--table-header-bg);
padding: 5px;
text-align: left;
font-size: var(--table-header-font-size);
}
td {
padding: 5px;
text-align: left;
max-width: 90px;
}
@media only screen and (max-width: 800px) {
#scrollable {
max-width: 90px;
max-height: 100%;
margin: 0;
padding: 0;
overflow: auto;
white-space: nowrap;
}
}
tr:nth-child(even) {
background-color: var(--table-even-row-bg-color);
font-size: var(--table-row-font-size);
}
tr:nth-child(odd) {
background-color: var(--table-odd-row-bg-color);
font-size: var(--table-row-font-size);
}