new tools modules & sass opti
All checks were successful
Deploy Sokko G / deploy (push) Successful in 6s

This commit is contained in:
Shinuwa 2026-07-21 13:01:14 +02:00
parent 821e8e0a36
commit 9e275e0167
24 changed files with 3266 additions and 2372 deletions

View file

@ -0,0 +1,322 @@
.section-grid,
.cards,
.info-grid,
.modules {
display: grid;
gap: var(--space-4);
margin-top: var(--space-6);
}
.section-grid,
.info-grid {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
.cards {
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}
.feature,
.info-panel,
.module,
.empty,
.card {
border: 1px solid var(--color-border);
border-radius: var(--radius-lg);
background: rgba(16, 20, 38, 0.88);
box-shadow: var(--shadow-sm);
}
.feature,
.info-panel,
.empty {
padding: var(--space-5);
}
.feature,
.card,
.module,
.info-panel {
transition:
transform var(--duration-fast) var(--ease-standard),
border-color var(--duration-fast) var(--ease-standard),
background-color var(--duration-fast) var(--ease-standard);
}
.feature:hover,
.card:hover,
.module:hover,
.info-panel:hover {
transform: translateY(-2px);
border-color: var(--color-border-hover);
background: rgba(21, 26, 48, 0.96);
}
.feature {
display: grid;
gap: 8px;
}
.feature strong {
color: var(--color-text-primary);
}
.page-heading,
.toolbox-head {
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: var(--space-5);
}
.card {
overflow: hidden;
}
.card-cover {
min-height: 124px;
border-bottom: 1px solid var(--color-border);
}
.card-body {
padding: var(--space-5);
}
.card-actions {
margin-top: var(--space-5);
}
.toolbox-card {
display: flex;
min-height: 292px;
flex-direction: column;
}
.toolbox-card .card-cover {
flex: 0 0 124px;
height: 124px;
min-height: 124px;
}
.toolbox-card-cover-link {
display: block;
outline-offset: -3px;
}
.toolbox-card-cover-link:hover img,
.toolbox-card-cover-link:focus-visible img {
transform: scale(1.035);
filter: brightness(1.08);
}
.toolbox-card-cover-link img {
transition:
transform var(--duration-normal) var(--ease-standard),
filter var(--duration-normal) var(--ease-standard);
}
.toolbox-card .card-body {
display: flex;
flex: 1;
flex-direction: column;
}
.toolbox-card .card-actions {
margin-top: auto;
padding-top: var(--space-5);
}
.toolbox-page {
display: flex;
min-height: calc(100vh - 68px - var(--space-8) - var(--space-12));
flex: 1;
flex-direction: column;
gap: var(--space-4);
}
.toolbox-embedded {
display: flex;
flex-direction: column;
gap: var(--space-4);
}
.storage-help-card {
position: relative;
min-height: 292px;
overflow: hidden;
border-color: rgba(34, 211, 238, 0.22);
background:
linear-gradient(135deg, rgba(34, 211, 238, 0.1), transparent 38%),
rgba(10, 13, 29, 0.84);
}
.storage-help-card::after {
content: "";
position: absolute;
inset: 0 auto 0 0;
width: 3px;
background: var(--gradient-brand);
}
.storage-help-card .card-body {
display: flex;
min-height: 100%;
flex-direction: column;
padding: 18px;
}
.storage-help-heading {
display: grid;
grid-template-columns: 36px minmax(0, 1fr);
gap: 10px;
align-items: center;
margin-bottom: 12px;
}
.storage-help-mark {
display: grid;
width: 36px;
height: 36px;
place-items: center;
border: 1px solid rgba(34, 211, 238, 0.32);
border-radius: var(--radius-md);
background: rgba(34, 211, 238, 0.1);
color: var(--color-accent-cyan);
box-shadow: 0 0 22px rgba(34, 211, 238, 0.12);
}
.storage-help-mark::before {
content: "";
width: 19px;
height: 19px;
background: currentColor;
mask: url("/static/icons/save.svg") center / contain no-repeat;
-webkit-mask: url("/static/icons/save.svg") center / contain no-repeat;
}
.storage-help-card h2 {
margin: 0;
font-size: var(--font-size-lg);
line-height: 1.2;
}
.storage-help-card .eyebrow {
color: var(--color-accent-cyan);
}
.storage-help-intro {
color: var(--color-text-secondary);
font-size: var(--font-size-xs);
line-height: 1.45;
}
.storage-help-card p,
.storage-help-card ul {
margin: 0;
}
.storage-help-list {
display: grid;
gap: 7px;
margin-top: 18px;
padding: 10px 0 0;
list-style: none;
}
.storage-help-list li {
display: grid;
grid-template-columns: 22px minmax(0, 1fr);
gap: 8px;
align-items: start;
padding: 8px 9px;
border: 1px solid rgba(150, 165, 205, 0.12);
border-radius: var(--radius-md);
background: rgba(7, 10, 24, 0.45);
}
.storage-help-list span {
display: grid;
width: 18px;
height: 18px;
place-items: center;
border-radius: var(--radius-sm);
background: rgba(139, 92, 246, 0.18);
color: var(--color-text-primary);
font-size: var(--font-size-xs);
font-weight: 800;
}
.storage-help-list p {
align-self: center;
color: var(--color-text-secondary);
font-size: var(--font-size-xs);
line-height: 1.32;
}
.storage-quota {
display: grid;
gap: var(--space-3);
margin-top: auto;
padding: var(--space-4);
border: 1px solid var(--color-border);
border-radius: var(--radius-lg);
background: rgba(10, 13, 29, 0.78);
box-shadow: var(--shadow-sm);
}
.toolbox-page > .storage-quota,
.drawer-content > .storage-quota {
margin-top: auto;
}
.storage-quota > div:first-child {
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--space-4);
color: var(--color-text-secondary);
font-size: var(--font-size-sm);
}
.storage-quota strong {
color: var(--color-text-primary);
font-size: var(--font-size-sm);
}
.storage-quota-track {
width: 100%;
height: 9px;
overflow: hidden;
border: 1px solid rgba(150, 165, 205, 0.14);
border-radius: var(--radius-pill);
background: rgba(5, 7, 17, 0.82);
}
.storage-quota-track span {
display: block;
height: 100%;
border-radius: inherit;
background: var(--gradient-brand);
box-shadow: 0 0 18px rgba(99, 102, 241, 0.32);
transition: width var(--duration-normal) var(--ease-standard);
}
.storage-quota-warning {
border-color: rgba(251, 191, 36, 0.34);
}
.storage-quota-warning .storage-quota-track span {
background: linear-gradient(135deg, #fbbf24, #f97316);
}
.storage-quota-danger {
border-color: rgba(251, 113, 133, 0.42);
}
.storage-quota-danger .storage-quota-track span {
background: linear-gradient(135deg, #fb7185, #d946ef);
}
.card-icon-button {
flex: 0 0 40px;
}