dressed_for_succes_store/frontend/app/globals.css

181 lines
3.6 KiB
CSS

@tailwind base;
@tailwind components;
@tailwind utilities;
@layer base {
:root {
--background: hsl(0 0% 100%);
--foreground: hsl(222.2 84% 4.9%);
--card: hsl(0 0% 100%);
--card-foreground: hsl(222.2 84% 4.9%);
--popover: hsl(0 0% 100%);
--popover-foreground: hsl(222.2 84% 4.9%);
--primary: 151 31% 27%;
--primary-foreground: 0 0% 100%;
--secondary: 84 38% 37%;
--secondary-foreground: 0 0% 100%;
--muted: 210 40% 96.1%;
--muted-foreground: 215.4 16.3% 46.9%;
--accent: 60 41% 82%;
--accent-foreground: 151 31% 27%;
--destructive: 0 84.2% 60.2%;
--destructive-foreground: 210 40% 98%;
--border: 214.3 31.8% 91.4%;
--input: 214.3 31.8% 91.4%;
--ring: 151 31% 27%;
--radius: 0.5rem;
}
.dark {
--background: hsl(222.2 84% 4.9%);
--foreground: hsl(210 40% 98%);
--card: hsl(222.2 84% 4.9%);
--card-foreground: hsl(210 40% 98%);
--popover: hsl(222.2 84% 4.9%);
--popover-foreground: hsl(210 40% 98%);
--primary: 151 31% 27%;
--primary-foreground: 0 0% 100%;
--secondary: 84 38% 37%;
--secondary-foreground: 0 0% 100%;
--muted: 217.2 32.6% 17.5%;
--muted-foreground: 215 20.2% 65.1%;
--accent: 60 41% 82%;
--accent-foreground: 151 31% 27%;
--destructive: 0 62.8% 30.6%;
--destructive-foreground: 210 40% 98%;
--border: 217.2 32.6% 17.5%;
--input: 217.2 32.6% 17.5%;
--ring: 151 31% 27%;
}
}
@layer base {
* {
@apply border-border;
}
body {
@apply bg-background text-foreground;
}
/* Применяем шрифт для заголовков */
h1,
h2,
h3,
h4,
h5,
h6 {
@apply font-serif tracking-tight;
}
/* Типографика */
h1 {
@apply font-light;
}
h2 {
@apply font-normal;
}
.heading-text {
@apply font-arimo tracking-tight;
}
/* Стили для кнопок */
button,
.button {
@apply transition-all duration-300;
}
}
/* Исправления для изображений в продуктах */
.product-image {
width: 100%;
height: auto;
object-fit: cover;
background-color: #f8f9fa;
}
.product-image-container {
position: relative;
overflow: hidden;
background-color: #f8f9fa;
}
/* Анимация загрузки для изображений */
.image-loading {
position: relative;
overflow: hidden;
}
.image-loading::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(90deg, #f0f0f0 0%, #f8f8f8 50%, #f0f0f0 100%);
background-size: 200% 100%;
animation: loading 1.5s infinite;
}
@keyframes loading {
0% {
background-position: 200% 0;
}
100% {
background-position: -200% 0;
}
}
/* Фиксы для мобильных устройств */
@media (max-width: 768px) {
.product-grid {
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
}
/* Стили для таблицы размеров на мобильных устройствах */
.size-table-mobile .tabs-list {
font-size: 0.75rem;
padding: 0.25rem;
}
.size-table-mobile .tab-trigger {
padding: 0.25rem 0.5rem;
min-width: auto;
}
/* Улучшение читаемости модальных окон на мобильных устройствах */
.dialog-content-mobile {
padding: 0.75rem !important;
max-height: 90vh !important;
overflow-y: auto !important;
width: 95vw !important;
}
/* Уменьшение отступов в таблице размеров */
.size-table-mobile td,
.size-table-mobile th {
padding: 0.5rem 0.25rem;
font-size: 0.75rem;
}
}