.mobile-music-volume-toggle svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@media (max-width: 760px), (pointer: coarse) {
    .mobile-music-volume-toggle {
        display: grid;
        place-items: center;
        padding: 0;
    }

    .mobile-music-volume-toggle::before,
    .mobile-music-volume-toggle::after {
        content: none;
    }

    .restart-choice-overlay {
        overflow: hidden;
        padding:
            max(8px, env(safe-area-inset-top))
            max(8px, env(safe-area-inset-right))
            max(8px, env(safe-area-inset-bottom))
            max(8px, env(safe-area-inset-left));
        box-sizing: border-box;
    }

    .restart-choice-card {
        display: grid;
        width: min(520px, 100%);
        max-height: 100%;
        gap: 8px;
        overflow: hidden;
        padding: 16px;
        box-sizing: border-box;
    }

    .restart-choice-card .eyebrow {
        margin: 0;
        font-size: 0.62rem;
    }

    .restart-choice-card h2 {
        margin: 0 38px 4px 0;
        font-size: clamp(1.35rem, 7vw, 2rem);
        line-height: 1.02;
    }

    .restart-choice-actions {
        gap: 7px;
        min-height: 0;
    }

    .restart-choice-actions .primary-action,
    .restart-choice-actions .secondary-action {
        min-height: 40px;
        padding: 8px 12px;
        font-size: 0.76rem;
        line-height: 1.15;
    }

    .level-progress-top {
        grid-template-columns: 1fr;
        gap: 3px;
    }

    #level-progress-text {
        text-align: right;
    }

    .upgrade-icon-strip {
        min-height: 33px;
        overflow: visible;
        padding: 2px 5px 5px 2px;
    }

    .upgrade-hud-icon {
        overflow: visible;
        outline: none;
    }

    .mobile-chat-toggle {
        top: calc(max(8px, env(safe-area-inset-top)) + 85px);
        right: max(8px, env(safe-area-inset-right));
        width: 42px;
        height: 42px;
    }

    .mobile-chat-toggle svg {
        width: 22px;
        height: 22px;
        stroke-width: 1.85;
    }

    .multiplayer-panel {
        right: auto;
        bottom: calc(max(12px, env(safe-area-inset-bottom)) + 152px);
        left: max(12px, env(safe-area-inset-left));
        width: min(360px, calc(100% - 24px));
        max-height: min(250px, calc(100dvh - var(--nav-height) - 250px));
        overflow: hidden;
        box-sizing: border-box;
    }
}

@media (max-width: 380px) and (pointer: coarse) {
    .upgrade-icon-strip {
        gap: 2px;
    }

    .upgrade-hud-icon {
        width: 24px;
        height: 24px;
        flex-basis: 24px;
    }
}

@media (pointer: coarse) and (orientation: landscape) {
    .mobile-chat-toggle {
        top: 8px;
    }

    .multiplayer-panel {
        right: 94px;
        bottom: max(12px, env(safe-area-inset-bottom));
        left: 120px;
        width: auto;
        max-width: 360px;
        max-height: calc(100dvh - var(--nav-height) - 24px);
    }

    .restart-choice-card {
        padding: 12px 16px;
    }

    .restart-choice-actions {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .restart-choice-actions .primary-action,
    .restart-choice-actions .secondary-action {
        min-height: 44px;
    }
}
