.game-tile .tile-piskvorky{background:#9fdcff}
.ttt-scores{display:flex;align-items:center;gap:14px}
.ttt-player{display:flex;align-items:center;gap:18px;padding:8px 18px;border:3px solid transparent;border-radius:14px;font-size:20px;font-weight:800;opacity:.65}
.ttt-player strong{font-size:28px}
.ttt-player.ttt-blue{--player-color:#193657;background:#193657;color:#fff}
.ttt-player.ttt-yellow{--player-color:#ffcf72;background:#ffcf72;color:#193657}
.ttt-player.is-playing{opacity:1;border-color:#fff;box-shadow:0 0 0 2px var(--player-color)}
.ttt-panel{align-items:stretch}
.ttt-board{flex:0 1 auto;min-height:0;width:min(58vh,90%);aspect-ratio:1;margin:auto;display:grid;grid-template-columns:repeat(var(--ttt-size,3),minmax(0,1fr));grid-template-rows:repeat(var(--ttt-size,3),minmax(0,1fr));gap:clamp(4px,calc(3.6vh / var(--ttt-size,3)),20px)}
.ttt-cell{min-width:0;min-height:0;border:2px solid #d7e1e7;border-radius:clamp(14px,2vh,28px);background:#f0ece5;box-shadow:0 3px 0 #19365713;padding:10%;transition:background .15s,border-color .15s}
.ttt-cell:enabled:hover{background:#fff0ce;border-color:#d7ac55}
.ttt-cell:focus-visible{outline:4px solid #193657;outline-offset:3px}
.ttt-cell svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:11;stroke-linecap:round;stroke-linejoin:round;display:block;pointer-events:none}
.ttt-cell.ttt-blue{color:#193657;background:#e5eef5}
.ttt-cell.ttt-yellow{color:#d99b27;background:#fff1ca}
.ttt-cell:disabled{opacity:1;cursor:default}
.ttt-cell.ttt-winning{border-color:#80a87b;box-shadow:0 0 0 3px #80a87b55}
.ttt-note{text-align:center;font-size:18px;font-weight:700;padding:10px 0}
.ttt-panel .pexeso-finish p{font-size:22px}
.ttt-board-dense .ttt-cell{border-radius:6px;border-width:1px;box-shadow:none}
.ttt-setup .pexeso-intro img{height:20vh}


.ttt-variants{display:flex;gap:12px;margin:0 0 22px}
.ttt-variants button{border:2px solid #d7e1e7;border-radius:16px;background:#edf0f3;color:#193657;padding:12px 20px;min-width:116px;display:flex;flex-direction:column;align-items:center;gap:4px}
.ttt-variants strong{font-size:24px;font-weight:900}.ttt-variants small{font-size:16px;font-weight:700}
.ttt-variants .is-selected{background:#ffcf72;border-color:#193657;box-shadow:0 0 0 2px #193657}
@media(max-width:800px){.ttt-scores{gap:8px}.ttt-player{font-size:14px;gap:6px;padding:6px}.ttt-player strong{font-size:20px}.ttt-note{font-size:14px}.ttt-board{width:min(58vh,90%)}.ttt-setup .pexeso-note{text-align:center;font-size:15px}}
@media(max-width:800px){.ttt-variants{gap:8px}.ttt-variants button{min-width:0;padding:10px 12px}.ttt-variants strong{font-size:20px}.ttt-variants small{font-size:13px}}

.ttt-setup .pexeso-modes [data-ttt-players='1']{background:#193657;color:#fff}.ttt-setup .pexeso-modes [data-ttt-players='2']{background:#ffcf72;color:#193657}

/* Both intro screens use the panel dimensions, without fixed image offsets. */
.pexeso-setup{container-type:size;display:grid;place-items:center;gap:0;padding:16px}
.pexeso-setup>.pexeso-back{position:absolute;top:clamp(16px,2vh,30px);left:clamp(16px,2vh,30px);z-index:3}
.pexeso-setup .pexeso-intro{width:100%;height:100%;min-height:0;transform:none;padding-bottom:clamp(12px,3cqh,40px);pointer-events:none}
.pexeso-setup .pexeso-intro button{pointer-events:auto}
.pexeso-setup .pexeso-intro img{display:block;flex:0 0 auto;width:min(380px,42cqh,70cqw);height:auto;object-fit:contain;margin:0}
.pexeso-setup .pexeso-intro h2{margin:8px 0 0;font-size:44px;line-height:1.15}
.pexeso-setup .pexeso-intro p{margin:6px 0 22px;font-size:24px;line-height:1.25;text-align:center}
.pexeso-setup .pexeso-note{margin-top:20px;line-height:1.25;text-align:center}
.ttt-setup .pexeso-intro img{width:min(280px,28cqh,55cqw);margin-bottom:14px}


.ttt-setup .ttt-variants{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:22px}
@container (max-height:520px){
  .pexeso-setup .pexeso-intro{padding-bottom:0}
  .pexeso-setup .pexeso-intro img{width:min(250px,32cqh,65cqw)}
  .pexeso-setup .pexeso-intro h2{font-size:30px;margin-top:6px}
  .pexeso-setup .pexeso-intro p{font-size:19px;margin:4px 0 14px}
  .pexeso-setup .pexeso-modes{gap:16px}
  .pexeso-setup .pexeso-modes button{font-size:22px;padding:12px 26px}
  .pexeso-setup .pexeso-note{font-size:16px;margin-top:14px}
  .ttt-setup .pexeso-intro img{width:min(180px,22cqh,45cqw)}
  .ttt-setup .ttt-variants{margin-bottom:14px;gap:8px}
  .ttt-setup .ttt-variants button{padding:8px 14px;min-width:90px}
  .ttt-setup .ttt-variants strong{font-size:20px}
  .ttt-setup .ttt-variants small{font-size:14px}
}
@container (max-width:500px){
  .ttt-setup .ttt-variants{display:grid;grid-template-columns:repeat(2,1fr)}
  .ttt-setup .pexeso-intro img{width:min(140px,16cqh)}
  .ttt-setup .pexeso-note{max-width:90%;font-size:14px}
}

