/* Shared action typography for game start, pause, result and confirmation windows. */
:is(
    .sn-overlay .sn-play,
    .nb-overlay .nb-play,
    .nb-dialog form > div > button,
    .ns-overlay .ns-primary,
    .ns-dialog form > div > button,
    .ns-rotate button,
    .pp-overlay .pp-primary,
    .pd-overlay .pd-primary-button,
    .nbk-over .nbk-primary,
    .nbk-dialog form > div > button,
    .lp-victory .lp-primary,
    .cf-dialog form > div > button,
    .result-modal .result-modal-button,
    .overlay-card .primary-button,
    dialog .primary-button,
    .overlay-card .primary-btn
) {
    /* Game styles already mark primary-button typography as important. */
    font-size: var(--game-modal-action-size, 18px) !important;
    font-weight: 700 !important;
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    line-height: 1.25;
    letter-spacing: 0;
    text-align: center;
    justify-content: center;
    gap: 0;
    min-width: 0;
    max-width: 100%;
    min-height: var(--game-modal-action-height, 50px);
    padding: 12px 18px;
    white-space: normal;
    overflow-wrap: anywhere;
}

.overlay-card :is(.primary-button, .primary-btn) > span {
    font: inherit;
    line-height: inherit;
}

:is(.nb-dialog, .ns-dialog, .nbk-dialog, .cf-dialog) form > div {
    flex-wrap: wrap;
}

:is(.nb-dialog, .ns-dialog, .nbk-dialog, .cf-dialog) form > div > button {
    flex: 1 1 140px;
}

@media (max-width: 760px), (max-height: 540px) {
    :root {
        --game-modal-action-size: 16px;
        --game-modal-action-height: 46px;
    }
}
