You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

275 lines
3.3 KiB
CSS

:root {
--bg: dodgerblue;
--color: white;
}
* {
box-sizing: border-box;
}
html,
body {
font-family: Arial, Helvetica, sans-serif;
line-height: 1.6;
color: var(--color);
background-color: var(--bg);
}
.git {
position: absolute;
right: 32px;
top: 32px;
}
a {
color: currentColor;
}
.version {
font-size: 18px;
font-weight: normal;
}
input {
color: currentColor;
border: 1px solid currentColor;
outline: none;
padding: 0.4em;
margin: 0;
background: none;
}
input.overview {
width: 60ch;
}
button {
display: inline-block;
background: none;
border: 1px solid currentColor;
border-radius: 50%;
color: currentColor;
line-height: 1rem;
text-align: center;
padding: 0.4em;
cursor: pointer;
}
button.add {
display: inline-block;
width: 2em;
height: 2em;
font-size: 1em;
margin-left: 8px;
}
button.submit {
margin-left: 12px;
padding: 0.6em;
font-size: 1em;
}
button:hover {
background-color: var(--color);
color: var(--bg);
}
*:not(h2) + input {
margin-left: 12px;
}
.app-form {
display: inline-block;
padding-left: 12px;
border-left: 1px solid currentColor;
margin-top: 12px;
margin-bottom: 12px;
}
.app-form h2 {
margin: 0;
font-weight: normal;
}
table {
margin-top: 32px;
width: 100%;
}
table a {
text-decoration: none;
}
tr.header {
position: sticky;
top: 0;
background-color: var(--bg);
z-index: 100;
}
th {
text-align: left;
padding: 24px 0;
border-bottom: 1px solid currentColor;
text-transform: capitalize;
font-size: 21px;
user-select: none;
cursor: pointer;
}
td {
padding: 12px;
border-bottom: 1px solid currentColor;
}
td.title {
font-weight: bold;
}
td.overview,
th.overview {
flex-grow: 3;
}
td.overview p {
margin: 0;
}
tr {
position: relative;
transition: transform 0.1s ease-in;
}
tr:hover:not(:first-of-type) {
transition: transform 0.2s ease-out;
transform: translateX(10px);
}
.stretched:after {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.loading {
font-size: 28px;
}
.grow {
animation: grow 5s;
}
.filter {
padding-left: 12px;
border-left: 1px solid currentColor;
margin-top: 32px;
margin-bottom: 48px;
}
.filter h2 {
font-weight: normal;
margin: 0;
margin-bottom: 8px;
}
.filter ul {
display: flex;
flex-wrap: wrap;
list-style: none;
gap: 8px;
margin: 0;
padding: 0;
}
.filter ul li,
.category {
display: inline-block;
border: 1px solid currentColor;
padding: 0 4px;
user-select: none;
cursor: pointer;
}
.filter .active {
background-color: var(--color);
color: var(--bg);
}
tr {
display: flex;
justify-content: space-between;
}
th,
td {
padding: 12px 12px;
}
th:first-of-type,
td:first-child {
padding-left: 0;
}
th:last-of-type,
td:last-child {
padding-right: 0;
}
th.date,
td.date {
flex-grow: 0.4;
margin-left: auto;
}
tr > * {
flex: 1;
}
td.categories {
align-content: flex-start;
display: flex;
flex-wrap: wrap;
gap: 8px;
height: auto;
}
.categories .category {
border: none;
}
.change, .init {
opacity: 0.5;
border: none;
display: inline;
padding: 0;
}
.change {
margin-left: 6px;
}
.change:hover,
.init:hover{
background-color: transparent;
color: currentColor;
opacity: 1;
}
.hidden {
visibility: hidden;
}
@keyframes grow {
from {
transform: scale(100%);
}
to {
transform: scale(0, 1000%) rotate(1turn);
}
}