Files
immich/web/src/app.css

174 lines
3.8 KiB
CSS
Raw Normal View History

2025-05-18 15:51:33 +02:00
@import 'tailwindcss';
@import '@immich/ui/theme/default.css';
@source "../node_modules/@immich/ui";
/* @import '/usr/ui/dist/theme/default.css'; */
2025-05-18 15:51:33 +02:00
@utility immich-form-input {
@apply rounded-xl bg-slate-200 px-3 py-3 text-sm focus:border-immich-primary disabled:cursor-not-allowed disabled:bg-gray-400 disabled:text-gray-100 dark:bg-gray-600 dark:text-immich-dark-fg dark:disabled:bg-gray-800 dark:disabled:text-gray-200;
}
@utility immich-form-label {
@apply font-medium text-gray-500 dark:text-gray-300;
}
@utility immich-scrollbar {
/* width */
scrollbar-width: thin;
}
@utility scrollbar-hidden {
/* Hidden scrollbar */
/* width */
scrollbar-width: none;
}
@utility scrollbar-stable {
scrollbar-gutter: stable both-edges;
}
@utility grid-auto-fit-* {
grid-template-columns: repeat(auto-fit, minmax(min(calc(var(--spacing) * --value(number)), 100%), 1fr));
}
@utility grid-auto-fill-* {
grid-template-columns: repeat(auto-fill, minmax(min(calc(var(--spacing) * --value(number)), 100%), 1fr));
}
@custom-variant dark (&:where(.dark, .dark *):not(.light));
@theme inline {
--color-immich-primary: rgb(var(--immich-primary));
--color-immich-bg: rgb(var(--immich-bg));
--color-immich-fg: rgb(var(--immich-fg));
--color-immich-gray: rgb(var(--immich-gray));
--color-immich-dark-primary: rgb(var(--immich-dark-primary));
--color-immich-dark-bg: rgb(var(--immich-dark-bg));
--color-immich-dark-fg: rgb(var(--immich-dark-fg));
--color-immich-dark-gray: rgb(var(--immich-dark-gray));
}
@theme {
--font-immich-mono: Overpass Mono, monospace;
--spacing-18: 4.5rem;
--breakpoint-tall: 800px;
--breakpoint-2xl: 1535px;
--breakpoint-xl: 1279px;
--breakpoint-lg: 1023px;
--breakpoint-md: 767px;
--breakpoint-sm: 639px;
--breakpoint-sidebar: 850px;
}
2023-11-13 17:16:26 -05:00
@layer base {
:root {
/* light */
--immich-primary: 66 80 175;
--immich-bg: 255 255 255;
--immich-fg: 0 0 0;
/* dark */
--immich-dark-primary: 172 203 250;
2025-01-24 09:18:26 -06:00
--immich-dark-bg: 10 10 10;
2023-11-13 17:16:26 -05:00
--immich-dark-fg: 229 231 235;
--immich-dark-gray: 33 33 33;
}
2025-05-18 15:51:33 +02:00
button:not(:disabled),
[role='button']:not(:disabled) {
cursor: pointer;
}
}
2025-05-18 15:51:33 +02:00
@layer utilities {
@font-face {
font-family: 'Overpass';
src: url('$lib/assets/fonts/overpass/Overpass.ttf') format('truetype-variations');
font-weight: 1 999;
font-style: normal;
ascent-override: 106.25%;
size-adjust: 106.25%;
}
2025-05-18 15:51:33 +02:00
@font-face {
font-family: 'Overpass Mono';
src: url('$lib/assets/fonts/overpass/OverpassMono.ttf') format('truetype-variations');
font-weight: 1 999;
font-style: monospace;
ascent-override: 106.25%;
size-adjust: 106.25%;
}
2025-05-18 15:51:33 +02:00
:root {
font-family: 'Overpass', sans-serif;
/* Used by layouts to ensure proper spacing between navbar and content */
--navbar-height: calc(4.5rem + 4px);
--navbar-height-md: calc(4.5rem + 4px - 14px);
}
2025-05-18 15:51:33 +02:00
:root.dark {
color-scheme: dark;
}
2025-05-18 15:51:33 +02:00
:root:not(.dark) {
color-scheme: light;
}
2025-05-18 15:51:33 +02:00
html {
height: 100%;
width: 100%;
}
2025-05-18 15:51:33 +02:00
html::-webkit-scrollbar {
width: 8px;
}
2025-05-18 15:51:33 +02:00
/* Track */
html::-webkit-scrollbar-track {
background: #f1f1f1;
border-radius: 16px;
}
2025-05-18 15:51:33 +02:00
/* Handle */
html::-webkit-scrollbar-thumb {
background: rgba(85, 86, 87, 0.408);
border-radius: 16px;
}
2025-05-18 15:51:33 +02:00
/* Handle on hover */
html::-webkit-scrollbar-thumb:hover {
background: #4250afad;
border-radius: 16px;
}
2025-05-18 15:51:33 +02:00
body {
margin: 0;
color: #3a3a3a;
}
2025-05-18 15:51:33 +02:00
input:focus-visible {
outline-offset: 0px !important;
outline: none !important;
}
2025-05-18 15:51:33 +02:00
.text-white-shadow {
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8);
}
2025-05-18 15:51:33 +02:00
.icon-white-drop-shadow {
filter: drop-shadow(0 0 1px rgba(0, 0, 0, 0.8));
}
}
.maplibregl-popup {
.maplibregl-popup-tip {
@apply border-t-subtle! translate-y-[-1px];
}
.maplibregl-popup-content {
@apply bg-subtle rounded-lg;
}
}