blackjack/Components/Pages/BlackjackGame.razor.razor

169 lines
6.5 KiB
Plaintext
Raw Normal View History

/* BlackjackGame.razor.css - Стили для компонента Blackjack */
/* Общие стили для секций игрока и дилера */
h4 {
margin-bottom: 0.8rem; /* Немного больше отступа снизу */
font-weight: 600; /* Немного жирнее */
color: #e0e0e0; /* Светлый цвет для темного фона (если будете добавлять) */
text-shadow: 1px 1px 2px rgba(0,0,0,0.5); /* Легкая тень для читаемости */
}
/* Контейнер для карт (рука) */
.hand {
display: flex;
flex-wrap: wrap; /* Карты будут переноситься, если не помещаются */
gap: 10px; /* Пространство между картами */
min-height: 95px; /* Минимальная высота, чтобы контейнер не схлопывался без карт */
margin-bottom: 1.5rem; /* Отступ под рукой */
padding: 8px;
background-color: rgba(0, 0, 0, 0.1); /* Легкий фон для области карт */
border-radius: 8px;
border: 1px solid rgba(255, 255, 255, 0.1); /* Тонкая светлая рамка */
}
/* Стиль для отдельной карты */
.card {
background-color: #fff; /* Белый фон карты */
border: 1px solid #ababab; /* Серая рамка */
border-radius: 6px; /* Скругленные углы */
padding: 15px 10px; /* Внутренние отступы (больше по вертикали) */
min-width: 65px; /* Минимальная ширина карты */
text-align: center;
font-size: 1.5em; /* Размер шрифта ранга/масти */
font-weight: bold;
box-shadow: 3px 3px 7px rgba(0, 0, 0, 0.25); /* Тень для объема */
display: inline-block;
position: relative;
user-select: none; /* Запретить выделение текста на карте */
transition: transform 0.1s ease-in-out; /* Плавность при наведении (если добавим) */
}
/* Если захотите эффект при наведении */
/*
.card:hover {
transform: translateY(-3px);
}
*/
/* Стиль для скрытой карты дилера ("???") */
/* Мы не можем легко стилизовать сам текст "???", но можем стилизовать */
/* первую карту в руке дилера, пока ход игрока. */
/* Однако, текущая логика просто выводит текст "???" в .card */
/* Давайте просто сделаем текст "?" серым, если бы мы обернули его в span */
/* Если вы изменили Razor, как обсуждалось ранее: */
/*
.hidden-card-content {
color: #9e9e9e;
font-style: italic;
font-size: 0.9em;
}
*/
/* В текущем варианте специальный стиль для "???" не применяется, она будет в стандартной карте */
/* Цвета для мастей */
.card-red {
color: #D32F2F; /* Насыщенный красный */
}
.card-black {
color: #212121; /* Глубокий черный */
}
/* Контейнер для кнопок действий */
.actions {
display: flex;
flex-wrap: wrap;
gap: 12px; /* Расстояние между кнопками */
margin-top: 1.5rem; /* Отступ сверху */
}
/* Стиль для кнопок */
.actions button,
.btn-lg { /* Стиль для кнопки "Начать игру" */
padding: 10px 20px; /* Увеличим кнопки */
font-size: 1em;
cursor: pointer;
border-radius: 5px;
border: none; /* Убираем стандартную рамку Bootstrap */
transition: background-color 0.2s ease, transform 0.1s ease; /* Плавные переходы */
box-shadow: 0 2px 5px rgba(0,0,0,0.2); /* Легкая тень для кнопок */
}
/* Улучшенные стили для кнопок Bootstrap (можно настроить под себя) */
.actions .btn-primary { /* Взять карту */
background-color: #1976D2; /* Синий */
color: white;
}
.actions .btn-primary:hover:not(:disabled) {
background-color: #1565C0;
transform: translateY(-1px);
}
.actions .btn-secondary { /* Стоп */
background-color: #6c757d; /* Серый */
color: white;
}
.actions .btn-secondary:hover:not(:disabled) {
background-color: #5a6268;
transform: translateY(-1px);
}
.actions .btn-warning { /* Новая игра */
background-color: #FFA000; /* Оранжевый */
color: #212121; /* Темный текст на оранжевом */
}
.actions .btn-warning:hover:not(:disabled) {
background-color: #FF8F00;
transform: translateY(-1px);
}
/* Кнопка "Начать игру" */
.btn-success.btn-lg {
background-color: #388E3C; /* Зеленый */
color: white;
font-size: 1.2em; /* Крупнее */
padding: 12px 25px;
}
.btn-success.btn-lg:hover:not(:disabled) {
background-color: #2E7D32;
transform: translateY(-1px);
}
/* Стиль для отключенных кнопок */
.actions button:disabled {
cursor: not-allowed;
opacity: 0.5; /* Сделать полупрозрачными */
box-shadow: none; /* Убрать тень у неактивных */
}
/* Сообщения игры */
.alert {
margin-top: 1rem;
margin-bottom: 1.5rem;
padding: 1rem;
border-radius: 6px;
font-weight: 500;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
/* Успешное сообщение (выигрыш) */
.alert-success {
background-color: #E8F5E9; /* Светло-зеленый фон */
color: #2E7D32; /* Темно-зеленый текст */
border: 1px solid #A5D6A7; /* Зеленая рамка */
}
/* Информационное сообщение (ход игры, ничья, проигрыш) */
.alert-info {
background-color: #E3F2FD; /* Светло-голубой фон */
color: #1565C0; /* Темно-синий текст */
border: 1px solid #90CAF9; /* Голубая рамка */
}
/* Разделитель */
hr {
border: none; /* Убираем стандартную линию */
border-top: 1px solid rgba(255, 255, 255, 0.2); /* Светлая полупрозрачная линия */
margin: 2rem 0; /* Увеличим отступы */
}