Files
private_image/frontend/src/assets/css/main.css
T
nobswebdev bb08bb389f make upload and metadata UI responsive on mobile.
Improve narrow-viewport layout for upload, About, and shell overflow; keep modal scroll without extra dismiss or a11y markup changes.
2026-10-30 16:23:09 +01:00

130 lines
3.2 KiB
CSS

@import 'tailwindcss';
@theme inline {
--radius-sm: calc(var(--radius) - 4px);
--radius-md: calc(var(--radius) - 2px);
--radius-lg: var(--radius);
--radius-xl: calc(var(--radius) + 4px);
--color-background: var(--background);
--color-foreground: var(--foreground);
--color-card: var(--card);
--color-card-foreground: var(--card-foreground);
--color-primary: var(--primary);
--color-primary-foreground: var(--primary-foreground);
--color-secondary: var(--secondary);
--color-secondary-foreground: var(--secondary-foreground);
--color-muted: var(--muted);
--color-muted-foreground: var(--muted-foreground);
--color-accent: var(--accent);
--color-accent-foreground: var(--accent-foreground);
--color-destructive: var(--destructive);
--color-success: var(--success);
--color-border: var(--border);
--color-input: var(--input);
--color-ring: var(--ring);
}
:root {
--radius: 0.5rem;
--background: oklch(1 0 0);
--foreground: oklch(0.244 0.012 263);
--card: oklch(1 0 0);
--card-foreground: oklch(0.244 0.012 263);
--primary: oklch(0.497 0.227 263);
--primary-foreground: oklch(1 0 0);
--secondary: oklch(0.94 0.025 263);
--secondary-foreground: oklch(0.28 0.04 263);
--muted: oklch(0.955 0.018 263);
--muted-foreground: oklch(0.46 0.04 263);
--accent: oklch(0.93 0.04 263);
--accent-foreground: oklch(0.28 0.04 263);
--destructive: oklch(0.55 0.2 25);
--success: oklch(0.45 0.14 155);
--border: oklch(0.88 0.025 263);
--input: oklch(0.88 0.025 263);
--ring: oklch(0.497 0.227 263);
}
@layer base {
* {
@apply border-border;
}
html {
@apply w-full min-w-0 overflow-x-hidden;
}
body {
@apply min-w-0 overflow-x-hidden bg-background text-foreground antialiased;
}
#app {
@apply w-full min-w-0 overflow-x-clip;
}
}
body:has(.lightbox:target) {
overflow: hidden;
}
.expandable-image__link {
color: inherit;
cursor: zoom-in;
}
.lightbox {
display: none;
position: fixed;
inset: 0;
z-index: 100;
align-items: center;
justify-content: center;
padding: max(0.75rem, env(safe-area-inset-top)) max(0.75rem, env(safe-area-inset-right))
max(0.75rem, env(safe-area-inset-bottom)) max(0.75rem, env(safe-area-inset-left));
}
.lightbox:target {
display: flex;
}
.lightbox__backdrop {
position: absolute;
inset: 0;
background: rgb(0 0 0 / 0.92);
}
.lightbox__img {
position: relative;
z-index: 1;
max-width: min(100%, 75rem);
max-height: min(85dvh, 90vh);
width: auto;
height: auto;
object-fit: contain;
border: 1px solid var(--border);
border-radius: var(--radius-lg);
}
.lightbox__close {
position: absolute;
top: max(0.5rem, env(safe-area-inset-top));
right: max(0.5rem, env(safe-area-inset-right));
z-index: 2;
display: flex;
align-items: center;
justify-content: center;
width: 2.5rem;
height: 2.5rem;
font-size: 1.75rem;
line-height: 1;
color: var(--foreground);
background: var(--card);
border: 1px solid var(--border);
border-radius: var(--radius-md);
text-decoration: none;
}
.lightbox__close:hover {
border-color: var(--primary);
}