feat(upload): add dynamic expiry options and modern UI theme

- Implement dynamic expiry options on the upload page based on user roles and retention policies.
- Add helper functions to build and format expiry options into human-readable labels.
- Introduce a new modern theme featuring glassmorphism, gradients, and frosted glass cards.
This commit is contained in:
2026-05-31 15:30:53 +03:00
parent f1c67c455b
commit df91fe9d3d
11 changed files with 504 additions and 30 deletions

View File

@@ -13,6 +13,21 @@
text-align: center;
}
.hero-eyebrow {
margin: 0 0 2.5rem 0;
display: inline-flex;
align-items: center;
gap: 0.4rem;
border-radius: 999px;
padding: 0.3rem 0.85rem;
background: var(--surface-1);
border: 1px solid var(--border);
color: var(--muted-foreground);
font-size: 0.76rem;
font-weight: 600;
letter-spacing: 0.01em;
}
.drop-zone {
min-height: 19rem;
@@ -23,7 +38,7 @@
padding: 2rem;
border: 2px dashed var(--border);
border-radius: var(--radius);
background: rgba(39, 39, 42, 0.42);
background: var(--surface-1);
text-align: center;
cursor: pointer;
transition: border-color 160ms ease, background 160ms ease;
@@ -32,7 +47,7 @@
.drop-zone:hover,
.drop-zone.is-dragging {
border-color: var(--primary);
background: rgba(39, 39, 42, 0.68);
background: var(--surface-1-hover);
}
.drop-zone input {
@@ -76,7 +91,7 @@
margin-top: 1rem;
border: 1px solid var(--border);
border-radius: var(--radius);
background: rgba(39, 39, 42, 0.28);
background: var(--surface-2);
padding: 0.75rem 0.9rem;
}
@@ -140,7 +155,7 @@ button {
}
.button-primary:hover {
background: #e4e4e7;
background: var(--primary-hover);
}
.button-outline {