big restructure

This commit is contained in:
2026-02-11 19:28:12 +01:00
parent cd59ccd99b
commit 3eb9cc0ac4
209 changed files with 5101 additions and 2459 deletions

View File

@@ -1,39 +1,3 @@
:root {
--badge-success-bg: #e6f6eb;
--badge-success-color: #1f6a3a;
--badge-success-border: #c9ead3;
--badge-danger-bg: #fdecec;
--badge-danger-color: #8f2c2c;
--badge-danger-border: #f6caca;
--badge-info-bg: #e9f0ff;
--badge-info-color: #264db3;
--badge-info-border: #cbd7ff;
--badge-warn-bg: #fff5e6;
--badge-warn-color: #9a5a00;
--badge-warn-border: #ffd9a6;
--badge-neutral-bg: #f2f4f7;
--badge-neutral-color: #4a5568;
--badge-neutral-border: #e1e6ee;
}
[data-theme="dark"] {
--badge-success-bg: #163a2a;
--badge-success-color: #8fe0b0;
--badge-success-border: #25523c;
--badge-danger-bg: #3a1b1b;
--badge-danger-color: #f2a3a3;
--badge-danger-border: #5b2c2c;
--badge-info-bg: #1a253f;
--badge-info-color: #9fb6ff;
--badge-info-border: #2a3a66;
--badge-warn-bg: #3a2a14;
--badge-warn-color: #ffd596;
--badge-warn-border: #5b401d;
--badge-neutral-bg: #222831;
--badge-neutral-color: #cbd5e1;
--badge-neutral-border: #2f3945;
}
.badge[role="button"],
.badge {
display: inline-flex;
@@ -121,6 +85,22 @@
border-color: var(--badge-neutral-border);
}
.badge .badge-color-dot {
width: 0.85em;
height: 0.85em;
border-radius: 999px;
display: inline-block;
border: 1px solid var(--app-border-color);
background: currentColor;
box-shadow: 0 0 0 2px var(--app-background-color) inset;
flex: 0 0 auto;
}
[data-theme="dark"] .badge .badge-color-dot {
border-color: var(--app-border-color);
box-shadow: 0 0 0 2px var(--app-background-color) inset;
}
.badge-list {
display: flex;
gap: 0.35rem;

View File

@@ -1,9 +1,3 @@
:root {
--app-blockquote-background-color: var(
--app-form-element-active-background-color
);
}
blockquote {
--blockquote-bg: var(--app-blockquote-background-color);
--blockquote-color: inherit;

View File

@@ -96,20 +96,31 @@
}
.app-details-container > section > * {
padding-inline: calc(var(--app-spacing) * 2);
padding-inline: calc(var(--app-spacing) * 2);
}
.app-details-container .app-breadcrumb {
padding-top: calc(var(--app-spacing) * 2);
position: sticky;
top: 20px;
background: var(--app-background-color);
padding-top: calc(var(--app-spacing) * 2);
position: sticky;
top: 20px;
background: var(--app-background-color);
}
.app-details-container .app-details-titlebar {
position: sticky;
top: 69px;
background: var(--app-background-color);
position: sticky;
top: 69px;
background: var(--app-background-color);
}
.app-details-container:not(:has(.app-breadcrumb)) .app-details-titlebar {
top: 37px;
padding-block-start: var(--app-spacing);
}
@media (max-width: 768px) {
.app-details-container > section > * {
padding-inline: calc(var(--app-spacing) * 0);
}
}
@media (min-width: 968px) {
@@ -135,3 +146,5 @@
min-height: 100vh;
}
}

View File

