/* Touch / mobile layout — separate HUD zones from controls */

body.is-touch .gta-hud__radar,
body.is-touch .gta-hud__stats {
    display: none !important;
}

body.is-touch.minimap-on .gta-hud__radar {
    display: block !important;
    width: clamp(56px, 14vw, 72px);
    height: clamp(56px, 14vw, 72px);
    opacity: 0.85;
}

body.is-touch .gta-hud__location {
    top: calc(var(--gta-safe-top) + 0.15rem);
    max-width: min(44vw, 12rem);
}

body.is-touch .gta-hud__zone {
    font-size: clamp(0.95rem, 4vw, 1.2rem);
}

body.is-touch .gta-hud__money-wrap {
    max-width: min(46vw, 11rem);
}

body.is-touch .gta-hud__money {
    font-size: clamp(0.95rem, 3.8vw, 1.25rem);
}

body.is-touch .mission-hud {
    top: calc(var(--gta-safe-top) + 3.1rem);
    left: var(--gta-safe-left);
    right: auto;
    bottom: auto;
    width: min(10.5rem, 42vw);
    max-width: 10.5rem;
    padding: 0.4rem 0.5rem;
}

body.is-touch .mission-hud__title {
    font-size: 0.72rem;
}

body.is-touch .mission-hud__list {
    font-size: 0.58rem;
    padding-left: 0.75rem;
}

body.is-touch .global-chat {
    bottom: auto;
    top: calc(var(--gta-safe-top) + 2.85rem);
    width: min(9.5rem, 40vw);
    transform: translateX(-50%);
}

body.is-touch .global-chat__toggle {
    padding: 0.32rem 0.45rem;
    font-size: 0.58rem;
}

body.is-touch.mobile-driving .global-chat,
body.is-touch.mobile-driving .mobile-controls-hint {
    display: none !important;
}

body.is-touch.mobile-driving .mission-hud {
    top: calc(var(--gta-safe-top) + 2.85rem);
    width: min(9.5rem, 38vw);
    max-width: 9.5rem;
}

.mobile-walk-controls[hidden],
.mobile-drive-pad[hidden] {
    display: none !important;
}

.mobile-controls.is-driving .mobile-walk-controls {
    display: none !important;
}

.mobile-controls.is-driving .mobile-look-zone {
    top: 0;
    right: 0;
    left: auto;
    width: 42%;
    bottom: 42%;
}

.mobile-controls.is-driving .mobile-drive-pad {
    left: var(--gta-safe-left);
    bottom: calc(var(--gta-safe-bottom) + 0.25rem);
    width: 118px;
    height: 118px;
    gap: 0.25rem;
}

.mobile-controls.is-driving .mobile-actions {
    right: var(--gta-safe-right);
    bottom: calc(var(--gta-safe-bottom) + 0.25rem);
    width: 3.35rem;
    grid-template-columns: 1fr;
    gap: 0.28rem;
}

.mobile-controls.is-driving .mobile-btn {
    min-height: 2.15rem;
    font-size: 0.58rem;
    padding: 0.25rem 0.15rem;
}

.mobile-controls:not(.is-driving) .mobile-drive-pad {
    display: none !important;
}

.mobile-controls:not(.is-driving) .mobile-look-zone {
    bottom: 0;
    height: auto;
}

body.is-touch .mobile-controls:not(.is-driving) .mobile-look-zone {
    bottom: 38%;
}

body.is-touch .mobile-controls:not(.is-driving) .mobile-walk-controls {
    bottom: calc(var(--gta-safe-bottom) + 0.25rem);
}

body.is-touch .mobile-controls:not(.is-driving) .mobile-actions {
    bottom: calc(var(--gta-safe-bottom) + 0.25rem);
}

body.is-touch .mobile-joy-base {
    width: 108px;
    height: 108px;
}

body.is-touch .mobile-joy-knob {
    width: 46px;
    height: 46px;
    margin: -23px 0 0 -23px;
}

body.is-touch .mobile-arrow {
    font-size: 0.95rem;
    border-radius: 8px;
}

@media (max-width: 899px), (hover: none) and (pointer: coarse) {
    .gta-hud__radar,
    .gta-hud__stats {
        display: none !important;
    }
}
