:root {
    --rows: 6;
    --cols: 6;
}

.btn, .card {
    border-radius: 0 !important;
}

.container, .card, .btn {
    font-family: "Tabac Sans"
}

.board-container {
    display: grid;
    grid-template-columns: repeat(var(--cols), 1fr);
    grid-template-rows: repeat(var(--rows), 1fr);
    width: 100%;
    max-width: 500px; /* Omezí maximální šířku na desktopu */
    aspect-ratio: 1 / 1; /* Udržuje čtvercový poměr stran */
    margin: auto;
    border: 1px solid #ccc;
    border-right:none
}

.cell {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: clamp(1rem, 8vw, 2rem); /* Responzivní velikost písma */
    font-family: monospace;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    user-select: none; /* Zabrání označování textu */
}
.cell:nth-child(var(--cols)n) {
    border-right: none;
}
.cell:nth-last-child(-n + var(--cols)) {
    border-bottom: none;
}

.mark-right, .mark-down {
    position: absolute;
    /*color: #888;*/
    font-size: clamp(0.75rem, 4vw, 1.2rem);
    z-index: 100;
    padding: 0;
    margin:0;
    font-weight: bold;
    /*background-color: #fff;*/
    color: #00f;
}

.mark-right {
    right: -13px;
    top: 50%;
    transform: translateY(-50%);
}

.mark-down {
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
}

.cell-fix { background: radial-gradient(circle, #d7d7da 40%, #fff 55%); }
.cell-dot { background-color: #fff; }

.game-overlay {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 50vw;
    height: 50vh;
    background-color: rgba(0, 0, 0, 0.9);
    color: white;
    display: none;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    z-index: 1000;
    border-radius: 10px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}

.game-overlay.show {
    display: flex;
}

.game-overlay h2 {
    margin-bottom: 20px;
    font-size: 2rem;
    color:#fff;
}

.game-overlay .time {
    font-size: 1.5rem;
    margin-bottom: 20px;
}

@media (max-width: 600px) {
    .game-overlay {
      inset: 0;          /* top:0; right:0; bottom:0; left:0; */
      width: 100vw;      /* šířka celé viewport šířky  */
      height: 100dvh;    /* 100 % výšky včetně dynamického viewportu */
      transform: none;   /* vycentrování už není potřeba */
    }
  }