@@ -2,12 +2,12 @@
--app-notice-border-color: var(--app-muted-border-color);
--app-notice-background-color: var(--app-card-background-color);
--app-notice-accent-color: var(--app-color);
border: var(--app-border-width) solid var(--app-notice-border-color);
border-radius: var(--app-border-radius);
/* border: var(--app-border-width) solid var(--app-notice-border-color); */
/* border-radius: var(--app-border-radius); */
background: var(--app-notice-background-color);
padding: calc(var(--app-spacing) * .5) calc(var(--app-spacing) * 1);
padding-right: calc(var(--app-spacing) * .5);
margin-bottom: var(--app-spacing);
/* margin-bottom: var(--app-spacing); */
display: flex;
align-items: center;
justify-content: space-between;
@@ -103,7 +103,7 @@
.notice ul {
margin: 0;
padding-left: 20px;
padding-left: 0;
}
.notice li:last-child {
@@ -114,6 +114,17 @@
padding-block-start: 1rem;
}
.flash-stack:has(.notice) {
/* .flash-stack:has(.notice) {
margin-top: var(--app-spacing);
} */
.app-main-content .flash-stack {
margin-bottom: var(--app-spacing);
}
.app-main-content:has(.app-details-container) .flash-stack {
margin-bottom: 0;
}
.notice li {
list-style: none;
}

View File

@@ -1,9 +1,3 @@
:root {
--list-tabs-border: var(--app-border);
--list-tabs-active: var(--app-primary);
--list-tabs-muted: var(--app-muted-color);
}
.app-list-tabs {
display: flex;
flex-wrap: wrap;

View File

@@ -1,6 +1,6 @@
.app-list-toolbar {
display: flex;
align-items: center;
align-items: flex-end;
flex-wrap: wrap;
gap: 10px;
margin-bottom: calc(var(--app-spacing) * 1);
@@ -22,6 +22,14 @@
font-size: 13px !important;
height: auto !important;
}
.app-list-toolbar > * > * > *{
margin: 0 !important;
width: auto !important;
--app-form-element-spacing-horizontal: 10px;
--app-form-element-spacing-vertical: 6px;
font-size: 13px !important;
height: auto !important;
}
.app-list-toolbar
input:not(

View File

@@ -37,15 +37,17 @@ ul.app-search-preview {
.search-details-hidden ul.app-search-preview {
display: none;
}
ul.app-search-preview::before {
ul.app-search-preview li::before {
content: "";
position: absolute;
left: 9px;
top: 2px;
bottom: 20px;
width: 1px;
background: var(--app-border);
border-radius: 999px;
left: 17px;
bottom: 11px;
width: 8px;
height: 10px;
background: transparent;
border-left: 1px solid var(--app-border);
border-bottom: 1px solid var(--app-border);
border-bottom-left-radius: 6px;
}
ul.app-search-preview li {
@@ -56,7 +58,7 @@ ul.app-search-preview li {
ul.app-search-preview li::before {
content: "";
position: absolute;
left: -11px;
left: 17px;
bottom: 11px;
width: 8px;
height: 10px;
@@ -67,7 +69,7 @@ ul.app-search-preview li::before {
}
ul.app-search-preview a {
padding-inline: 0;
padding-inline: 30px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;

View File

@@ -1,9 +1,3 @@
:root {
--tabs-border: var(--app-border);
--tabs-active: var(--app-primary);
--tabs-muted: var(--app-muted-color);
}
.app-tabs {
display: flex;
flex-direction: column;
@@ -17,6 +11,7 @@
-webkit-overflow-scrolling: touch;
padding-block-start: 2px;
padding-left: 2px;
white-space: nowrap;
}
.app-tabs-nav button,
@@ -26,7 +21,6 @@
padding: 5px 10px 5px 10px;
color: var(--tabs-muted) !important;
cursor: pointer;
font-weight: 500;
border-bottom: 2px solid transparent;
text-decoration: none;
border-radius: 0;

View File

@@ -1,51 +1,27 @@
:root {
--app-tile-bg: var(--app-card-background-color);
--app-tile-border: var(--app-muted-border-color);
--app-tile-shadow: var(--app-box-shadow);
--app-tile-icon-bg: rgba(0, 0, 0, 0.04);
--app-tile-icon-color: var(--app-contrast);
--app-tile-count-color: var(--app-contrast);
--app-tile-label-color: var(--app-color);
--app-tile-link-color: var(--app-muted-color);
}
[data-theme="dark"] {
--app-tile-bg: rgba(20, 24, 32, 0.6);
--app-tile-border: rgba(255, 255, 255, 0.08);
--app-tile-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
--app-tile-icon-bg: rgba(255, 255, 255, 0.08);
--app-tile-icon-color: #e6ecff;
--app-tile-count-color: #f1f5ff;
--app-tile-label-color: #d1d7e3;
--app-tile-link-color: #98a2b3;
}
.app-tiles {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
gap: calc(var(--app-spacing) * 1);
margin-bottom: calc(var(--app-spacing) * 2);
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
gap: calc(var(--app-spacing) * 1);
margin-bottom: calc(var(--app-spacing) * 2);
}
.app-stats-table {
overflow: auto;
border: 1px solid var(--app-border);
border-radius: var(--app-border-radius);
margin-bottom: calc(var(--app-spacing) * 1);
overflow: auto;
border: 1px solid var(--app-border);
border-radius: var(--app-border-radius);
margin-bottom: calc(var(--app-spacing) * 1);
}
.app-stats-table th {
border-top: 0;
border-top: 0;
}
.app-stats-table table {
margin: 0;
margin: 0;
}
.app-stats-table table tr:last-child td {
border-bottom: 0;
border-bottom: 0;
}
.app-tile {
@@ -62,7 +38,10 @@
background: var(--app-tile-bg);
color: var(--app-tile-label-color);
text-decoration: none;
transition: transform var(--app-transition), box-shadow var(--app-transition), border-color var(--app-transition);
transition:
transform var(--app-transition),
box-shadow var(--app-transition),
border-color var(--app-transition);
}
.app-tile:hover {
@@ -82,18 +61,21 @@
}
.app-tile-count {
position: absolute;
top: calc(var(--app-spacing) * 1);
right: calc(var(--app-spacing) * 1);
font-weight: 700;
color: var(--tile-count-color);
position: absolute;
top: calc(var(--app-spacing) * 1);
right: calc(var(--app-spacing) * 1);
font-weight: 700;
color: var(--tile-count-color);
}
.app-tile-label {
display: block;
margin-top: calc(var(--app-spacing) * 1);
font-weight: 600;
color: var(--tile-label-color);
display: block;
margin-top: calc(var(--app-spacing) * 1);
color: var(--tile-label-color);
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
max-width: 191px;
}
.app-tile-link {
@@ -104,6 +86,43 @@
font-size: 0.9rem;
}
.app-tile.is-small {
padding: 10px;
display: flex;
align-items: center;
min-height: 50px;
}
.app-tile.is-small span.app-tile-icon {
width: 25px;
height: 25px;
border-radius: 6px;
font-size: 12px;
margin-right: 10px;
}
.app-tile.is-small .app-tile-link {
bottom: 14px;
}
.app-tile.is-small .app-tile-count {
position: static;
margin-right: 5px;
display: block;
}
.app-tile.is-small .app-tile-label {
margin-top: 0;
font-weight: 400;
}
.app-stats-table-header {
border-bottom: 1px solid var(--app-border);
padding: 4px 10px 4px 10px;
text-transform: uppercase;
font-size: 13px;
letter-spacing: 0.4px;
background: var(--app-blockquote-background-color);
}
@media (max-width: 640px) {
.app-tiles {
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));

View File

@@ -1,12 +1,3 @@
:root {
--tooltip-bg: var(--app-card-background-color);
--tooltip-color: var(--app-color);
--tooltip-border: var(--app-border);
--tooltip-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
--tooltip-radius: 8px;
--tooltip-offset: 8px;
}
[data-tooltip] {
--app-card-background-color: inherit;
position: relative;

View File

@@ -90,7 +90,7 @@ input.gridjs-input:focus {
background-color: var(--app-background-color);
border: var(--app-border-width) solid var(--app-table-border-color);
color: var(--app-color);
padding: 0.4rem 0.7rem;
padding: 1px 10px;
}
.gridjs-pagination .gridjs-pages button:hover {
@@ -186,6 +186,11 @@ html[data-theme=dark] button.gridjs-sort-neutral {
filter: invert(1);
}
html[data-theme=dark-green] button.gridjs-sort,
html[data-theme=dark-green] button.gridjs-sort-neutral {
filter: invert(1);
}
.gridjs-tbody, td.gridjs-td {
background-color: var(--app-background-color)
}

View File

@@ -1,41 +1,4 @@
:root {
--spacing-smaller: 3px;
--spacing-small: 5px;
--spacing-medium: 7px;
--spacing-large: 12px;
--font-size: 12px;
--font-size-large: 14px;
--font-size-larger: 16px;
--line-height: 16px;
--line-height-larger: 20px;
--primary-color: var(--app-primary);
--text-color-dark: #212529;
--text-color: #585858;
--text-color-light: #65727e;
--border-color: #bebebe;
--border-color-light: #f1f3f5;
--input-placeholder: #65727e;
--input-background: #e9e9ed;
--input-border: #dee2e6;
--input-border-active: #c1c9d0;
--input-border-invalid: #e44e4e;
--input-outline-invalid: rgba(219, 138, 138, 0.5);
--input-color: #e9e9ed;
--input-disabled: #f7f7f7;
--input-min-height: 45px;
--options-height: 40dvh;
--option-background: #f3f4f7;
--border-radius: 5px;
--icon-size: 12px;
--icon-space: 30px;
--checkbox-size: 16px;
--checkbox-radius: 4px;
--checkbox-border: #ced4da;
--checkbox-background: #fff;
--checkbox-active: #fff;
--checkbox-thickness: 2px;
}
/* Overrides for MultiSelect */
.multi-select {
--spacing-smaller: 3px;
@@ -128,3 +91,13 @@
.multi-select .multi-select-header {
padding-left: 7px;
}
.multi-select .multi-select-option.is-disabled {
opacity: 0.45;
cursor: not-allowed;
}
.multi-select .multi-select-all.is-disabled {
opacity: 0.45;
cursor: not-allowed;
}