2025-07-31 16:25:43 +03:00

208 lines
5.1 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@import "tailwindcss";
@keyframes gradient {
0% { background-position: 0% 50%; }
50% { background-position: 100% 50%; }
100% { background-position: 0% 50%; }
}
.animate-gradient {
background-size: 300% 300%;
animation: gradient 10s ease infinite;
}
/* Ionic переменные для кастомизации */
:root {
/* Основные цвета приложения */
--ion-color-primary: #0f766e;
--ion-color-primary-rgb: 15, 118, 110;
--ion-color-primary-contrast: #ffffff;
--ion-color-primary-contrast-rgb: 255, 255, 255;
--ion-color-primary-shade: #0d6660;
--ion-color-primary-tint: #27847e;
/* Вторичные цвета */
--ion-color-secondary: #06b6d4;
--ion-color-secondary-rgb: 6, 182, 212;
--ion-color-secondary-contrast: #ffffff;
--ion-color-secondary-contrast-rgb: 255, 255, 255;
--ion-color-secondary-shade: #05a0ba;
--ion-color-secondary-tint: #1fc1d8;
/* Цвет успеха */
--ion-color-success: #10b981;
--ion-color-success-rgb: 16, 185, 129;
--ion-color-success-contrast: #ffffff;
--ion-color-success-contrast-rgb: 255, 255, 255;
--ion-color-success-shade: #0ea372;
--ion-color-success-tint: #28c78e;
/* Цвет предупреждения */
--ion-color-warning: #f59e0b;
--ion-color-warning-rgb: 245, 158, 11;
--ion-color-warning-contrast: #ffffff;
--ion-color-warning-contrast-rgb: 255, 255, 255;
--ion-color-warning-shade: #d8890a;
--ion-color-warning-tint: #f6a824;
/* Цвет опасности */
--ion-color-danger: #ef4444;
--ion-color-danger-rgb: 239, 68, 68;
--ion-color-danger-contrast: #ffffff;
--ion-color-danger-contrast-rgb: 255, 255, 255;
--ion-color-danger-shade: #d23c3c;
--ion-color-danger-tint: #f15757;
/* Фон приложения */
--ion-background-color: #f8fafc;
--ion-background-color-rgb: 248, 250, 252;
/* Цвет текста */
--ion-text-color: #1e293b;
--ion-text-color-rgb: 30, 41, 59;
/* Цвета для карточек */
--ion-card-background: rgba(255, 255, 255, 0.9);
--ion-item-background: rgba(255, 255, 255, 0.8);
}
/* Кастомные стили для медицинского приложения */
.medical-gradient {
background: linear-gradient(135deg, #0f766e 0%, #06b6d4 100%);
}
.medical-card {
background: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(10px);
border: 1px solid rgba(15, 118, 110, 0.1);
box-shadow: 0 8px 32px rgba(15, 118, 110, 0.1);
}
.exercise-timer {
background: linear-gradient(135deg, #0f766e, #06b6d4);
color: white;
border-radius: 16px;
padding: 1rem;
}
/* Анимации для таймера */
@keyframes pulse-medical {
0%,
100% {
opacity: 1;
transform: scale(1);
}
50% {
opacity: 0.8;
transform: scale(1.05);
}
}
.timer-pulse {
animation: pulse-medical 2s ease-in-out infinite;
}
/* Стили для прогресс-бара */
.progress-medical {
background: linear-gradient(90deg, #10b981, #06b6d4);
border-radius: 8px;
height: 8px;
}
/* Кастомные стили для Ionic компонентов */
ion-card.medical-card {
--background: rgba(255, 255, 255, 0.9);
--color: #1e293b;
border: 1px solid rgba(15, 118, 110, 0.1);
box-shadow: 0 8px 32px rgba(15, 118, 110, 0.1);
}
ion-button.medical-button {
--background: linear-gradient(135deg, #0f766e, #06b6d4);
--color: white;
--border-radius: 12px;
--box-shadow: 0 4px 16px rgba(15, 118, 110, 0.3);
}
ion-button.medical-button:hover {
--box-shadow: 0 6px 20px rgba(15, 118, 110, 0.4);
transform: translateY(-2px);
}
/* Стили для header и footer */
ion-header.medical-header {
--background: rgba(15, 23, 42, 0.95);
--color: white;
backdrop-filter: blur(20px);
border-bottom: 1px solid rgba(15, 118, 110, 0.3);
}
ion-footer.medical-footer {
--background: rgba(15, 23, 42, 0.95);
--color: white;
backdrop-filter: blur(20px);
border-top: 1px solid rgba(15, 118, 110, 0.3);
}
/* Адаптивность */
@media (max-width: 768px) {
.medical-card {
margin: 0.5rem;
border-radius: 12px;
}
.exercise-timer {
padding: 0.75rem;
border-radius: 12px;
}
}
/* Стили для статусов упражнений */
.exercise-completed {
background: rgba(16, 185, 129, 0.1);
border: 1px solid rgba(16, 185, 129, 0.2);
}
.exercise-active {
background: rgba(6, 182, 212, 0.1);
border: 1px solid rgba(6, 182, 212, 0.2);
animation: pulse-medical 2s ease-in-out infinite;
}
.exercise-pending {
background: rgba(148, 163, 184, 0.1);
border: 1px solid rgba(148, 163, 184, 0.2);
}
/* Улучшенные тени для глубины */
.shadow-medical {
box-shadow: 0 4px 6px -1px rgba(15, 118, 110, 0.1), 0 2px 4px -1px rgba(15, 118, 110, 0.06);
}
.shadow-medical-lg {
box-shadow: 0 10px 15px -3px rgba(15, 118, 110, 0.1), 0 4px 6px -2px rgba(15, 118, 110, 0.05);
}
/* Кастомные скроллбары */
::-webkit-scrollbar {
width: 6px;
}
::-webkit-scrollbar-track {
background: rgba(148, 163, 184, 0.1);
border-radius: 3px;
}
::-webkit-scrollbar-thumb {
background: rgba(15, 118, 110, 0.3);
border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
background: rgba(15, 118, 110, 0.5);
}