This commit is contained in:
Chris Kruining 2024-12-12 16:40:13 +01:00
parent d219ae1f9a
commit b23db1d5a8
No known key found for this signature in database
GPG key ID: EB894A3560CCCAD2
21 changed files with 579 additions and 818 deletions

View file

@ -1,128 +0,0 @@
.table {
position: relative;
display: grid;
grid-template-columns: 2em minmax(10em, max-content) repeat(var(--columns), auto);
align-content: start;
padding-inline: 1px;
margin-inline: -1px;
block-size: 100%;
overflow: clip auto;
background-color: var(--surface-600);
& input[type="checkbox"] {
margin: .1em;
}
& textarea {
resize: vertical;
min-block-size: max(2em, 100%);
max-block-size: 50em;
background-color: var(--surface-600);
color: var(--text-1);
border-color: var(--text-2);
border-radius: var(--radii-s);
&:has(::spelling-error, ::grammar-error) {
border-color: var(--fail);
}
& ::spelling-error {
outline: 1px solid var(--fail);
text-decoration: yellow underline;
}
}
& .cell {
display: grid;
padding: .5em;
border: 1px solid transparent;
border-radius: var(--radii-m);
&:has(textarea:focus) {
border-color: var(--info);
}
& > span {
align-self: center;
}
}
& :is(.header, .main, .footer) {
grid-column: span calc(2 + var(--columns));
display: grid;
grid-template-columns: subgrid;
}
& .header {
position: sticky;
inset-block-start: 0;
background-color: var(--surface-600);
border-block-end: 1px solid var(--surface-300);
}
& .row {
--bg: var(--text);
--alpha: 0;
grid-column: span calc(2 + var(--columns));
display: grid;
grid-template-columns: subgrid;
border: 1px solid transparent;
background-color: color(from var(--bg) srgb r g b / var(--alpha));
&:has(> .cell > :checked) {
--bg: var(--info);
--alpha: .1;
border-color: var(--bg);
& span {
font-variation-settings: 'GRAD' 1000;
}
& + :has(> .cell> :checked) {
border-block-start-color: transparent;
}
&:has(+ .row > .cell > :checked) {
border-block-end-color: transparent;
}
}
&:hover {
--alpha: .2 !important;
}
}
& details {
display: contents;
&::details-content {
grid-column: span calc(2 + var(--columns));
display: grid;
grid-template-columns: subgrid;
}
&:not([open])::details-content {
display: none;
}
& > summary {
grid-column: 2 / span calc(1 + var(--columns));
padding: .5em;
padding-inline-start: calc(var(--depth) * 1em + .5em);
}
& > .row > .cell > span {
padding-inline-start: calc(var(--depth) * 1em);
}
}
}
@property --depth {
syntax: "<number>";
inherits: false;
initial-value: 0;
}