/* Базовые стили страницы */
body { background: #121212; color: #e0e0e0; font-family: 'Segoe UI', sans-serif; display: flex; justify-content: center; align-items: center; min-height: 100vh; margin: 0; }
.game-container { background: #1e1e1e; padding: 30px; border-radius: 20px; box-shadow: 0 10px 30px rgba(0,0,0,0.5); text-align: center; width: 380px; }
.dice-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; margin: 25px 0; justify-items: center; }

/* КУБИК */
.dice {
    width: 80px;
    height: 80px;
    background: #eee;
    border-radius: 12px;
    border: 4px solid #333;
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    grid-template-rows: repeat(3, 1fr) !important;
    padding: 8px;
    box-sizing: border-box;
    gap: 4px;
    position: relative;
    transition: 0.3s;
    cursor: pointer;
}

/* ТОЧКИ: Единый стиль */
.dot {
    display: none;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    place-self: center; /* Идеальная центровка в ячейке */
}

/* Цвета граней (Рамка и Точки) */
[data-value="1"] { border-color: #ff4d4d; } [data-value="1"] .dot { background: #ff4d4d; }
[data-value="2"] { border-color: #ffa500; } [data-value="2"] .dot { background: #ffa500; }
[data-value="3"] { border-color: #ffff00; } [data-value="3"] .dot { background: #b3b300; }
[data-value="4"] { border-color: #4caf50; } [data-value="4"] .dot { background: #4caf50; }
[data-value="5"] { border-color: #2196f3; } [data-value="5"] .dot { background: #2196f3; }
[data-value="6"] { border-color: #9c27b0; } [data-value="6"] .dot { background: #9c27b0; }

/* ИНВЕРСИЯ ПРИ ЗАМОРОЗКЕ */
.dice.frozen[data-value="1"] { background: #ff4d4d; }
.dice.frozen[data-value="2"] { background: #ffa500; }
.dice.frozen[data-value="3"] { background: #ffff00; }
.dice.frozen[data-value="4"] { background: #4caf50; }
.dice.frozen[data-value="5"] { background: #2196f3; }
.dice.frozen[data-value="6"] { background: #9c27b0; }
.dice.frozen .dot { background: #fff !important; }
.dice.frozen { border-color: #fff; transform: scale(1.05); box-shadow: 0 0 15px rgba(255,255,255,0.3); }

/* АНИМАЦИЯ */
.dice.rolling { animation: shake 0.1s infinite alternate; background: #444; border-color: #666; filter: blur(1px); }
@keyframes shake { from { transform: rotate(-3deg); } to { transform: rotate(3deg); } }

/* КООРДИНАТЫ ТОЧЕК */
.dot:nth-child(1) { grid-area: 1 / 1; }
.dot:nth-child(2) { grid-area: 1 / 2; }
.dot:nth-child(3) { grid-area: 1 / 3; }
.dot:nth-child(4) { grid-area: 2 / 1; }
.dot:nth-child(5) { grid-area: 2 / 2; } /* Тот самый центр! */
.dot:nth-child(6) { grid-area: 2 / 3; }
.dot:nth-child(7) { grid-area: 3 / 1; }
.dot:nth-child(8) { grid-area: 3 / 2; }
.dot:nth-child(9) { grid-area: 3 / 3; }

/* ОТОБРАЖЕНИЕ ГРАНЕЙ */
[data-value="1"] .dot:nth-child(5) { display: block !important; }
[data-value="2"] .dot:nth-child(3), [data-value="2"] .dot:nth-child(7) { display: block !important; }
[data-value="3"] .dot:nth-child(3), [data-value="3"] .dot:nth-child(5), [data-value="3"] .dot:nth-child(7) { display: block !important; }
[data-value="4"] .dot:nth-child(1), [data-value="4"] .dot:nth-child(3), [data-value="4"] .dot:nth-child(7), [data-value="4"] .dot:nth-child(9) { display: block !important; }
[data-value="5"] .dot:nth-child(1), [data-value="5"] .dot:nth-child(3), [data-value="5"] .dot:nth-child(5), [data-value="5"] .dot:nth-child(7), [data-value="5"] .dot:nth-child(9) { display: block !important; }
[data-value="6"] .dot:nth-child(1), [data-value="6"] .dot:nth-child(3), [data-value="6"] .dot:nth-child(4), [data-value="6"] .dot:nth-child(6), [data-value="6"] .dot:nth-child(7), [data-value="6"] .dot:nth-child(9) { display: block !important; }

/* КНОПКА И ФУТЕР */
#main-btn { background: #4caf50; color: white; border: none; padding: 15px; border-radius: 10px; font-size: 1.1rem; cursor: pointer; width: 100%; margin-top: 15px; transition: 0.2s; }
#main-btn:disabled { background: #555; cursor: not-allowed; }
.jackpot-banner { color: #ffeb3b; font-weight: bold; font-size: 1.4rem; margin-bottom: 10px; }
.stats-footer { font-size: 0.8rem; color: #777; margin-top: 20px; }
