/**
 * HunterGate Quantum Navigator Ultra - Main Styles
 * Version: 4.8.4
 * Mobile-first, GPU-accelerated animations, ultra-optimized
 */

/* CSS Variables & Root Configuration */
:root {
    --neon-blue: #00f2ff;
    --neon-green: #00ff00;
    --neon-red: #ff0000;
    --neon-yellow: #ffff00;
    --neon-purple: #ff00ff;
    --neon-orange: #ff8800;
    
    --dark-bg: #0a0e1a;
    --darker-bg: #050709;
    --glass-bg: rgba(255, 255, 255, 0.05);
    --glass-border: rgba(255, 255, 255, 0.1);
    
    --animation-speed: 1s;
    --compass-size: 320px;
    --transition-smooth: cubic-bezier(0.4, 0, 0.2, 1);
    
    --safe-area-inset-top: env(safe-area-inset-top, 0);
    --safe-area-inset-bottom: env(safe-area-inset-bottom, 0);
    
    --glow-intensity: 1;
}

/* Global Reset & Base Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
}

html, body {
    height: 100%;
    overflow: hidden;
    background: radial-gradient(ellipse at center, #0a1628 0%, #000000 100%);
    color: var(--neon-blue);
    font-family: 'Orbitron', -apple-system, BlinkMacSystemFont, sans-serif;
    font-weight: 400;
    user-select: none;
    -webkit-user-select: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    touch-action: pan-x pan-y;
}

/* GPU Acceleration */
.quantum-overlay,
.compass-container,
.quantum-ring,
.radar-sweep,
.particle,
.glassmorphism {
    transform: translateZ(0);
    will-change: transform, opacity;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

/* Main Container */
#huntergate-quantum-navigator {
    position: relative;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    overflow: hidden;
    --hgqn-slide-nav-footprint: 88px;
    --hgqn-slide-nav-left-offset: calc(10px + env(safe-area-inset-left, 0px));
    --hgqn-slide-nav-top-offset: calc(52px + var(--safe-area-inset-top));
    --hgqn-slide-nav-bottom-offset: calc(12px + var(--safe-area-inset-bottom));
}


/* Fullscreen mode (navigator pages only) */
body.hgqn-fullscreen #huntergate-quantum-navigator {
    position: fixed;
    inset: 0;
    z-index: 999999;
}

/* Hide common theme headers/titles that leak into fullscreen navigator pages */
body.hgqn-fullscreen header,
body.hgqn-fullscreen .site-header,
body.hgqn-fullscreen .entry-header,
body.hgqn-fullscreen .entry-title,
body.hgqn-fullscreen .wp-block-post-title,
body.hgqn-fullscreen .page-header,
body.hgqn-fullscreen .page-title,
body.hgqn-fullscreen .elementor-location-header,
body.hgqn-fullscreen .elementor-location-footer,
body.hgqn-fullscreen footer,
body.hgqn-fullscreen .site-footer {
    display: none !important;
}

/* Remove theme layout padding/margins around the navigator container */
body.hgqn-fullscreen #page,
body.hgqn-fullscreen #content,
body.hgqn-fullscreen .site,
body.hgqn-fullscreen .site-content,
body.hgqn-fullscreen .content-area,
body.hgqn-fullscreen .entry-content,
body.hgqn-fullscreen .container,
body.hgqn-fullscreen .wrap {
    margin: 0 !important;
    padding: 0 !important;
    max-width: none !important;
}

/* Overlay root (prep only) */
#hgqn-overlay-root {
    position: fixed;
    inset: 0;
    z-index: 99999;
    pointer-events: none;
}

/* Icons must be visible by default (mobile/desktop safe) */
.material-icons,
i.material-icons {
    opacity: 1 !important;
    visibility: visible !important;
}

.nav-btn .material-icons {
    opacity: 1 !important;
    visibility: visible !important;
    color: var(--neon-blue);
}
.nav-btn:hover .material-icons { color: var(--dark-bg); }

/* Particles Background */
#particles-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    opacity: 0.6;
}

/* Password Overlay */
#password-overlay {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #0a0e1a 0%, #1a1e2a 100%);
    animation: fadeIn 0.5s ease-out;
}

.quantum-grid {
    position: absolute;
    inset: 0;
    background-image: 
        linear-gradient(rgba(0, 242, 255, 0.1) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 242, 255, 0.1) 1px, transparent 1px);
    background-size: 50px 50px;
    animation: gridMove 10s linear infinite;
}

@keyframes gridMove {
    0% { transform: translate(0, 0); }
    100% { transform: translate(50px, 50px); }
}

#password-container {
    position: relative;
    width: 90%;
    max-width: 400px;
    padding: 2rem;
    text-align: center;
    z-index: 1;
}

.glassmorphism {
    background: linear-gradient(135deg, 
        rgba(255, 255, 255, 0.1) 0%, 
        rgba(255, 255, 255, 0.05) 100%);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    box-shadow: 
        0 8px 32px rgba(0, 242, 255, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.3);
}

.logo-animation {
    margin-bottom: 1.5rem;
    filter: drop-shadow(0 0 20px var(--neon-blue));
}

#password-title {
    font-size: clamp(1.5rem, 5vw, 2rem);
    font-weight: 700;
    margin-bottom: 2rem;
    letter-spacing: 2px;
    background: linear-gradient(90deg, var(--neon-blue), var(--neon-purple));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: glowPulse 2s ease-in-out infinite;
}

.glitch {
    position: relative;
    animation: glitch 3s infinite;
}

@keyframes glitch {
    0%, 100% { opacity: 1; }
    92.5% { opacity: 1; }
    93% { opacity: 0.4; }
    93.5% { opacity: 1; }
}

.input-group {
    position: relative;
    margin-bottom: 2rem;
}

#password-input {
    width: 100%;
    padding: 1rem;
    background: rgba(0, 0, 0, 0.3);
    border: 2px solid var(--neon-blue);
    border-radius: 10px;
    color: var(--neon-blue);
    font-family: 'Orbitron', monospace;
    font-size: 2rem;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.5em;
    outline: none;
    transition: all 0.3s var(--transition-smooth);
    caret-color: var(--neon-blue);
}

#password-input:focus {
    border-color: var(--neon-purple);
    box-shadow: 
        0 0 30px rgba(255, 0, 255, 0.5),
        inset 0 0 20px rgba(255, 0, 255, 0.1);
    transform: scale(1.02);
}

.input-border {
    position: absolute;
    inset: -2px;
    border-radius: 10px;
    background: linear-gradient(45deg, 
        var(--neon-blue), 
        var(--neon-purple), 
        var(--neon-blue));
    background-size: 300% 300%;
    opacity: 0;
    transition: opacity 0.3s;
    pointer-events: none;
    z-index: -1;
    animation: borderRotate 3s linear infinite;
}

#password-input:focus ~ .input-border {
    opacity: 0.5;
}

@keyframes borderRotate {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* Quantum Button Styles */
.quantum-btn {
    position: relative;
    padding: 0.875rem 2rem;
    background: linear-gradient(135deg, 
        rgba(0, 242, 255, 0.2) 0%, 
        rgba(0, 242, 255, 0.1) 100%);
    border: 2px solid var(--neon-blue);
    border-radius: 50px;
    color: var(--neon-blue);
    font-family: 'Orbitron', sans-serif;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    cursor: pointer;
    overflow: hidden;
    transition: all 0.3s var(--transition-smooth);
}

.quantum-btn:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: radial-gradient(circle, var(--neon-blue) 0%, transparent 70%);
    transition: width 0.6s, height 0.6s;
    transform: translate(-50%, -50%);
    border-radius: 50%;
}

.quantum-btn:hover:before {
    width: 300px;
    height: 300px;
}

.quantum-btn:hover {
    transform: translateY(-2px);
    box-shadow: 
        0 10px 40px rgba(0, 242, 255, 0.4),
        inset 0 0 20px rgba(0, 242, 255, 0.2);
}

.quantum-btn:active {
    transform: translateY(0);
}

.quantum-btn span {
    position: relative;
    z-index: 1;
}

.btn-glow {
    position: absolute;
    inset: -3px;
    border-radius: 50px;
    background: linear-gradient(45deg, 
        var(--neon-blue), 
        transparent, 
        var(--neon-blue));
    opacity: 0;
    filter: blur(10px);
    transition: opacity 0.3s;
    pointer-events: none;
}

.quantum-btn:hover .btn-glow {
    animation: rotateGlow 2s linear infinite;
    opacity: 0.5;
}

@keyframes rotateGlow {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Status Bar */
.status-bar {
    position: fixed;
    top: var(--safe-area-inset-top);
    left: 0;
    right: 0;
    height: 40px;
    background: linear-gradient(90deg, 
        rgba(0, 0, 0, 0.8) 0%, 
        rgba(0, 0, 0, 0.6) 100%);
    backdrop-filter: blur(10px);
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 0 1rem;
    z-index: 100;
    border-bottom: 1px solid rgba(0, 242, 255, 0.2);
}

.status-item {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    color: var(--neon-blue);
    text-shadow: 0 0 5px currentColor;
}

.status-item .material-icons {
    font-size: 1rem;
}

/* Swiper Customization */
.quantum-swiper {
    width: 100%;
    height: calc(100% - 40px);
    margin-top: 40px;
}

.swiper-slide {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1rem;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
}

.swiper-pagination {
    bottom: calc(1.75rem + var(--safe-area-inset-bottom)) !important;
    opacity: 0.55;
    pointer-events: none;
}

.swiper-pagination-bullet {
    width: 40px;
    height: 40px;
    background: rgba(0, 0, 0, 0.5);
    border: 2px solid var(--neon-blue);
    backdrop-filter: blur(10px);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.7;
    transition: all 0.3s;
}

.swiper-pagination-bullet-active {
    background: var(--neon-blue);
    transform: scale(1.2);
    opacity: 1;
}

.swiper-pagination-bullet .material-icons {
    color: white;
    font-size: 20px;
}

/* Quantum Header */
.quantum-header {
    position: relative;
    width: 100%;
    padding: 1rem;
    margin-bottom: 1.5rem;
    text-align: center;
}

.quantum-header h1 {
    font-size: clamp(1.25rem, 4vw, 1.75rem);
    font-weight: 900;
    letter-spacing: 3px;
    background: linear-gradient(90deg, 
        var(--neon-blue) 0%, 
        var(--neon-purple) 50%, 
        var(--neon-blue) 100%);
    background-size: 200% auto;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: shimmer 3s linear infinite;
    text-shadow: 0 0 30px rgba(0, 242, 255, 0.5);
}

@keyframes shimmer {
    0% { background-position: 0% center; }
    100% { background-position: 200% center; }
}

.header-glow {
    position: absolute;
    inset: -10px;
    background: radial-gradient(ellipse at center, 
        rgba(0, 242, 255, 0.3) 0%, 
        transparent 70%);
    filter: blur(20px);
    z-index: -1;
    animation: pulse 2s ease-in-out infinite;
}

/* Compass Container */
.compass-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
}

.compass-container {
    position: relative;
    width: var(--compass-size);
    height: var(--compass-size);
    --compass-label-radius: clamp(96px, calc(var(--compass-size) * 0.34), 124px);
    border-radius: 50%;
    background: radial-gradient(circle at center, 
        rgba(0, 20, 40, 0.9) 0%, 
        rgba(0, 10, 20, 0.95) 100%);
    border: 3px solid var(--neon-blue);
    box-shadow: 
        0 0 50px rgba(0, 242, 255, 0.5),
        inset 0 0 50px rgba(0, 242, 255, 0.1),
        0 0 100px rgba(0, 242, 255, 0.2);
    overflow: hidden;
    transition: all 0.5s var(--transition-smooth);
}

.compass-container.active {
    animation: compassActivate 0.5s ease-out;
}

@keyframes compassActivate {
    0% { transform: scale(0.9) rotate(0deg); }
    50% { transform: scale(1.05) rotate(5deg); }
    100% { transform: scale(1) rotate(0deg); }
}

.compass-container.pulse-fast {
    animation: pulseFast 0.5s ease-in-out infinite;
}

@keyframes pulseFast {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.02); }
}

/* Quantum Rings */
.quantum-ring {
    position: absolute;
    border-radius: 50%;
    border: 1px solid rgba(0, 242, 255, 0.2);
    pointer-events: none;
}

.ring-1 {
    inset: 10%;
    animation: ringRotate 20s linear infinite;
}

.ring-2 {
    inset: 20%;
    animation: ringRotate 30s linear infinite reverse;
}

.ring-3 {
    inset: 30%;
    animation: ringRotate 40s linear infinite;
}

@keyframes ringRotate {
    0% { transform: rotate(0deg); opacity: 0.3; }
    50% { opacity: 0.6; }
    100% { transform: rotate(360deg); opacity: 0.3; }
}

/* Perimeter Ring */
.perimeter-ring {
    position: absolute;
    inset: 5px;
    border-radius: 50%;
    border: 4px solid var(--neon-red);
    transition: all 0.3s var(--transition-smooth);
    box-shadow: 
        0 0 20px currentColor,
        inset 0 0 20px currentColor;
    animation: perimeterPulse 2s ease-in-out infinite;
}

.perimeter-ring.yellow {
    border-color: var(--neon-yellow);
}

.perimeter-ring.green {
    border-color: var(--neon-green);
}

@keyframes perimeterPulse {
    0%, 100% { 
        opacity: 0.8;
        box-shadow: 
            0 0 20px currentColor,
            inset 0 0 20px currentColor;
    }
    50% { 
        opacity: 1;
        box-shadow: 
            0 0 40px currentColor,
            inset 0 0 30px currentColor;
    }
}

/* Compass Scale */
.compass-scale {
    position: absolute;
    inset: 0;
    --hgqn-compass-rotation: 0deg;
    transition: transform 0.1s linear;
    will-change: transform;
}

.degree-mark {
    position: absolute;
    width: 100%;
    height: 100%;
    transform-origin: center;
}

.degree-mark::after {
    content: '';
    position: absolute;
    top: 10px;
    left: 50%;
    width: 1px;
    height: 5px;
    background: var(--neon-blue);
    transform: translateX(-50%);
    opacity: 0.5;
}

.degree-mark.major::after {
    width: 2px;
    height: 10px;
    opacity: 1;
    box-shadow: 0 0 5px var(--neon-blue);
}

.degree-mark span {
    position: absolute;
    top: 25px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 0.625rem;
    color: var(--neon-blue);
    text-shadow: 0 0 5px currentColor;
    font-weight: 600;
}

/* Direction Labels */
.direction {
    position: absolute;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--neon-blue);
    text-shadow: 
        0 0 10px currentColor,
        0 0 20px currentColor;
    z-index: 10;
}

.compass-cardinal {
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    pointer-events: none;
    transform: rotate(var(--cardinal-angle, 0deg)) translate3d(0, calc(var(--compass-label-radius) * -1), 0);
    will-change: transform;
}

.compass-cardinal__text {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.45rem;
    transform: translate3d(-50%, -50%, 0) rotate(calc(-1 * var(--hgqn-compass-rotation)));
    transform-origin: center center;
    backface-visibility: hidden;
    letter-spacing: 0.08em;
    line-height: 1;
}

/* Radar Sweep */
.radar-sweep {
    position: absolute;
    inset: 10%;
    border-radius: 50%;
    background: conic-gradient(
        from 0deg,
        transparent 0deg,
        rgba(0, 242, 255, 0.3) 10deg,
        transparent 30deg
    );
    animation: radarSweep 4s linear infinite;
    pointer-events: none;
}

@keyframes radarSweep {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Target Indicator */
.target-indicator {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 12px;
    background: var(--neon-red);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.2s var(--transition-smooth);
    z-index: 15;
}

.target-pulse {
    position: absolute;
    inset: -10px;
    border: 2px solid var(--neon-red);
    border-radius: 50%;
    animation: targetPulse 1.5s ease-out infinite;
}

@keyframes targetPulse {
    0% {
        transform: scale(1);
        opacity: 1;
    }
    100% {
        transform: scale(3);
        opacity: 0;
    }
}

/* Compass Needle */
.compass-needle {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 3px;
    height: 40%;
    background: linear-gradient(to top, 
        transparent 0%, 
        var(--neon-blue) 100%);
    transform-origin: bottom center;
    transform: translate(-50%, -100%);
    box-shadow: 0 0 15px var(--neon-blue);
    transition: all 0.3s var(--transition-smooth);
    z-index: 20;
}

/* Center Core */
.center-core {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    background: radial-gradient(circle, 
        var(--neon-blue) 0%, 
        transparent 70%);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 
        0 0 30px var(--neon-blue),
        inset 0 0 10px var(--neon-blue);
    z-index: 25;
    animation: corePulse 2s ease-in-out infinite;
}

.center-core.locked {
    background: radial-gradient(circle, 
        var(--neon-green) 0%, 
        transparent 70%);
    box-shadow: 
        0 0 30px var(--neon-green),
        inset 0 0 10px var(--neon-green);
    animation: coreLockedPulse 1s ease-in-out infinite;
}

@keyframes corePulse {
    0%, 100% { transform: translate(-50%, -50%) scale(1); }
    50% { transform: translate(-50%, -50%) scale(1.2); }
}

@keyframes coreLockedPulse {
    0%, 100% { 
        transform: translate(-50%, -50%) scale(1);
        box-shadow: 
            0 0 30px var(--neon-green),
            inset 0 0 10px var(--neon-green);
    }
    50% { 
        transform: translate(-50%, -50%) scale(1.3);
        box-shadow: 
            0 0 50px var(--neon-green),
            inset 0 0 20px var(--neon-green);
    }
}

/* Distance Display */
.distance-display {
    position: absolute;
    bottom: calc(10% + 14px);
    left: 50%;
    transform: translateX(-50%);
    min-width: 108px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.12rem;
    text-align: center;
    line-height: 1;
    background: transparent;
    padding: 0.44rem 0.88rem 0.3rem;
    border-radius: 20px;
    border: 1px solid rgba(0, 242, 255, 0.9);
    box-shadow: 0 0 18px rgba(0, 242, 255, 0.12), inset 0 0 14px rgba(0, 242, 255, 0.05);
    overflow: hidden;
    isolation: isolate;
    z-index: 30;
}

.distance-display::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background:
        linear-gradient(180deg,
            rgba(0, 6, 14, 0.86) 0%,
            rgba(0, 6, 14, 0.74) 42%,
            rgba(0, 6, 14, 0.34) 60%,
            rgba(0, 6, 14, 0.08) 76%,
            rgba(0, 6, 14, 0) 100%);
    z-index: -1;
    pointer-events: none;
}

.distance-value {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 0.14em;
    white-space: nowrap;
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--neon-blue);
    text-shadow: 0 0 10px currentColor;
}

.distance-number {
    display: inline-block;
    font-size: 1em;
    line-height: 0.95;
}

.distance-unit-inline {
    display: inline-block;
    font-size: 0.48em;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.14em;
    opacity: 0.82;
}

.distance-unit,
.distance-direction {
    min-height: 0.82em;
    font-size: 0.72rem;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    opacity: 0.82;
}

.distance-direction[hidden] {
    display: none !important;
}

.distance-display:not(.distance-display--has-readout) {
    gap: 0;
    padding-bottom: 0.3rem;
}

@media (max-width: 480px) {
    .distance-display {
        min-width: 96px;
        padding: 0.4rem 0.76rem 0.26rem;
    }
    .distance-value {
        font-size: 1.34rem;
    }
    .distance-unit,
    .distance-direction {
        font-size: 0.66rem;
        letter-spacing: 0.18em;
    }
}

/* Compass Info */
.compass-info {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    width: 100%;
    margin-top: 1.5rem;
}

.info-item {
    text-align: center;
    padding: 0.75rem;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 10px;
    border: 1px solid rgba(0, 242, 255, 0.3);
}

.info-label {
    display: block;
    font-size: 0.625rem;
    text-transform: uppercase;
    opacity: 0.7;
    margin-bottom: 0.25rem;
}

.info-value {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--neon-blue);
    text-shadow: 0 0 5px currentColor;
}

.info-value.hot {
    color: var(--neon-red);
}

.info-value.warm {
    color: var(--neon-yellow);
}

.info-value.cold {
    color: var(--neon-blue);
}

/* Signal Bars */
.signal-bars {
    display: inline-flex;
    gap: 2px;
    align-items: flex-end;
}

.signal-bars span {
    width: 4px;
    background: rgba(0, 242, 255, 0.3);
    transition: all 0.3s;
}

.signal-bars span:nth-child(1) { height: 6px; }
.signal-bars span:nth-child(2) { height: 9px; }
.signal-bars span:nth-child(3) { height: 12px; }
.signal-bars span:nth-child(4) { height: 15px; }
.signal-bars span:nth-child(5) { height: 18px; }

.signal-bars span.active {
    background: var(--neon-green);
    box-shadow: 0 0 5px var(--neon-green);
}

/* Control Panel */
.control-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 1rem;
    width: 100%;
    max-width: 600px;
    margin: 0 auto 2rem;
}

.control-card {
    background: rgba(0, 20, 40, 0.5);
    border: 1px solid rgba(0, 242, 255, 0.3);
    border-radius: 15px;
    padding: 1.5rem;
    text-align: center;
    transition: all 0.3s var(--transition-smooth);
}

.control-card:hover {
    transform: translateY(-5px);
    background: rgba(0, 20, 40, 0.7);
    box-shadow: 0 10px 30px rgba(0, 242, 255, 0.3);
}

.card-icon {
    font-size: 2.5rem;
    color: var(--neon-blue);
    margin-bottom: 0.5rem;
}

.control-card h3 {
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 1rem;
    color: var(--neon-blue);
}

.nav-buttons {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.5rem;
}

.nav-btn {
    width: 50px;
    height: 50px;
    background: rgba(0, 0, 0, 0.5);
    border: 1px solid var(--neon-blue);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s;
}

.nav-btn:hover {
    background: var(--neon-blue);
    transform: scale(1.1);
}

.control-btn {
    width: 100%;
    padding: 1rem;
    background: linear-gradient(135deg, 
        rgba(0, 242, 255, 0.1) 0%, 
        transparent 100%);
    border: 2px solid var(--neon-blue);
    border-radius: 10px;
    color: var(--neon-blue);
    font-family: 'Orbitron', sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    transition: all 0.3s;
}

.control-btn:hover {
    background: var(--neon-blue);
    color: var(--dark-bg);
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(0, 242, 255, 0.4);
}

.control-btn:active {
    transform: translateY(0);
}

/* Stats Grid */
.stats-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    width: 100%;
    max-width: 500px;
    margin: 0 auto 2rem;
}

.stat-card {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
}

.stat-icon {
    font-size: 2rem;
    color: var(--neon-blue);
    opacity: 0.8;
}

.stat-info {
    flex: 1;
}

.stat-label {
    font-size: 0.625rem;
    text-transform: uppercase;
    opacity: 0.7;
    margin-bottom: 0.25rem;
}

.stat-value {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--neon-blue);
    text-shadow: 0 0 10px currentColor;
}

/* FAB Menu */
.fab-container {
    position: fixed;
    bottom: calc(80px + var(--safe-area-inset-bottom));
    right: 1rem;
    z-index: 1000;
}

.fab {
    width: 56px;
    height: 56px;
    background: var(--neon-blue);
    border: none;
    border-radius: 50%;
    color: var(--dark-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(0, 242, 255, 0.4);
    transition: all 0.3s;
}

.fab:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 20px rgba(0, 242, 255, 0.6);
}

.fab.active {
    transform: rotate(45deg);
}

.fab-menu {
    position: absolute;
    bottom: 70px;
    right: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    opacity: 0;
    pointer-events: none;
    transition: all 0.3s;
}

.fab-menu.active {
    opacity: 1;
    pointer-events: all;
}

.fab-item {
    width: 48px;
    height: 48px;
    background: rgba(0, 20, 40, 0.9);
    border: 2px solid var(--neon-blue);
    border-radius: 50%;
    color: var(--neon-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transform: scale(0);
    transition: all 0.3s;
    backdrop-filter: blur(10px);
}

.fab-menu.active .fab-item {
    transform: scale(1);
}

.fab-menu.active .fab-item:nth-child(1) { transition-delay: 0.05s; }
.fab-menu.active .fab-item:nth-child(2) { transition-delay: 0.1s; }
.fab-menu.active .fab-item:nth-child(3) { transition-delay: 0.15s; }

.fab-item:hover {
    background: var(--neon-blue);
    color: var(--dark-bg);
}

/* Notifications */
.quantum-notification {
    position: fixed;
    top: calc(60px + var(--safe-area-inset-top));
    left: 50%;
    transform: translateX(-50%) translateY(-100px);
    padding: 1rem 2rem;
    background: rgba(0, 20, 40, 0.95);
    border: 2px solid var(--neon-blue);
    border-radius: 50px;
    color: var(--neon-blue);
    font-size: 0.875rem;
    font-weight: 600;
    backdrop-filter: blur(10px);
    z-index: 10000;
    transition: all 0.3s var(--transition-smooth);
    white-space: nowrap;
}

.quantum-notification.show {
    transform: translateX(-50%) translateY(0);
}

.quantum-notification.error {
    border-color: var(--neon-red);
    color: var(--neon-red);
    box-shadow: 0 0 20px var(--neon-red);
}

.quantum-notification.success {
    border-color: var(--neon-green);
    color: var(--neon-green);
    box-shadow: 0 0 20px var(--neon-green);
}

/* Loading & Success Overlays */
.quantum-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.9);
    backdrop-filter: blur(20px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.loading-spinner {
    position: relative;
    width: 150px;
    height: 150px;
}

.spinner-ring {
    position: absolute;
    inset: 0;
    border: 3px solid transparent;
    border-radius: 50%;
}

.spinner-ring:nth-child(1) {
    border-top-color: var(--neon-blue);
    animation: spin 1.5s linear infinite;
}

.spinner-ring:nth-child(2) {
    border-right-color: var(--neon-purple);
    animation: spin 2s linear infinite reverse;
    inset: 20px;
}

.spinner-ring:nth-child(3) {
    border-bottom-color: var(--neon-green);
    animation: spin 2.5s linear infinite;
    inset: 40px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.loading-text {
    margin-top: 2rem;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: var(--neon-blue);
    animation: loadingPulse 1.5s ease-in-out infinite;
}

@keyframes loadingPulse {
    0%, 100% { opacity: 0.5; }
    50% { opacity: 1; }
}

.success-message {
    margin-top: 2rem;
    font-size: 1.5rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: var(--neon-green);
    text-shadow: 0 0 30px var(--neon-green);
    animation: successGlow 2s ease-in-out infinite;
}

@keyframes successGlow {
    0%, 100% { 
        text-shadow: 0 0 30px var(--neon-green);
        transform: scale(1);
    }
    50% { 
        text-shadow: 0 0 50px var(--neon-green);
        transform: scale(1.05);
    }
}

/* Animations */
.fade-in {
    animation: fadeIn 0.5s ease-out;
}

.fade-out {
    animation: fadeOut 0.5s ease-out;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes fadeOut {
    from { opacity: 1; }
    to { opacity: 0; }
}

.shake {
    animation: shake 0.5s ease-in-out;
}

@keyframes shake {
    0%, 100% { transform: translateX(0); }
    10%, 30%, 50%, 70%, 90% { transform: translateX(-10px); }
    20%, 40%, 60%, 80% { transform: translateX(10px); }
}

@keyframes glowPulse {
    0%, 100% { text-shadow: 0 0 20px currentColor; }
    50% { text-shadow: 0 0 40px currentColor, 0 0 60px currentColor; }
}

@keyframes pulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.05); opacity: 0.9; }
}

/* Responsive Design */
@media (max-width: 360px) {
    :root {
        --compass-size: 280px;
    }
    
    .quantum-header h1 {
        font-size: 1.125rem;
    }
    
    .stats-grid {
        grid-template-columns: 1fr;
    }
    
    .control-grid {
        grid-template-columns: 1fr;
    }
}

@media (orientation: landscape) and (max-height: 500px) {
    :root {
        --compass-size: 250px;
    }
    
    .quantum-header {
        margin-bottom: 0.5rem;
    }
    
    .compass-info {
        margin-top: 0.5rem;
    }
    
    .stats-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 0.5rem;
    }
}

@media (min-width: 768px) {
    :root {
        --compass-size: 400px;
    }
    
    .quantum-header h1 {
        font-size: 2rem;
    }
    
    .control-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .stats-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* --- Layout Fix: pin navigator fullscreen and reserve space for status-bar --- */
#huntergate-quantum-navigator,
css#huntergate-quantum-navigator {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100vh !important;
    z-index: 999999 !important;
}

.quantum-swiper {
    position: absolute !important;
    top: 40px !important; /* Высота status-bar */
    left: 0 !important;
    width: 100% !important;
    height: calc(100% - 40px) !important;
}
/* ... (весь ваш предыдущий файл без изменений до конца) ... */

/* Добавьте БЛОК НИЖЕ ПЕРЕД КОНЦОМ ФАЙЛА (или после последнего media-query) */

/* ==== Custom overrides (titles removed, button lower) ==== */
.quantum-header { display: none !important; }

/* Немного отступа сверху для обёртки компаса, чтобы компенсировать удалённый заголовок */
.compass-wrapper { margin-top: 10px; }

/* Опустить кнопку ниже */
#activate-compass {
    margin-top: 35px !important;
}

/* При очень маленькой высоте экрана уменьшим отступ */
@media (orientation: landscape) and (max-height: 500px) {
    #activate-compass {
        margin-top: 20px !important;
    }
}
/* ==== MAP UPGRADE (v2.1.0) ==== */
#leaflet-map.qn-map-enter {
    animation: qnMapFade 0.6s ease-out;
}
@keyframes qnMapFade {
    0% { opacity:0; transform:scale(0.96); }
    100% { opacity:1; transform:scale(1); }
}

/* Пользовательский маркер */
.qn-user-marker {
    position: relative;
    width:60px;
    height:60px;
    pointer-events:none;
}
.qn-user-dot {
    position:absolute;
    top:50%;left:50%;
    width:14px;height:14px;
    background: radial-gradient(circle,#00f2ff 0%, #004050 70%);
    border:2px solid #00f2ff;
    border-radius:50%;
    transform:translate(-50%,-50%);
    box-shadow:0 0 12px #00f2ff,0 0 25px rgba(0,242,255,0.6);
}
.qn-user-arrow {
    position:absolute;
    top:50%;left:50%;
    width:0;height:0;
    border-left:8px solid transparent;
    border-right:8px solid transparent;
    border-bottom:18px solid #00f2ff;
    filter:drop-shadow(0 0 6px #00f2ff);
    transform-origin:50% 75%;
    transform:translate(-50%,-50%) rotate(0deg);
    transition: transform 0.15s linear;
}
.qn-user-accuracy {
    position:absolute;
    top:50%;left:50%;
    width:50px;height:50px;
    border:2px solid rgba(0,242,255,0.4);
    border-radius:50%;
    transform:translate(-50%,-50%);
    animation: qnPulseAcc 2.4s ease-in-out infinite;
}
@keyframes qnPulseAcc {
    0%,100% { opacity:0.55; transform:translate(-50%,-50%) scale(1); }
    50% { opacity:0.1; transform:translate(-50%,-50%) scale(1.35); }
}

/* Маркер цели */
.qn-target-marker {
    width:40px;height:40px;
    position:relative;
    pointer-events:none;
}
.qn-target-core {
    position:absolute;
    top:50%;left:50%;
    width:18px;height:18px;
    background:radial-gradient(circle,#ff00ff 0%,rgba(255,0,255,0.1) 70%);
    border:2px solid #ff00ff;
    border-radius:50%;
    transform:translate(-50%,-50%);
    box-shadow:0 0 16px #ff00ff, 0 0 36px rgba(255,0,255,0.7);
}
.qn-target-pulse {
    position:absolute;
    top:50%;left:50%;
    width:34px;height:34px;
    border:2px solid rgba(255,0,255,0.5);
    border-radius:50%;
    transform:translate(-50%,-50%);
    animation: qnTargetPulse 2s ease-out infinite;
}
@keyframes qnTargetPulse {
    0% { transform:translate(-50%,-50%) scale(0.55); opacity:1; }
    100% { transform:translate(-50%,-50%) scale(1.5); opacity:0; }
}

/* Анимированная линия маршрута */
.leaflet-overlay-pane .qn-route-animated {
    stroke-linecap:round;
    filter:drop-shadow(0 0 6px #00f2ff) drop-shadow(0 0 12px rgba(0,242,255,0.6));
}

/* Прогрессовая линия */
.leaflet-overlay-pane .qn-route-progress {
    stroke:#ffffff;
    stroke-linecap:round;
    filter:drop-shadow(0 0 4px #fff);
}

/* Активный сегмент */
.leaflet-overlay-pane .qn-route-active-seg {
    stroke:#ffff00;
    stroke-linecap:round;
    filter:drop-shadow(0 0 8px #ffff66);
    animation: qnActiveSegBlink 1.6s ease-in-out infinite;
}
@keyframes qnActiveSegBlink {
    0%,100% { opacity:0.55; }
    50% { opacity:0.95; }
}

/* Кнопки карты */
.qn-map-btn {
    background:linear-gradient(135deg, rgba(0,242,255,0.15), rgba(0,242,255,0.05));
    border:1px solid #00f2ff;
    color:#00f2ff;
    width:42px;height:42px;
    border-radius:50%;
    cursor:pointer;
    font-size:1.1rem;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 0 12px rgba(0,242,255,0.4);
    margin:6px;
    backdrop-filter:blur(8px);
    transition:all .3s;
}
.qn-map-btn:hover {
    background:#00f2ff;
    color:#03121a;
    transform:translateY(-3px);
    box-shadow:0 0 18px #00f2ff;
}
.qn-reroute-btn { font-size:1.0rem; }


.leaflet-overlay-pane .qn-route-glow {
    stroke-linecap: round;
    filter: blur(1px) drop-shadow(0 0 8px rgba(0,242,255,0.65)) drop-shadow(0 0 18px rgba(0,242,255,0.45));
}
.leaflet-overlay-pane .qn-route-animated.qn-route-pulse-enabled,
.leaflet-overlay-pane .qn-route-fallback.qn-route-pulse-enabled,
.leaflet-overlay-pane .qn-route-active-seg.qn-route-pulse-enabled {
    animation: qnRoutePulse 1.9s ease-in-out infinite;
}
.leaflet-overlay-pane .qn-route-animated.qn-intensity-low,
.leaflet-overlay-pane .qn-route-fallback.qn-intensity-low { opacity: 0.78; }
.leaflet-overlay-pane .qn-route-animated.qn-intensity-normal,
.leaflet-overlay-pane .qn-route-fallback.qn-intensity-normal { opacity: 0.92; }
.leaflet-overlay-pane .qn-route-animated.qn-intensity-high,
.leaflet-overlay-pane .qn-route-fallback.qn-intensity-high {
    opacity: 1;
    filter: drop-shadow(0 0 8px #00f2ff) drop-shadow(0 0 18px rgba(0,242,255,0.72));
}
.leaflet-overlay-pane .qn-route-fallback {
    stroke-linecap: round;
    filter: drop-shadow(0 0 7px rgba(0,242,255,0.6));
}
.qn-target-marker.qn-portal-pulse-enabled .qn-target-pulse {
    animation-duration: 1.2s;
    border-color: rgba(255,0,255,0.9);
    box-shadow: 0 0 12px rgba(255,0,255,0.65);
}
.qn-target-marker.qn-portal-pulse-enabled .qn-target-core {
    box-shadow: 0 0 16px #ff00ff, 0 0 36px rgba(255,0,255,0.75), 0 0 60px rgba(255,0,255,0.35);
}
@keyframes qnRoutePulse {
    0%,100% { stroke-opacity: 0.72; }
    50% { stroke-opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
    .qn-user-accuracy,
    .qn-target-pulse,
    .qn-route-active-seg,
    .qn-route-animated.qn-route-pulse-enabled,
    .qn-route-fallback.qn-route-pulse-enabled { animation:none !important; }
}
/* ==== QR + Flashlight additions (v2.1.1) ==== */

.control-card .control-btn {
    margin-top: .5rem;
}

#flashlight-btn.flashlight-on {
    background: var(--neon-yellow);
    color: #000;
    box-shadow: 0 0 18px var(--neon-yellow);
}

.qr-overlay {
    position:fixed;
    inset:0;
    background:rgba(0,0,0,0.92);
    backdrop-filter:blur(12px);
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:10000;
    animation: fadeIn .4s ease;
}

.qr-inner {
    position:relative;
    width: min(90%, 420px);
    aspect-ratio: 3 / 4;
    background:rgba(0,20,40,0.4);
    border:1px solid var(--neon-blue);
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 0 30px rgba(0,242,255,0.35);
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
}

#qr-video {
    position:absolute;
    top:0;left:0;
    width:100%;height:100%;
    object-fit:cover;
    filter:brightness(1.05) contrast(1.05);
}

.qr-frame {
    position:absolute;
    top:50%;left:50%;
    width:70%;
    aspect-ratio:1/1;
    transform:translate(-50%,-50%);
    border:3px solid var(--neon-blue);
    border-radius:12px;
    box-shadow:0 0 15px var(--neon-blue), inset 0 0 20px rgba(0,242,255,0.3);
    animation: pulse 2s ease-in-out infinite;
    pointer-events:none;
}

.qr-result {
    position:relative;
    width:100%;
    min-height:48px;
    background:rgba(0,0,0,0.55);
    color:var(--neon-green);
    font-family:'Orbitron',sans-serif;
    font-size:.75rem;
    letter-spacing:1px;
    padding:.75rem 1rem;
    box-sizing:border-box;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.qr-actions {
    display:flex;
    justify-content:center;
    gap:1rem;
    padding: .75rem 0 1.25rem;
}

.qr-actions .quantum-btn {
    min-width:160px;
}

@media (max-width:480px) {
    .qr-inner {
        width: 92%;
        aspect-ratio: 3/4;
    }
    .qr-frame {
        width:78%;
    }
}
/* ==== Compass Enhancement (direction color & alignment pulse) ==== */
.compass-needle {
    transition: transform 0.25s cubic-bezier(.4,0,.2,1), box-shadow 0.4s;
    backface-visibility: hidden;
    will-change: transform, box-shadow;
}

.compass-needle.aligned {
    transform: translate(-50%, -100%) scale(1.25);
    box-shadow: 0 0 22px var(--neon-green), 0 0 50px rgba(0,255,0,0.55);
    animation: compassNeedlePulse 1.6s ease-in-out infinite;
}

@keyframes compassNeedlePulse {
    0%,100% { box-shadow: 0 0 18px var(--neon-green), 0 0 36px rgba(0,255,0,0.38); }
    50% { box-shadow: 0 0 22px var(--neon-green), 0 0 50px rgba(0,255,0,0.55); }
}

.perimeter-ring {
    transition: border-color 0.25s linear, box-shadow 0.35s ease;
}

.perimeter-ring.aligned {
    border-color: var(--neon-green) !important;
    box-shadow:
        0 0 25px rgba(0,255,0,0.9),
        inset 0 0 25px rgba(0,255,0,0.7),
        0 0 55px rgba(0,255,0,0.5);
    animation: perimeterAlignedPulse 1.8s ease-in-out infinite;
}

@keyframes perimeterAlignedPulse {
    0%,100% { transform: scale(1); }
    50% { transform: scale(1.015); }
}

/* Плавное свечение при промежуточных цветах */
.perimeter-ring.transition-glow {
    box-shadow:
        0 0 18px currentColor,
        inset 0 0 18px currentColor,
        0 0 42px rgba(255,255,255,0.08);
}
/* ==== Compass Guidance (v2.1.4) ==== */
.guidance-arrow {
    position:absolute;
    top:50%;left:50%;
    width:6px;height:42%;
    transform-origin: bottom center;
    transform:translate3d(-50%, -100%, 0) rotate(var(--guidance-rot, 0deg));
    background:linear-gradient(to top, rgba(255,255,255,0) 0%, currentColor 70%);
    box-shadow:0 0 6px currentColor;
    opacity:.85;
    transition:color .22s linear, box-shadow .32s ease;
    pointer-events:none;
    mix-blend-mode:normal;
    backface-visibility:hidden;
    will-change: transform, box-shadow;
}
.guidance-arrow.aligned {
    animation: guidancePulse 1.6s ease-in-out infinite;
    box-shadow:0 0 10px var(--neon-green), 0 0 18px rgba(0,255,0,.6);
}
@keyframes guidancePulse {
    0%,100% { transform:translate(-50%,-100%) scale(1) rotate(var(--guidance-rot,0deg)); }
    50%     { transform:translate(-50%,-100%) scale(1.08) rotate(var(--guidance-rot,0deg)); }
}
.direction-hint {
    margin-top:.9rem;
    font-size:.85rem;
    letter-spacing:1px;
    font-weight:600;
    text-align:center;
    color:var(--neon-blue);
    text-shadow:0 0 6px rgba(0,242,255,.7);
    min-height:1.2rem;
    transition:color .3s,text-shadow .4s;
}
.direction-hint.aligned {
    color:var(--neon-green);
    text-shadow:0 0 10px rgba(0,255,0,.9);
}
/* Reduced glow override */
.direction,
.distance-display .distance-value,
.info-value,
.stat-value,
#activate-compass,
.quantum-btn span {
    text-shadow:0 0 6px currentColor !important;
}
.perimeter-ring:not(.aligned){
    box-shadow:
       0 0 12px currentColor,
       inset 0 0 12px currentColor,
       0 0 25px rgba(255,255,255,.06) !important;
}
body.reduced-glow .direction,
body.reduced-glow .distance-display .distance-value,
body.reduced-glow .info-value {
    text-shadow:0 0 4px rgba(0,242,255,.6) !important;
}
.guidance-arrow.transitioning { box-shadow:0 0 5px currentColor; }



/* Fix: make pagination container transparent to clicks except bullets */
.quantum-swiper .swiper-pagination {
    pointer-events: none !important;
    z-index: 400; /* пониже кнопки */
}
.quantum-swiper .swiper-pagination .swiper-pagination-bullet {
    pointer-events: auto !important;
}

/* Ensure compass activation button is поверх */
#activate-compass {
    position: relative;
    z-index: 600;
}

/* На всякий случай чтобы guidance-arrow не перехватывала (и так pointer-events:none, но уточним) */
.guidance-arrow {
    pointer-events: none !important;
}
/* === v2.1.7 Compass button vanish === */
#activate-compass.compass-btn-hide {
    opacity: 0;
    transform: translateY(-10px) scale(.85);
    pointer-events: none;
    transition: opacity .45s ease, transform .45s ease;
}

/* Пагинация поверх после исчезновения */
body.compass-active .quantum-swiper .swiper-pagination {
    bottom: calc(110px + var(--safe-area-inset-bottom)) !important;
}

/* Убираем обработчик FAB полностью, если блок остался по ошибке */
.fab-container { display: none !important; }

/* Пользовательская стрелка без пульсов */
.qn-user-marker {
    position: relative;
    width:60px;
    height:60px;
    pointer-events:none;
}

.qn-user-arrow {
    position:absolute;
    top:50%;left:50%;
    width:0;height:0;
    border-left:10px solid transparent;
    border-right:10px solid transparent;
    border-bottom:26px solid #00f2ff;
    transform:translate(-50%,-50%) rotate(0deg);
    transform-origin:50% 80%;
    filter:drop-shadow(0 0 6px #00f2ff);
    transition:transform .15s linear, border-bottom-color .25s linear, filter .4s;
}

.qn-user-arrow.aligned {
    border-bottom-color:#00ff00 !important;
    filter:drop-shadow(0 0 8px #00ff00) drop-shadow(0 0 16px rgba(0,255,0,.6));
}

/* Fallback route style */
.leaflet-overlay-pane .qn-route-fallback {
    stroke-dasharray:6 10;
    filter:drop-shadow(0 0 6px #00aaff);
}

/* Pagination pointer-events fix (оставляем клики только на буллеты) */
.quantum-swiper .swiper-pagination { pointer-events:none; }
.quantum-swiper .swiper-pagination .swiper-pagination-bullet { pointer-events:auto; }

/* Guidance arrow чтобы не мешала кликам */
.guidance-arrow { pointer-events:none; }
/* Secret checkpoint panel (append to quantum-navigator-css.css or keep separate) */
.secret-checkpoint {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding: 0 1rem 2.6rem;
    z-index: 12000;
    background: radial-gradient(circle at center, rgba(0,0,0,0) 40%, rgba(0,0,0,0.55) 100%);
    pointer-events: none;
    opacity: 0;
    transition: opacity .45s ease;
}
.secret-checkpoint.active {
    opacity: 1;
    pointer-events: auto;
}
.secret-panel {
    width:100%;
    max-width:420px;
    padding:1.8rem 1.4rem 2rem;
    border-radius:22px;
    position:relative;
    overflow:hidden;
    background:linear-gradient(135deg,rgba(0,32,48,0.55),rgba(0,10,20,0.85));
    border:1px solid rgba(0,242,255,0.35);
    backdrop-filter:blur(14px);
    box-shadow:0 0 32px rgba(0,242,255,0.28),0 0 72px rgba(0,242,255,0.15);
}
.secret-panel:before {
    content:"";
    position:absolute;
    inset:-2px;
    background:conic-gradient(from 0deg,#00f2ff,#00ff9d,#00f2ff);
    filter:blur(18px);
    opacity:.25;
    z-index:-1;
    animation:secretGlow 8s linear infinite;
}
@keyframes secretGlow { to { transform: rotate(360deg); } }
.secret-title {
    font-size:1.05rem;
    font-weight:700;
    letter-spacing:2px;
    text-align:center;
    margin-bottom:.6rem;
    background:linear-gradient(90deg,#00f2ff,#00ff9d);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
    text-shadow:0 0 18px rgba(0,242,255,0.5);
}
.secret-desc {
    font-size:.78rem;
    line-height:1.35;
    text-align:center;
    color:#8fdaf3;
    letter-spacing:1px;
    margin-bottom:1.25rem;
}
#activate-checkpoint {
    width:100%;
}
.secret-checkpoint.active .quantum-btn.secondary span {
    letter-spacing:1px;
}
/* === Raise checkpoint button (Variant 1) === */
.secret-panel {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: .55rem; /* управляем вертикальными промежутками */
}

/* Переставляем визуальный порядок: кнопка над описанием */
.secret-title {
    order: 1;
}

#activate-checkpoint {
    order: 2;
    margin: 0;
}

.secret-desc {
    order: 3;
    margin: 0;
    padding-top: .15rem;
}

/* Когда чекпоинт активирован – просто скрывается кнопка, панель не "проваливается" */
.secret-checkpoint.checkpoint-activated .secret-desc {
    padding-top: .15rem;
}/* ==== RAISE SECRET CHECKPOINT BUTTON (Patch) ==== */
/* Делаем колонку и переупорядочиваем элементы */
.secret-panel {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

/* Заголовок остаётся первым */
.secret-panel .secret-title {
    order: 1;
    margin-bottom: 0; /* убираем лишний отступ */
}

/* Кнопка поднимается сразу под заголовок */
#activate-checkpoint {
    order: 2;
    margin: 0;
    /* При необходимости можно уменьшить: */
    /* transform: scale(.95); */
}

/* Описание опускаем ниже кнопки */
.secret-panel .secret-desc {
    order: 3;
    margin: 0;
    padding-top: .2rem;
    min-height: 2rem;
}

/* Когда чекпоинт активирован и кнопка скрыта — отступы не “проседают” */
.secret-checkpoint.checkpoint-activated .secret-desc {
    padding-top: .2rem;
}

/* На очень узких экранах чуть плотнее */
@media (max-width:420px){
    .secret-panel { gap: .45rem; }
    .secret-panel .secret-desc { font-size: .74rem; }
}
/* === Geo toast notification (top banner) === */
.hgqn-geo-toast {
    position: fixed;
    top: calc(50px + var(--safe-area-inset-top, 0px));
    left: 50%;
    transform: translateX(-50%) translateY(-40px);
    max-width: 90%;
    width: 360px;
    background: rgba(7, 18, 26, 0.96);
    border-radius: 12px;
    border: 1px solid rgba(0, 242, 255, 0.35);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.65);
    color: #cfeff6;
    font-family: -apple-system,BlinkMacSystemFont,system-ui,sans-serif;
    z-index: 999999999;
    padding: 10px 12px 10px 12px;
    box-sizing: border-box;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    opacity: 0;
    pointer-events: none;
    transition:
        transform 0.35s cubic-bezier(.21,.8,.35,1),
        opacity 0.35s ease;
}

.hgqn-geo-toast.show {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    pointer-events: auto;
}

.hgqn-geo-toast-icon {
    flex: 0 0 auto;
    font-size: 20px;
    color: #00f2ff;
    margin-top: 3px;
}

.hgqn-geo-toast-body {
    flex: 1 1 auto;
    font-size: 13px;
    line-height: 1.35;
}

.hgqn-geo-toast-title {
    font-size: 14px;
    font-weight: 600;
    color: #00f2ff;
    margin-bottom: 2px;
}

.hgqn-geo-toast-text {
    font-size: 12px;
    color: #cfeff6;
}

.hgqn-geo-toast-actions {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-left: 4px;
}

.hgqn-geo-toast button.hgqn-geo-close {
    background: #00343a;
    color: #bff7ff;
    border: 0;
    padding: 4px 8px;
    border-radius: 8px;
    font-size: 11px;
    cursor: pointer;
    white-space: nowrap;
}

.hgqn-geo-toast button.hgqn-geo-close:active {
    transform: scale(0.96);
}

@media (max-width: 400px){
    .hgqn-geo-toast {
        width: 94%;
        top: calc(46px + var(--safe-area-inset-top, 0px));
    }
}
.hgqn-geo-toast {
    position: fixed;
    top: calc(50px + var(--safe-area-inset-top, 0px));
    left: 50%;
    transform: translateX(-50%) translateY(-40px);
    max-width: 90%;
    width: 360px;
    background: rgba(7, 18, 26, 0.96);
    border-radius: 12px;
    border: 1px solid rgba(0, 242, 255, 0.35);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.65);
    color: #cfeff6;
    font-family: -apple-system,BlinkMacSystemFont,system-ui,sans-serif;
    z-index: 999999999;
    padding: 10px 12px 10px 12px;
    box-sizing: border-box;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    opacity: 0;
    pointer-events: none;
    transition:
        transform 0.35s cubic-bezier(.21,.8,.35,1),
        opacity 0.35s ease;
}

.hgqn-geo-toast.show {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    pointer-events: auto;
}

.hgqn-geo-toast-icon { /* иконка слева */ }
.hgqn-geo-toast-body { /* текст */ }
.hgqn-geo-toast-title { /* заголовок */ }
.hgqn-geo-toast-text { /* описание */ }
.hgqn-geo-toast-actions { /* контейнер кнопки */ }
.hgqn-geo-toast button.hgqn-geo-close { /* кнопка "Закрыть" */ }

/* === B6 Slide indicator (final) === */
.quantum-swiper .swiper-pagination {
    opacity: 0.55 !important;
    bottom: calc(1.75rem + var(--safe-area-inset-bottom)) !important;
    pointer-events: none !important;
}

/* ==== PROMPT 37: frontend conflict fixes ==== */
.map-slide,
#map-container,
#leaflet-map,
.leaflet-container,
.leaflet-pane {
    position: relative;
    z-index: 1;
}

.map-slide {
    overflow: hidden;
}

#map-container,
#leaflet-map,
.leaflet-container {
    touch-action: pan-x pan-y pinch-zoom;
}

.status-bar,
.quantum-swiper .swiper-pagination,
#activate-compass,
.fab-container,
.secret-checkpoint {
    position: relative;
    z-index: 20;
}

.leaflet-top,
.leaflet-bottom,
.leaflet-control-container,
.leaflet-control {
    z-index: 30 !important;
}

#password-overlay,
.quantum-overlay,
.qr-overlay {
    z-index: 1000 !important;
}

.quantum-notification {
    z-index: 1000001 !important;
}

#hgqnBlockModal,
#hgqnMissionOverlay {
    z-index: 2000 !important;
}

.quantum-swiper .swiper-pagination {
    pointer-events: none !important;
    z-index: 20 !important;
}

.quantum-swiper .swiper-pagination .swiper-pagination-bullet,
.swiper-pagination-bullet {
    pointer-events: auto !important;
}

.leaflet-container,
.leaflet-container * {
    cursor: grab;
}

.leaflet-container:active,
.leaflet-container:active * {
    cursor: grabbing;
}

.leaflet-control-zoom {
    border: 0 !important;
    box-shadow: none !important;
}

.leaflet-control-zoom a {
    background: linear-gradient(135deg, rgba(0,242,255,0.18), rgba(0,242,255,0.08)) !important;
    color: #00f2ff !important;
    border: 1px solid rgba(0,242,255,0.7) !important;
    box-shadow: 0 0 12px rgba(0,242,255,0.3) !important;
    backdrop-filter: blur(8px);
}

.leaflet-control-zoom a:hover,
.leaflet-control-zoom a:focus {
    background: #00f2ff !important;
    color: #03121a !important;
    outline: none !important;
}

.compass-wrapper,
.compass-container,
.compass-container::before,
.compass-container::after,
.quantum-ring,
.perimeter-ring,
.radar-sweep,
.target-indicator,
.target-pulse,
.center-core {
    border-radius: 50% !important;
}

.compass-container {
    outline: none !important;
    isolation: isolate;
}



/* === Per-checkpoint slide layouts === */
.swiper-slide.hgqn-slide-hidden {
    display: none !important;
}
#huntergate-quantum-navigator.hgqn-layout-road .control-slide,
#huntergate-quantum-navigator.hgqn-layout-compass_only .map-slide {
    display: none !important;
}
.control-card.is-disabled {
    opacity: 0.45;
    filter: grayscale(0.15);
}
.control-card.is-disabled .nav-buttons {
    pointer-events: none;
}
.control-card.is-disabled::after {
    content: "Disabled for this checkpoint";
    display: block;
    margin-top: 0.85rem;
    font-size: 0.7rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.72);
}
.speed-indicator {
    margin: 0.85rem auto 0;
    min-width: 108px;
    padding: 0.55rem 0.9rem 0.6rem;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,0.18);
    background: rgba(8, 14, 24, 0.78);
    box-shadow: 0 10px 30px rgba(0,0,0,0.28), 0 0 18px rgba(0,242,255,0.15);
    text-align: center;
    backdrop-filter: blur(10px);
}
.speed-indicator__label {
    display: block;
    font-size: 0.62rem;
    letter-spacing: 0.18em;
    opacity: 0.7;
    margin-bottom: 0.18rem;
}
.speed-indicator__value {
    display: block;
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--neon-blue);
    text-shadow: 0 0 8px currentColor;
    line-height: 1.1;
}
.transport-mode-slot {
    width: 100%;
    max-width: 500px;
    margin: 0.85rem auto 0;
}
.transport-mode-slot--controls {
    padding: 1rem 1rem 1.1rem;
    border-radius: 16px;
    border: 1px solid rgba(0,242,255,0.22);
    background: rgba(0, 20, 40, 0.36);
}
.transport-mode-slot__title {
    font-size: 0.7rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--neon-blue);
    margin-bottom: 0.45rem;
}
.transport-mode-slot__body {
    font-size: 0.82rem;
    opacity: 0.76;
}
.transport-mode-slot:empty {
    display: none;
}
.stats-grid--runtime {
    grid-template-columns: 1fr;
    max-width: 560px;
}
@media (min-width: 768px) {
    .stats-grid--runtime {
        grid-template-columns: repeat(2, 1fr);
    }
}

.tools-stack {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.55rem;
}
.control-card .control-btn {
    margin-top: 0;
}
.tools-stack .control-btn {
    padding: 0.78rem 0.8rem;
    gap: 0.34rem;
    font-size: 0.78rem;
    letter-spacing: 0.08em;
}
.tools-stack .control-btn .material-icons {
    font-size: 1.15rem;
}
.transport-mode-slot--tools {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
}
.transport-mode-slot--tools .transport-mode-slot__title,
.transport-mode-slot--tools .transport-mode-slot__body {
    display: none;
}
.transport-mode-slot--compass {
    max-width: 320px;
}
.transport-mode-slot--compass.transport-mode-slot--active {
    margin: 0.7rem auto 0.55rem;
}
.transport-mode-slot--compass.transport-mode-slot--active:empty {
    display: block;
}
.transport-mode-slot--controls.transport-mode-slot--occupied,
.transport-mode-slot--tools.transport-mode-slot--occupied,
.transport-mode-slot--compass.transport-mode-slot--occupied {
    display: block;
}
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide .compass-wrapper {
    max-width: 430px;
}
#huntergate-quantum-navigator[data-hgqn-layout="road"] #direction-hint {
    margin-bottom: 0.35rem;
}
#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass {
    order: 3;
}
#huntergate-quantum-navigator[data-hgqn-layout="road"] .speed-indicator {
    order: 4;
    margin-top: 0.4rem;
}
@media (max-width: 767px) {
    .tools-stack .control-btn {
        padding: 0.72rem 0.75rem;
        font-size: 0.74rem;
    }
    .tools-stack .control-btn .material-icons {
        font-size: 1.05rem;
    }
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass {
        max-width: 280px;
    }
}


/* compact-height safeguards */
@media (max-width: 767px), (max-height: 760px) {
  #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper {
    padding-bottom: calc(16px + env(safe-area-inset-bottom));
    gap: 0.35rem;
  }
  #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-info {
    margin-top: 0.5rem;
  }
  #huntergate-quantum-navigator[data-hgqn-layout="road"] #direction-hint,
  #huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud,
  #huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass,
  #huntergate-quantum-navigator[data-hgqn-layout="road"] .speed-indicator,
  #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
    width: min(100%, 290px);
    max-width: 290px;
    margin-left: auto;
    margin-right: auto;
  }
  #huntergate-quantum-navigator[data-hgqn-layout="road"][data-hgqn-compass-state="active"] .hgqn-transport-hud {
    margin-top: 0.45rem;
    padding: 8px 12px;
  }
  #huntergate-quantum-navigator[data-hgqn-layout="road"][data-hgqn-compass-state="active"] #direction-hint {
    margin: 0.15rem auto 0;
    font-size: 0.88rem;
    line-height: 1.2;
  }
  #huntergate-quantum-navigator[data-hgqn-layout="road"][data-hgqn-compass-state="active"] .speed-indicator {
    margin-top: 0.25rem;
    padding: 0.45rem 0.75rem 0.5rem;
  }
  #huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass .hgqn-floating-btn.hgqn-floating-btn--docked,
  #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
    min-height: 44px;
    padding: 0.72rem 0.9rem;
    font-size: 0.74rem;
  }
}
@media (max-height: 680px) {
  #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-info {
    transform: scale(0.94);
    transform-origin: top center;
  }
  #huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass,
  #huntergate-quantum-navigator[data-hgqn-layout="road"] .speed-indicator,
  #huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud,
  #huntergate-quantum-navigator[data-hgqn-layout="road"] #direction-hint {
    max-width: 270px;
  }
}

/* ==== 4.8.4 runtime HUD / route / marker refinements ==== */
#battery-level[data-battery-state="unsupported"] {
    opacity: 0.64;
}
#battery-level[data-battery-state="low"] {
    color: #ffb86b;
    text-shadow: 0 0 8px rgba(255,184,107,.45);
}
#battery-level[data-battery-state="charging"] {
    color: var(--neon-green);
    text-shadow: 0 0 8px rgba(0,255,136,.42);
}

.speedometer-gauge {
    width: min(100%, 196px);
    min-width: 172px;
    padding: 0.45rem 0.35rem 0.2rem;
    border-radius: 26px;
    background:
        radial-gradient(circle at 50% 38%, rgba(122,247,255,0.12) 0%, rgba(122,247,255,0.02) 26%, transparent 28%),
        linear-gradient(180deg, rgba(6,18,31,0.96) 0%, rgba(5,12,24,0.92) 100%);
    border: 1px solid rgba(122,247,255,0.16);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.05),
        0 14px 42px rgba(0,0,0,0.34),
        0 0 24px rgba(0,242,255,0.12);
    backdrop-filter: blur(14px);
}
.speedometer-gauge__shell {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
}
.speedometer-gauge__svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    transform: rotate(135deg);
    overflow: visible;
}
.speedometer-gauge__track,
.speedometer-gauge__limit-ring,
.speedometer-gauge__progress {
    fill: none;
    stroke-linecap: round;
    transition: stroke-dashoffset 180ms ease, stroke 180ms ease, opacity 180ms ease;
}
.speedometer-gauge__track {
    stroke: rgba(255,255,255,0.08);
    stroke-width: 9;
}
.speedometer-gauge__limit-ring {
    stroke: rgba(255,255,255,0.22);
    stroke-width: 3.5;
    opacity: 0.75;
}
.speedometer-gauge__progress {
    stroke: url(#hgqnSpeedGaugeGradient);
    stroke-width: 9;
    filter: drop-shadow(0 0 10px rgba(0,242,255,0.42));
}
.speedometer-gauge__content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.14rem;
    text-align: center;
    padding: 1.25rem 1rem 1rem;
}
.speedometer-gauge .speed-indicator__label {
    margin-bottom: 0;
    font-size: 0.58rem;
    letter-spacing: 0.22em;
    opacity: 0.72;
}
.speedometer-gauge .speed-indicator__value {
    font-size: clamp(1.18rem, 4.3vw, 1.56rem);
    font-weight: 900;
    line-height: 1.02;
    letter-spacing: 0.01em;
}
.speedometer-gauge__meta,
.speedometer-gauge__limit {
    display: block;
    line-height: 1.15;
}
.speedometer-gauge__meta {
    font-size: 0.64rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    opacity: 0.84;
}
.speedometer-gauge__limit {
    font-size: 0.62rem;
    color: rgba(255,255,255,0.72);
}
.speedometer-gauge[data-speed-state="warning"] .speedometer-gauge__progress {
    stroke: #ffd166;
    filter: drop-shadow(0 0 10px rgba(255,209,102,0.4));
}
.speedometer-gauge[data-speed-state="danger"] .speedometer-gauge__progress {
    stroke: #ff7a7a;
    filter: drop-shadow(0 0 12px rgba(255,122,122,0.45));
}
.speedometer-gauge[data-speed-state="danger"] .speed-indicator__value {
    color: #ff9a9a;
}
.speedometer-gauge[data-speed-state="warning"] .speed-indicator__value {
    color: #ffe49a;
}

.control-slide {
    justify-content: flex-start;
}
.control-slide .control-grid {
    margin-bottom: 0.8rem;
}
.control-slide .stats-grid--runtime {
    max-width: 430px;
    margin: 0.1rem auto 0.75rem;
    transform: translateY(-8px);
    gap: 0.68rem;
}
.control-slide .stats-grid--runtime .stat-card {
    align-items: center;
    gap: 0.72rem;
    padding: 0.82rem 0.9rem;
    border-radius: 14px;
}
.control-slide .stats-grid--runtime .stat-icon {
    font-size: 1.32rem;
    opacity: 0.78;
}
.control-slide .stats-grid--runtime .stat-label {
    font-size: 0.54rem;
    letter-spacing: 0.14em;
}
.control-slide .stats-grid--runtime .stat-value {
    font-size: 1rem;
    line-height: 1.08;
}
@media (max-width: 767px) {
    .control-slide .stats-grid--runtime {
        max-width: 350px;
        transform: translateY(-12px);
        margin-bottom: 0.4rem;
    }
    .control-slide .stats-grid--runtime .stat-card {
        padding: 0.72rem 0.8rem;
    }
    .control-slide .stats-grid--runtime .stat-value {
        font-size: 0.94rem;
    }
}
@media (max-height: 760px) {
    .control-slide .control-grid {
        margin-bottom: 0.45rem;
    }
    .control-slide .stats-grid--runtime {
        transform: translateY(-16px);
        margin-bottom: 0.25rem;
    }
}

.qn-user-marker {
    position: relative;
    width: 66px;
    height: 66px;
    pointer-events: none;
    color: var(--qn-user-color, #00f2ff);
}
.qn-user-accuracy {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 52px;
    height: 52px;
    transform: translate(-50%, -50%);
    border-radius: 999px;
    border: 1px solid currentColor;
    background: radial-gradient(circle, rgba(0,242,255,0.2) 0%, rgba(0,242,255,0.06) 58%, transparent 72%);
    box-shadow: 0 0 18px rgba(0,242,255,0.12);
    opacity: 0.34;
    transition: width 220ms ease, height 220ms ease, opacity 220ms ease;
}
.qn-user-arrow {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-bottom: 30px solid currentColor;
    transform: translate(-50%, -50%) rotate(0deg);
    transform-origin: 50% 80%;
    filter: drop-shadow(0 0 8px currentColor) drop-shadow(0 0 20px rgba(0,242,255,0.18));
    transition: transform 0.15s linear, filter 0.2s ease, border-bottom-color 0.18s linear;
}
.qn-user-arrow::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 70%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255,255,255,0.9);
    box-shadow: 0 0 12px rgba(255,255,255,0.45);
    transform: translate(-50%, -50%);
}
.qn-user-arrow.aligned {
    border-bottom-color: #00ff88 !important;
    filter: drop-shadow(0 0 10px #00ff88) drop-shadow(0 0 18px rgba(0,255,136,0.45));
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .speedometer-gauge {
    width: min(100%, 186px);
    margin-top: 0.45rem;
}
@media (max-width: 767px), (max-height: 760px) {
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .speedometer-gauge,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] #direction-hint,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
        width: min(100%, 280px);
        max-width: 280px;
    }
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .speedometer-gauge {
        transform: scale(0.96);
        transform-origin: top center;
    }
}
@media (max-height: 680px) {
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .speedometer-gauge {
        transform: scale(0.9);
    }
}

/* ==== v20 speed pipeline HUD layout overrides ==== */
.compass-info {
    display: block;
    width: 100%;
    margin-top: 1rem;
}

.compass-info.compass-info--hud {
    display: block;
    width: 100%;
    margin-top: 0.95rem;
}

.compass-info.compass-info--hud > .hgqn-transport-hud {
    margin-left: auto;
    margin-right: auto;
}

.signal-bars {
    display: inline-flex;
    gap: 3px;
    align-items: flex-end;
    min-height: 20px;
}

.signal-bars span {
    width: 4px;
    border-radius: 999px;
    background: rgba(109, 247, 255, 0.18);
    transition: background-color 0.24s ease, box-shadow 0.24s ease, opacity 0.24s ease, transform 0.24s ease;
}

.signal-bars span:nth-child(1) { height: 7px; }
.signal-bars span:nth-child(2) { height: 10px; }
.signal-bars span:nth-child(3) { height: 13px; }
.signal-bars span:nth-child(4) { height: 16px; }
.signal-bars span:nth-child(5) { height: 19px; }

.signal-bars span.active {
    background: #6dffb5;
    box-shadow: 0 0 10px rgba(109,255,181,0.88);
    transform: translateY(-1px);
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-info {
    margin-top: 0.78rem;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud,
#huntergate-quantum-navigator[data-hgqn-layout="road"] #direction-hint,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
    width: min(100%, 380px);
    max-width: 380px;
    margin-left: auto;
    margin-right: auto;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud {
    margin-top: 0.65rem;
    margin-bottom: 0.15rem;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass {
    max-width: 380px;
}

@media (max-width: 767px), (max-height: 760px) {
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-info {
        margin-top: 0.5rem;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] #direction-hint,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
        width: min(100%, 336px);
        max-width: 336px;
    }
}

@media (max-height: 680px) {
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-info {
        transform: none;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] #direction-hint,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass {
        max-width: 318px;
    }
}


/* ==== v22 HUD cleanup compatibility ==== */
#huntergate-quantum-navigator[data-hgqn-layout="road"] .speed-indicator.hgqn-speed-indicator--legacy {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide {
  min-height: calc(100dvh - 40px);
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide .compass-wrapper {
  padding-bottom: max(8px, calc(var(--safe-area-inset-bottom) + 8px));
}



#huntergate-quantum-navigator[data-hgqn-swipe-state="moving"] .guidance-arrow,
#huntergate-quantum-navigator[data-hgqn-swipe-state="moving"] .perimeter-ring,
#huntergate-quantum-navigator[data-hgqn-swipe-state="moving"] .compass-needle {
    animation-play-state: paused !important;
}

#huntergate-quantum-navigator[data-hgqn-swipe-state="moving"] .guidance-arrow {
    box-shadow: 0 0 4px currentColor !important;
}

#huntergate-quantum-navigator[data-hgqn-swipe-state="moving"] .perimeter-ring {
    box-shadow: 0 0 12px rgba(0,242,255,0.18), inset 0 0 8px rgba(0,242,255,0.08) !important;
}

#huntergate-quantum-navigator[data-hgqn-swipe-state="moving"] .quantum-swiper .swiper-pagination .swiper-pagination-bullet {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.02), 0 4px 12px rgba(0,0,0,0.18), 0 0 8px rgba(0,242,255,0.06) !important;
}

#huntergate-quantum-navigator .quantum-swiper,
#huntergate-quantum-navigator .quantum-swiper .swiper-slide,
#huntergate-quantum-navigator .guidance-arrow,
#huntergate-quantum-navigator .compass-scale {
    backface-visibility: hidden;
    transform: translateZ(0);
}

/* === Pagination visibility restoration === */
#huntergate-quantum-navigator .quantum-swiper {
    overflow: hidden;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination {
    position: absolute !important;
    top: 50% !important;
    left: var(--hgqn-slide-nav-left-offset) !important;
    right: auto !important;
    bottom: auto !important;
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 10px;
    width: auto;
    max-height: calc(100% - var(--hgqn-slide-nav-top-offset) - var(--hgqn-slide-nav-bottom-offset));
    padding: 8px 6px 8px 2px;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
    z-index: 115 !important;
    transform: translate3d(0, -50%, 0) !important;
}

body.compass-active #huntergate-quantum-navigator .quantum-swiper .swiper-pagination {
    top: 50% !important;
    bottom: auto !important;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination.hgqn-slide-nav--two {
    gap: 12px;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet {
    position: relative;
    display: inline-flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    min-width: 48px;
    width: 48px;
    height: 44px;
    margin: 0 !important;
    padding: 0 12px;
    border: 1px solid rgba(110, 241, 255, 0.3);
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(5, 18, 31, 0.9), rgba(4, 11, 20, 0.76)) !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.03), 0 8px 22px rgba(0, 0, 0, 0.24), 0 0 18px rgba(0, 242, 255, 0.1);
    opacity: 0.76 !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    pointer-events: auto !important;
    overflow: hidden;
    touch-action: manipulation;
    -webkit-user-select: none;
    user-select: none;
    transition: width 0.24s ease, opacity 0.24s ease, transform 0.24s ease, box-shadow 0.24s ease, background-color 0.24s ease, border-color 0.24s ease;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet::before {
    content: '';
    position: absolute;
    inset: 1px;
    border-radius: 17px;
    background: linear-gradient(135deg, rgba(122, 247, 255, 0.07), rgba(138, 93, 255, 0.04));
    opacity: 0.9;
    pointer-events: none;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet::after {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 2px;
    height: 22px;
    border-radius: 999px;
    background: rgba(154, 249, 255, 0.22);
    box-shadow: 0 0 12px rgba(0, 242, 255, 0.16);
    transform: translateY(-50%);
    transition: height 0.24s ease, background-color 0.24s ease, box-shadow 0.24s ease;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .hgqn-pagination-core {
    display: none !important;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .hgqn-pagination-icon,
#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .material-icons {
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    font-size: 18px;
    line-height: 1;
    color: rgba(200, 250, 255, 0.9) !important;
    text-shadow: 0 0 10px rgba(122, 247, 255, 0.26);
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .hgqn-pagination-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    min-width: 0;
    max-width: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateX(-4px);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(205, 239, 245, 0.84);
    white-space: nowrap;
    transition: max-width 0.24s ease, opacity 0.2s ease, transform 0.2s ease;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active {
    width: 94px;
    opacity: 1 !important;
    border-color: rgba(149, 248, 255, 0.82);
    background: linear-gradient(135deg, rgba(9, 28, 44, 0.96), rgba(12, 20, 36, 0.9)) !important;
    box-shadow: inset 0 0 0 1px rgba(220, 252, 255, 0.08), 0 12px 28px rgba(0, 0, 0, 0.3), 0 0 22px rgba(0, 242, 255, 0.22), 0 0 30px rgba(111, 79, 255, 0.1);
    transform: translateX(3px) scale(1.01);
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active::after {
    height: 28px;
    background: linear-gradient(180deg, rgba(130, 249, 255, 0.98), rgba(130, 93, 255, 0.88));
    box-shadow: 0 0 14px rgba(0, 242, 255, 0.34), 0 0 22px rgba(111, 79, 255, 0.16);
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active .hgqn-pagination-icon,
#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active .material-icons {
    color: rgba(241, 255, 255, 0.98) !important;
    text-shadow: 0 0 12px rgba(176, 246, 255, 0.55), 0 0 18px rgba(111, 79, 255, 0.18);
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active .hgqn-pagination-label {
    max-width: 48px;
    opacity: 1;
    transform: translateX(0);
    color: rgba(247, 253, 255, 0.96);
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet:focus-visible {
    outline: 2px solid rgba(170, 248, 255, 0.95);
    outline-offset: 4px;
}

@media (orientation: landscape) and (max-width: 950px), (orientation: landscape) and (max-height: 600px) {
    #huntergate-quantum-navigator {
        --hgqn-slide-nav-left-offset: calc(8px + env(safe-area-inset-left, 0px));
    }

    #huntergate-quantum-navigator .swiper-slide {
        padding-left: calc(16px + var(--hgqn-slide-nav-footprint));
        padding-right: max(12px, calc(env(safe-area-inset-right, 0px) + 12px));
    }

    #huntergate-quantum-navigator .map-slide {
        padding-left: calc(10px + var(--hgqn-slide-nav-footprint));
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination {
        gap: 8px;
        padding: 6px 4px 6px 0;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet {
        width: 46px;
        min-width: 46px;
        height: 42px;
        padding: 0 11px;
        border-radius: 16px;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet::before {
        border-radius: 15px;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active {
        width: 86px;
        transform: translateX(2px) scale(1.01);
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active .hgqn-pagination-label {
        max-width: 40px;
    }
}

@media (orientation: landscape) and (max-width: 760px), (orientation: landscape) and (max-height: 440px) {
    #huntergate-quantum-navigator {
        --hgqn-slide-nav-left-offset: calc(6px + env(safe-area-inset-left, 0px));
    }

    #huntergate-quantum-navigator .swiper-slide {
        padding-left: calc(12px + var(--hgqn-slide-nav-footprint));
    }

    #huntergate-quantum-navigator .map-slide {
        padding-left: calc(8px + var(--hgqn-slide-nav-footprint));
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination {
        gap: 7px;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet {
        width: 42px;
        min-width: 42px;
        height: 40px;
        padding: 0 10px;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .hgqn-pagination-icon,
    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .material-icons {
        width: 18px;
        height: 18px;
        font-size: 17px;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active {
        width: 74px;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active .hgqn-pagination-label {
        max-width: 28px;
        font-size: 8px;
        letter-spacing: 0.14em;
    }
}


/* ==== v31d bottom slide nav + mobile landscape HUD reflow ==== */
#huntergate-quantum-navigator {
    --hgqn-slide-nav-footprint: 0px;
    --hgqn-slide-nav-bottom-space: 84px;
}

#huntergate-quantum-navigator .swiper-slide {
    padding-bottom: calc(var(--hgqn-slide-nav-bottom-space) + var(--safe-area-inset-bottom) + 8px);
}

#huntergate-quantum-navigator .map-slide {
    padding-bottom: calc(var(--hgqn-slide-nav-bottom-space) + var(--safe-area-inset-bottom) + 6px);
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination,
#huntergate-quantum-navigator .quantum-swiper .swiper-pagination.hgqn-slide-nav,
#huntergate-quantum-navigator .quantum-swiper .swiper-pagination.hgqn-slide-nav--bottom {
    position: absolute !important;
    top: auto !important;
    left: 50% !important;
    right: auto !important;
    bottom: calc(8px + env(safe-area-inset-bottom, 0px)) !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    justify-content: center;
    gap: clamp(8px, 2.2vw, 12px);
    width: min(calc(100% - 16px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)), 360px);
    max-width: calc(100% - 16px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px));
    min-height: 58px;
    max-height: none;
    margin: 0;
    padding: 8px 10px;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
    z-index: 115 !important;
    transform: translate3d(-50%, 0, 0) !important;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet {
    position: relative;
    flex: 1 1 0;
    display: inline-flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 58px;
    max-width: 92px;
    width: auto;
    height: 50px;
    margin: 0 !important;
    padding: 7px 8px 8px;
    border-radius: 16px;
    border: 1px solid rgba(110, 241, 255, 0.26);
    background: linear-gradient(180deg, rgba(6, 18, 31, 0.9), rgba(4, 11, 20, 0.76)) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.025), 0 8px 22px rgba(0,0,0,0.2), 0 0 18px rgba(0,242,255,0.08);
    opacity: 0.78 !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    pointer-events: auto !important;
    overflow: hidden;
    touch-action: manipulation;
    transition: opacity 0.22s ease, transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease, background-color 0.22s ease;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet::before {
    content: '';
    position: absolute;
    inset: 1px;
    border-radius: 15px;
    background: linear-gradient(135deg, rgba(122, 247, 255, 0.06), rgba(138, 93, 255, 0.035));
    opacity: 1;
    pointer-events: none;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 7px;
    width: 22px;
    height: 2px;
    border-radius: 999px;
    background: rgba(154, 249, 255, 0.24);
    box-shadow: 0 0 10px rgba(0,242,255,0.12);
    transform: translateX(-50%);
    transition: width 0.22s ease, background-color 0.22s ease, box-shadow 0.22s ease;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .hgqn-pagination-icon,
#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .material-icons {
    position: relative;
    z-index: 1;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    font-size: 18px;
    line-height: 1;
    color: rgba(214, 250, 255, 0.9) !important;
    text-shadow: 0 0 10px rgba(122, 247, 255, 0.22);
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .hgqn-pagination-label {
    position: relative;
    z-index: 1;
    display: block;
    min-width: 0;
    max-width: none;
    overflow: hidden;
    opacity: 0.92;
    transform: none;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.14em;
    line-height: 1.05;
    text-transform: uppercase;
    color: rgba(205, 239, 245, 0.86);
    white-space: nowrap;
    text-align: center;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active {
    opacity: 1 !important;
    border-color: rgba(149, 248, 255, 0.84);
    background: linear-gradient(135deg, rgba(8, 29, 45, 0.96), rgba(10, 18, 34, 0.9)) !important;
    box-shadow: inset 0 0 0 1px rgba(220,252,255,0.06), 0 12px 26px rgba(0,0,0,0.28), 0 0 20px rgba(0,242,255,0.2), 0 0 26px rgba(111,79,255,0.08);
    transform: translateY(-2px);
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active::after {
    width: 30px;
    background: linear-gradient(90deg, rgba(130,249,255,0.98), rgba(130,93,255,0.88));
    box-shadow: 0 0 14px rgba(0,242,255,0.28), 0 0 18px rgba(111,79,255,0.12);
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active .hgqn-pagination-icon,
#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active .material-icons {
    color: rgba(245,255,255,0.98) !important;
    text-shadow: 0 0 12px rgba(176,246,255,0.42), 0 0 16px rgba(111,79,255,0.14);
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active .hgqn-pagination-label {
    color: rgba(247,253,255,0.98);
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet:focus-visible {
    outline: 2px solid rgba(170,248,255,0.95);
    outline-offset: 3px;
}

#huntergate-quantum-navigator .swiper-slide {
    padding-left: max(12px, calc(env(safe-area-inset-left, 0px) + 12px)) !important;
    padding-right: max(12px, calc(env(safe-area-inset-right, 0px) + 12px)) !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide {
    justify-content: flex-start;
    min-height: calc(100dvh - 40px);
    padding-top: max(4px, calc(var(--safe-area-inset-top) * 0.25 + 4px));
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide .compass-wrapper {
    width: min(100%, 360px);
    max-width: 360px;
    padding-top: 0;
    padding-bottom: 0;
    gap: 0;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .compass-container {
    order: 1;
    margin-top: 0;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #direction-hint {
    order: 2;
    margin: 0.34rem auto 0;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .compass-info--hud {
    order: 3;
    margin-top: 0.36rem;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .transport-mode-slot--compass {
    order: 4;
    margin-top: 0.38rem;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
    order: 5;
    margin-top: 0.38rem;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .secret-checkpoint {
    order: 6;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-info,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-info.compass-info--hud {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud,
#huntergate-quantum-navigator[data-hgqn-layout="road"] #direction-hint,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
    width: min(100%, 332px);
    max-width: 332px;
    margin-left: auto;
    margin-right: auto;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud {
    margin-top: 0;
    margin-bottom: 0;
}

@media (orientation: landscape) and (max-width: 980px), (orientation: landscape) and (max-height: 620px) {
    #huntergate-quantum-navigator {
        --compass-size: clamp(194px, 44vh, 238px);
        --hgqn-slide-nav-bottom-space: 78px;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide {
        padding-top: max(2px, calc(env(safe-area-inset-top, 0px) + 2px));
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide .compass-wrapper {
        width: min(100%, 320px);
        max-width: 320px;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-info--hud,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] #direction-hint,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
        width: min(100%, 300px);
        max-width: 300px;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination,
    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination.hgqn-slide-nav--bottom {
        width: min(calc(100% - 12px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)), 312px);
        gap: 8px;
        padding: 7px 8px;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet {
        min-width: 54px;
        height: 48px;
        border-radius: 15px;
        padding: 7px 6px;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet::before {
        border-radius: 14px;
    }
}

@media (orientation: landscape) and (max-width: 760px), (orientation: landscape) and (max-height: 460px) {
    #huntergate-quantum-navigator {
        --compass-size: clamp(176px, 41vh, 212px);
        --hgqn-slide-nav-bottom-space: 72px;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide .compass-wrapper {
        width: min(100%, 286px);
        max-width: 286px;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-info--hud,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] #direction-hint,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
        width: min(100%, 274px);
        max-width: 274px;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination,
    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination.hgqn-slide-nav--bottom {
        width: min(calc(100% - 10px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)), 286px);
        gap: 7px;
        padding: 6px 7px;
        bottom: calc(6px + env(safe-area-inset-bottom, 0px)) !important;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet {
        min-width: 50px;
        height: 44px;
        padding: 6px 5px;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .hgqn-pagination-icon,
    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .material-icons {
        width: 16px;
        height: 16px;
        font-size: 16px;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .hgqn-pagination-label {
        font-size: 7px;
        letter-spacing: 0.12em;
    }
}


/* ==== v31e landscape HUD stack lift / bottom nav hardening ==== */
#huntergate-quantum-navigator {
    --hgqn-slide-nav-footprint: 0px;
    --hgqn-slide-nav-bottom-space: 72px;
}

#huntergate-quantum-navigator .status-bar {
    padding-left: max(12px, calc(env(safe-area-inset-left, 0px) + 12px));
    padding-right: max(12px, calc(env(safe-area-inset-right, 0px) + 12px));
}

#huntergate-quantum-navigator .quantum-swiper {
    margin-top: 0 !important;
    top: calc(40px + var(--safe-area-inset-top)) !important;
    height: calc(100% - 40px - var(--safe-area-inset-top)) !important;
}

#huntergate-quantum-navigator .compass-wrapper {
    margin-top: 0 !important;
}

#huntergate-quantum-navigator .swiper-slide {
    padding-bottom: calc(var(--hgqn-slide-nav-bottom-space) + var(--safe-area-inset-bottom) + 8px) !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide {
    justify-content: flex-start !important;
    min-height: calc(100dvh - 40px - var(--safe-area-inset-top)) !important;
    padding-top: max(2px, calc(var(--safe-area-inset-top) * 0.12 + 2px)) !important;
    padding-bottom: calc(var(--hgqn-slide-nav-bottom-space) + var(--safe-area-inset-bottom) + 10px) !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide .compass-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: min(100%, 304px);
    max-width: 304px;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 auto;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    gap: clamp(4px, 1.05vh, 8px);
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide .compass-container,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .compass-container {
    order: 1;
    margin-top: 0 !important;
    transform: none !important;
    flex: 0 0 auto;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #direction-hint {
    order: 2;
    width: min(100%, 288px) !important;
    max-width: 288px !important;
    min-height: 1rem;
    margin: 0.12rem auto 0 !important;
    font-size: 0.74rem;
    line-height: 1.16;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .compass-info--hud {
    order: 3;
    width: 100%;
    margin-top: 0.14rem !important;
    margin-left: auto;
    margin-right: auto;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud.hgqn-transport-hud--panel,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-info.compass-info--hud > .hgqn-transport-hud {
    width: min(100%, 288px) !important;
    max-width: 288px !important;
    min-height: 72px;
    margin: 0 auto !important;
    padding: 10px 11px 9px;
    gap: 8px;
    border-radius: 18px;
    grid-template-columns: minmax(94px, 0.92fr) minmax(0, 1.24fr);
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud__eyebrow,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud__speed-meta-text,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud__limit,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud__status {
    font-size: 8px;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud__speedvalue {
    font-size: clamp(1.62rem, 5.8vw, 2.12rem);
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud__speedunit {
    font-size: 9px;
    margin-bottom: 4px;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud__tach-track {
    height: 20px;
    padding: 3px 5px;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud__tach-segments {
    gap: 2px;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud__tach-segment {
    min-width: 4px;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .transport-mode-slot--compass {
    order: 4;
    width: min(100%, 288px) !important;
    max-width: 288px !important;
    margin: 0.08rem auto 0 !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass.transport-mode-slot--active,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass.transport-mode-slot--occupied {
    margin: 0.08rem auto 0 !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass .hgqn-floating-btn.hgqn-floating-btn--docked,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
    width: min(100%, 288px) !important;
    max-width: 288px !important;
    min-height: 42px;
    margin: 0.08rem auto 0 !important;
    padding: 0.58rem 0.72rem;
    font-size: 0.72rem;
    border-radius: 16px;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .speed-indicator.hgqn-speed-indicator--legacy {
    display: none !important;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination,
#huntergate-quantum-navigator .quantum-swiper .swiper-pagination.hgqn-slide-nav,
#huntergate-quantum-navigator .quantum-swiper .swiper-pagination.hgqn-slide-nav--bottom {
    position: absolute !important;
    top: auto !important;
    left: 50% !important;
    right: auto !important;
    bottom: calc(6px + env(safe-area-inset-bottom, 0px)) !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: min(calc(100% - 20px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)), 280px);
    max-width: calc(100% - 20px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px));
    min-height: 52px;
    max-height: none;
    margin: 0;
    padding: 6px 8px;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
    z-index: 115 !important;
    transform: translate3d(-50%, 0, 0) !important;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet {
    position: relative;
    flex: 1 1 0;
    min-width: 56px;
    max-width: 84px;
    width: auto;
    height: 46px;
    padding: 6px 6px 7px;
    border-radius: 15px;
    gap: 3px;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet::before {
    border-radius: 14px;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .hgqn-pagination-icon,
#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .material-icons {
    width: 17px;
    height: 17px;
    font-size: 17px;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .hgqn-pagination-label {
    font-size: 7px;
    letter-spacing: 0.12em;
}

#huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet-active {
    transform: translateY(-1px);
}

@media (orientation: landscape) and (max-width: 980px), (orientation: landscape) and (max-height: 620px) {
    #huntergate-quantum-navigator {
        --compass-size: clamp(148px, 33vh, 184px);
        --hgqn-slide-nav-bottom-space: 66px;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide .compass-wrapper {
        width: min(100%, 286px);
        max-width: 286px;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #direction-hint,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud.hgqn-transport-hud--panel,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-info.compass-info--hud > .hgqn-transport-hud,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .transport-mode-slot--compass,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass .hgqn-floating-btn.hgqn-floating-btn--docked,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
        width: min(100%, 272px) !important;
        max-width: 272px !important;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination,
    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination.hgqn-slide-nav--bottom {
        width: min(calc(100% - 16px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)), 264px);
    }
}

@media (orientation: landscape) and (max-width: 760px), (orientation: landscape) and (max-height: 460px) {
    #huntergate-quantum-navigator {
        --compass-size: clamp(132px, 29vh, 160px);
        --hgqn-slide-nav-bottom-space: 60px;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide {
        padding-top: 2px !important;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide .compass-wrapper {
        width: min(100%, 264px);
        max-width: 264px;
        gap: 4px;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #direction-hint,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud.hgqn-transport-hud--panel,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-info.compass-info--hud > .hgqn-transport-hud,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .transport-mode-slot--compass,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass .hgqn-floating-btn.hgqn-floating-btn--docked,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
        width: min(100%, 250px) !important;
        max-width: 250px !important;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #direction-hint {
        font-size: 0.7rem;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud.hgqn-transport-hud--panel,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-info.compass-info--hud > .hgqn-transport-hud {
        min-height: 66px;
        padding: 8px 9px 8px;
        gap: 7px;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-transport-hud__speedvalue {
        font-size: clamp(1.4rem, 5.2vw, 1.88rem);
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass .hgqn-floating-btn.hgqn-floating-btn--docked,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
        min-height: 40px;
        padding: 0.52rem 0.66rem;
        font-size: 0.68rem;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination,
    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination.hgqn-slide-nav--bottom {
        width: min(calc(100% - 14px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)), 242px);
        min-height: 48px;
        gap: 6px;
        padding: 5px 7px;
        bottom: calc(5px + env(safe-area-inset-bottom, 0px)) !important;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet {
        min-width: 50px;
        height: 42px;
        padding: 5px 5px 6px;
        border-radius: 14px;
    }

    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .hgqn-pagination-icon,
    #huntergate-quantum-navigator .quantum-swiper .swiper-pagination .swiper-pagination-bullet .material-icons {
        width: 16px;
        height: 16px;
        font-size: 16px;
    }
}


/* ==== v31f bottom docked slide nav alignment / centered HUD composition ==== */
#huntergate-quantum-navigator {
    --hgqn-slide-nav-bottom-space: 64px;
    --hgqn-nav-browser-clearance: 0px;
    --hgqn-nav-safe-clearance: calc(env(safe-area-inset-bottom, 0px) + 10px);
    --hgqn-slide-nav-bottom-offset: max(var(--hgqn-nav-safe-clearance), calc(var(--hgqn-nav-browser-clearance) + 10px));
}

#huntergate-quantum-navigator .swiper-slide {
    padding-bottom: calc(var(--hgqn-slide-nav-bottom-space) + var(--safe-area-inset-bottom) + 6px) !important;
}

#huntergate-quantum-navigator .map-slide {
    padding-bottom: calc(var(--hgqn-slide-nav-bottom-space) + var(--safe-area-inset-bottom) + 4px) !important;
}

#huntergate-quantum-navigator .quantum-swiper .hgqn-bottom-nav-dock {
    position: absolute;
    left: max(8px, calc(env(safe-area-inset-left, 0px) + 8px));
    right: max(8px, calc(env(safe-area-inset-right, 0px) + 8px));
    bottom: var(--hgqn-slide-nav-bottom-offset);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    min-height: 56px;
    margin: 0;
    padding: 0;
    pointer-events: none;
    z-index: 115;
}

#huntergate-quantum-navigator .quantum-swiper .hgqn-bottom-nav-dock .swiper-pagination,
#huntergate-quantum-navigator .quantum-swiper .hgqn-bottom-nav-dock .swiper-pagination.hgqn-slide-nav,
#huntergate-quantum-navigator .quantum-swiper .hgqn-bottom-nav-dock .swiper-pagination.hgqn-slide-nav--bottom {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    width: min(100%, 272px);
    max-width: 272px;
    min-height: 50px;
    margin: 0 auto !important;
    padding: 5px 7px;
    transform: none !important;
    pointer-events: none !important;
}

#huntergate-quantum-navigator .quantum-swiper .hgqn-bottom-nav-dock .swiper-pagination .swiper-pagination-bullet {
    pointer-events: auto !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide .compass-wrapper {
    width: min(100%, 296px);
    max-width: 296px;
    gap: clamp(4px, 0.9vh, 7px);
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #direction-hint {
    margin: 0.1rem auto 0 !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .compass-info--hud {
    margin-top: 0.1rem !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .transport-mode-slot--compass,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass.transport-mode-slot--active,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass.transport-mode-slot--occupied {
    margin: 0.04rem auto 0 !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass .hgqn-floating-btn.hgqn-floating-btn--docked,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
    margin: 0.04rem auto 0 !important;
}

@media (orientation: landscape) and (max-width: 980px), (orientation: landscape) and (max-height: 620px) {
    #huntergate-quantum-navigator {
        --hgqn-slide-nav-bottom-space: 60px;
        --hgqn-nav-safe-clearance: calc(env(safe-area-inset-bottom, 0px) + 12px);
        --hgqn-slide-nav-bottom-offset: max(var(--hgqn-nav-safe-clearance), calc(var(--hgqn-nav-browser-clearance) + 12px));
    }

    #huntergate-quantum-navigator .quantum-swiper .hgqn-bottom-nav-dock {
        min-height: 52px;
    }

    #huntergate-quantum-navigator .quantum-swiper .hgqn-bottom-nav-dock .swiper-pagination,
    #huntergate-quantum-navigator .quantum-swiper .hgqn-bottom-nav-dock .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator .quantum-swiper .hgqn-bottom-nav-dock .swiper-pagination.hgqn-slide-nav--bottom {
        width: min(100%, 258px);
        max-width: 258px;
        min-height: 48px;
        padding: 4px 6px;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide .compass-wrapper {
        width: min(100%, 286px);
        max-width: 286px;
    }
}

@media (orientation: landscape) and (max-width: 760px), (orientation: landscape) and (max-height: 460px) {
    #huntergate-quantum-navigator {
        --hgqn-slide-nav-bottom-space: 56px;
        --hgqn-nav-safe-clearance: calc(env(safe-area-inset-bottom, 0px) + 11px);
        --hgqn-slide-nav-bottom-offset: max(var(--hgqn-nav-safe-clearance), calc(var(--hgqn-nav-browser-clearance) + 11px));
    }

    #huntergate-quantum-navigator .quantum-swiper .hgqn-bottom-nav-dock {
        min-height: 48px;
    }

    #huntergate-quantum-navigator .quantum-swiper .hgqn-bottom-nav-dock .swiper-pagination,
    #huntergate-quantum-navigator .quantum-swiper .hgqn-bottom-nav-dock .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator .quantum-swiper .hgqn-bottom-nav-dock .swiper-pagination.hgqn-slide-nav--bottom {
        width: min(100%, 240px);
        max-width: 240px;
        min-height: 44px;
        padding: 4px 5px;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide .compass-wrapper {
        width: min(100%, 268px);
        max-width: 268px;
        gap: 4px;
    }
}


/* ==== v31h transport-linked slide nav docking ==== */
#huntergate-quantum-navigator {
    --hgqn-slide-nav-dock-top: 0px;
    --hgqn-slide-nav-anchor-height: 56px;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-slide-nav-anchor {
    order: 5;
    display: none;
    width: min(100%, 288px) !important;
    max-width: 288px !important;
    min-height: var(--hgqn-slide-nav-anchor-height);
    margin: 0.1rem auto 0 !important;
    padding: 0;
    pointer-events: none;
    visibility: hidden;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass.transport-mode-slot--active + .hgqn-slide-nav-anchor,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass.transport-mode-slot--occupied + .hgqn-slide-nav-anchor,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass:not(:empty) + .hgqn-slide-nav-anchor {
    display: block;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .transport-mode-slot--compass:empty + .hgqn-slide-nav-anchor {
    display: none;
    min-height: 0;
    margin-top: 0 !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
    order: 6;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .secret-checkpoint {
    order: 7;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide {
    padding-bottom: max(8px, calc(var(--safe-area-inset-bottom) + 6px)) !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .quantum-swiper .hgqn-bottom-nav-dock,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .quantum-swiper .hgqn-bottom-nav-dock.hgqn-bottom-nav-dock--anchored {
    top: var(--hgqn-slide-nav-dock-top) !important;
    bottom: auto !important;
    min-height: var(--hgqn-slide-nav-bottom-space);
    align-items: flex-start;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .quantum-swiper .hgqn-bottom-nav-dock .swiper-pagination,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .quantum-swiper .hgqn-bottom-nav-dock .swiper-pagination.hgqn-slide-nav,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .quantum-swiper .hgqn-bottom-nav-dock .swiper-pagination.hgqn-slide-nav--bottom {
    margin-top: 0 !important;
}

@media (orientation: landscape) and (max-width: 980px), (orientation: landscape) and (max-height: 620px) {
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-slide-nav-anchor {
        width: min(100%, 272px) !important;
        max-width: 272px !important;
        margin-top: 0.08rem !important;
    }
}

@media (orientation: landscape) and (max-width: 760px), (orientation: landscape) and (max-height: 460px) {
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .hgqn-slide-nav-anchor {
        width: min(100%, 250px) !important;
        max-width: 250px !important;
        margin-top: 0.06rem !important;
    }
}


/* ==== v32 structural slide nav slot under transport mode ==== */
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot {
    order: 5;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    width: min(100%, 288px) !important;
    max-width: 288px !important;
    min-height: 0 !important;
    margin: 0.08rem auto 0 !important;
    padding: 0 !important;
    pointer-events: none;
    overflow: visible !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot:empty {
    display: none;
    margin-top: 0 !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock.hgqn-bottom-nav-dock--hud-slot,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .quantum-swiper .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .quantum-swiper .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock.hgqn-bottom-nav-dock--hud-slot {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    display: flex !important;
    align-items: flex-start;
    justify-content: center;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
    z-index: 8 !important;
    transform: none !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination.hgqn-slide-nav,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination.hgqn-slide-nav--bottom,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .quantum-swiper .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .quantum-swiper .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination.hgqn-slide-nav,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .quantum-swiper .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination.hgqn-slide-nav--bottom {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: min(100%, 272px) !important;
    max-width: 272px !important;
    min-height: 50px;
    margin: 0 auto !important;
    padding: 5px 7px !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
    transform: none !important;
    z-index: 9 !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination .swiper-pagination-bullet,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .quantum-swiper .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination .swiper-pagination-bullet {
    pointer-events: auto !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > #activate-compass {
    order: 6;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .secret-checkpoint {
    order: 7;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-slide {
    padding-bottom: max(8px, calc(var(--safe-area-inset-bottom) + 6px)) !important;
}

@media (orientation: landscape) and (max-width: 980px), (orientation: landscape) and (max-height: 620px) {
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot {
        width: min(100%, 272px) !important;
        max-width: 272px !important;
        margin-top: 0.07rem !important;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination.hgqn-slide-nav--bottom {
        width: min(100%, 258px) !important;
        max-width: 258px !important;
        min-height: 48px;
        padding: 4px 6px !important;
    }
}

@media (orientation: landscape) and (max-width: 760px), (orientation: landscape) and (max-height: 460px) {
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot {
        width: min(100%, 250px) !important;
        max-width: 250px !important;
        margin-top: 0.06rem !important;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-bottom-nav-dock > .swiper-pagination.hgqn-slide-nav--bottom {
        width: min(100%, 240px) !important;
        max-width: 240px !important;
        min-height: 44px;
        gap: 6px;
        padding: 4px 5px !important;
    }
}


/* ==== v33 final slide nav parent fix: dedicated HUD slot shell, not footer dock ==== */
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot {
    order: 5 !important;
    display: flex !important;
    flex: 0 0 auto !important;
    align-self: center !important;
    align-items: flex-start !important;
    justify-content: center !important;
    width: min(100%, 288px) !important;
    max-width: 288px !important;
    min-height: 0 !important;
    margin: 0.06rem auto 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    pointer-events: none !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell {
    position: relative !important;
    inset: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 8 !important;
    pointer-events: none !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--bottom,
#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--hud-slot-mounted {
    position: relative !important;
    inset: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: min(100%, 272px) !important;
    max-width: 272px !important;
    min-height: 50px !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 5px 7px !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    z-index: 9 !important;
    pointer-events: none !important;
}

#huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination .swiper-pagination-bullet {
    pointer-events: auto !important;
}

@media (orientation: landscape) and (max-width: 980px), (orientation: landscape) and (max-height: 620px) {
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot {
        width: min(100%, 272px) !important;
        max-width: 272px !important;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--bottom,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--hud-slot-mounted {
        width: min(100%, 258px) !important;
        max-width: 258px !important;
        min-height: 48px !important;
        padding: 4px 6px !important;
    }
}

@media (orientation: landscape) and (max-width: 760px), (orientation: landscape) and (max-height: 460px) {
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot {
        width: min(100%, 250px) !important;
        max-width: 250px !important;
    }

    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--bottom,
    #huntergate-quantum-navigator[data-hgqn-layout="road"] .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--hud-slot-mounted {
        width: min(100%, 240px) !important;
        max-width: 240px !important;
        min-height: 44px !important;
        gap: 6px !important;
        padding: 4px 5px !important;
    }
}


/* ==== v34d per-slide nav host correction: compass / controls / map ==== */
#huntergate-quantum-navigator .hgqn-slide-nav-slot,
#huntergate-quantum-navigator .compass-wrapper > .hgqn-slide-nav-slot,
#huntergate-quantum-navigator .control-slide > .hgqn-slide-nav-slot,
#huntergate-quantum-navigator .map-slide > .hgqn-slide-nav-slot {
    display: flex !important;
    flex: 0 0 auto !important;
    align-self: center !important;
    align-items: flex-start !important;
    justify-content: center !important;
    width: min(100%, 288px) !important;
    max-width: 288px !important;
    min-height: 0 !important;
    margin: 0.06rem auto 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    pointer-events: none !important;
    position: relative !important;
    z-index: 24 !important;
}

#huntergate-quantum-navigator .control-slide > .hgqn-slide-nav-slot,
#huntergate-quantum-navigator .map-slide > .hgqn-slide-nav-slot {
    width: min(100%, 272px) !important;
    max-width: 272px !important;
}

#huntergate-quantum-navigator .control-slide {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-height: 100% !important;
    box-sizing: border-box !important;
}

#huntergate-quantum-navigator .control-slide > .hgqn-slide-nav-slot {
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    top: auto !important;
    bottom: calc(var(--hgqn-slide-nav-inline-baseline-bottom, 0px) - 1mm) !important;
    order: 10 !important;
    flex: 0 0 auto !important;
    min-height: 0 !important;
    align-self: center !important;
    margin: 0 !important;
    transform: translateX(-50%) !important;
    z-index: 30 !important;
}

#huntergate-quantum-navigator .map-slide {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    overflow: hidden !important;
    padding-bottom: 0 !important;
}

#huntergate-quantum-navigator .map-slide > #map-container {
    position: relative !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    z-index: 1 !important;
}

#huntergate-quantum-navigator .map-slide > #map-container > div,
#huntergate-quantum-navigator .map-slide > #map-container #leaflet-map,
#huntergate-quantum-navigator .map-slide .leaflet-container,
#huntergate-quantum-navigator .map-slide .leaflet-pane {
    position: relative !important;
    z-index: 1 !important;
}

#huntergate-quantum-navigator .map-slide > .hgqn-slide-nav-slot {
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    top: auto !important;
    bottom: calc(var(--hgqn-slide-nav-inline-baseline-bottom, 0px) - 1mm) !important;
    order: 2 !important;
    flex: 0 0 auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    transform: translateX(-50%) !important;
    z-index: 30 !important;
}

#huntergate-quantum-navigator:not([data-hgqn-compass-state="active"]) .hgqn-slide-nav-slot > .hgqn-slide-nav-shell,
#huntergate-quantum-navigator:not([data-hgqn-compass-state="active"]) .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell,
#huntergate-quantum-navigator:not([data-hgqn-compass-state="active"]) .control-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell,
#huntergate-quantum-navigator:not([data-hgqn-compass-state="active"]) .map-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell,
#huntergate-quantum-navigator:not([data-hgqn-compass-state="active"]) .hgqn-slide-nav-viewport-host,
#huntergate-quantum-navigator:not([data-hgqn-compass-state="active"]) .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell,
#huntergate-quantum-navigator:not([data-hgqn-compass-state="active"]) .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination,
#huntergate-quantum-navigator:not([data-hgqn-compass-state="active"]) .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

#huntergate-quantum-navigator[data-hgqn-slide-nav-visual-ready="0"] .hgqn-slide-nav-shell,
#huntergate-quantum-navigator[data-hgqn-slide-nav-visual-ready="0"] .hgqn-slide-nav-shell > .swiper-pagination,
#huntergate-quantum-navigator[data-hgqn-slide-nav-visual-ready="0"] #hgqn-slide-nav-viewport-host,
#huntergate-quantum-navigator[data-hgqn-slide-nav-visual-ready="0"] #hgqn-slide-nav-viewport-host .hgqn-slide-nav-shell,
#huntergate-quantum-navigator[data-hgqn-slide-nav-visual-ready="0"] #hgqn-slide-nav-viewport-host .hgqn-slide-nav-shell > .swiper-pagination {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

#huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell,
#huntergate-quantum-navigator .compass-wrapper > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell,
#huntergate-quantum-navigator .control-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell,
#huntergate-quantum-navigator .map-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell {
    position: relative !important;
    inset: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 31 !important;
    pointer-events: none !important;
}

#huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination,
#huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav,
#huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--bottom,
#huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--hud-slot-mounted,
#huntergate-quantum-navigator .control-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination,
#huntergate-quantum-navigator .control-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav,
#huntergate-quantum-navigator .control-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--bottom,
#huntergate-quantum-navigator .control-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--hud-slot-mounted,
#huntergate-quantum-navigator .map-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination,
#huntergate-quantum-navigator .map-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav,
#huntergate-quantum-navigator .map-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--bottom,
#huntergate-quantum-navigator .map-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--hud-slot-mounted {
    position: relative !important;
    inset: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: min(100%, 272px) !important;
    max-width: 272px !important;
    min-height: 50px !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 5px 7px !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    z-index: 32 !important;
    pointer-events: none !important;
}

#huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination .swiper-pagination-bullet,
#huntergate-quantum-navigator .control-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination .swiper-pagination-bullet,
#huntergate-quantum-navigator .map-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination .swiper-pagination-bullet {
    pointer-events: auto !important;
}

#huntergate-quantum-navigator .hgqn-slide-nav-slot[data-hgqn-slide-nav-active="0"]:empty {
    display: none !important;
    margin-top: 0 !important;
}

@media (orientation: landscape) and (max-width: 980px), (orientation: landscape) and (max-height: 620px) {
    #huntergate-quantum-navigator .hgqn-slide-nav-slot,
    #huntergate-quantum-navigator .control-slide > .hgqn-slide-nav-slot,
    #huntergate-quantum-navigator .map-slide > .hgqn-slide-nav-slot {
        width: min(100%, 272px) !important;
        max-width: 272px !important;
    }

    #huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination,
    #huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--bottom,
    #huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--hud-slot-mounted {
        width: min(100%, 258px) !important;
        max-width: 258px !important;
        min-height: 48px !important;
        padding: 4px 6px !important;
    }
}

@media (orientation: landscape) and (max-width: 760px), (orientation: landscape) and (max-height: 460px) {
    #huntergate-quantum-navigator .hgqn-slide-nav-slot,
    #huntergate-quantum-navigator .control-slide > .hgqn-slide-nav-slot,
    #huntergate-quantum-navigator .map-slide > .hgqn-slide-nav-slot {
        width: min(100%, 250px) !important;
        max-width: 250px !important;
    }

    #huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination,
    #huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--bottom,
    #huntergate-quantum-navigator .hgqn-slide-nav-slot > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--hud-slot-mounted {
        width: min(100%, 240px) !important;
        max-width: 240px !important;
        min-height: 44px !important;
        gap: 6px !important;
        padding: 4px 5px !important;
    }
}


/* ==== v34e mobile visual viewport nav visibility fix ==== */
#huntergate-quantum-navigator {
    --hgqn-visual-viewport-height: 100dvh;
    --hgqn-nav-viewport-offset-left: 0px;
    --hgqn-nav-viewport-offset-right: 0px;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode {
    height: var(--hgqn-visual-viewport-height, 100dvh) !important;
    max-height: var(--hgqn-visual-viewport-height, 100dvh) !important;
    overflow: hidden !important;
}

#huntergate-quantum-navigator .hgqn-slide-nav-viewport-host {
    position: absolute !important;
    left: max(8px, calc(env(safe-area-inset-left, 0px) + 8px), calc(var(--hgqn-nav-viewport-offset-left, 0px) + 8px)) !important;
    right: max(8px, calc(env(safe-area-inset-right, 0px) + 8px), calc(var(--hgqn-nav-viewport-offset-right, 0px) + 8px)) !important;
    bottom: max(calc(env(safe-area-inset-bottom, 0px) + 10px), calc(var(--hgqn-nav-browser-clearance, 0px) + 10px)) !important;
    display: none !important;
    align-items: flex-end !important;
    justify-content: center !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
    z-index: 160 !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host {
    display: flex !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-slot,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .compass-wrapper > .hgqn-slide-nav-slot,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .control-slide > .hgqn-slide-nav-slot,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide > .hgqn-slide-nav-slot {
    display: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell {
    position: relative !important;
    inset: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    pointer-events: none !important;
    z-index: 161 !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--bottom,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--hud-slot-mounted {
    position: relative !important;
    inset: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: min(100%, 272px) !important;
    max-width: 272px !important;
    min-height: 50px !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 5px 7px !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: none !important;
    z-index: 162 !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination .swiper-pagination-bullet {
    pointer-events: auto !important;
    touch-action: manipulation !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .swiper-slide {
    padding-bottom: calc(var(--hgqn-slide-nav-bottom-space, 68px) + env(safe-area-inset-bottom, 0px) + 8px) !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide {
    padding-bottom: calc(var(--hgqn-slide-nav-bottom-space, 68px) + env(safe-area-inset-bottom, 0px) + 6px) !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide > #map-container {
    min-height: 0 !important;
    z-index: 1 !important;
}

#huntergate-quantum-navigator .map-slide,
#huntergate-quantum-navigator .map-slide > #map-container,
#huntergate-quantum-navigator .map-slide .hgqn-map-stage,
#huntergate-quantum-navigator .map-slide #leaflet-map {
    background: #0a0e1a !important;
}

#huntergate-quantum-navigator .map-slide {
    position: relative !important;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

#huntergate-quantum-navigator .map-slide > #map-container,
#huntergate-quantum-navigator .map-slide .hgqn-map-stage,
#huntergate-quantum-navigator .map-slide #leaflet-map,
#huntergate-quantum-navigator .hgqn-slide-nav-viewport-host,
#huntergate-quantum-navigator .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell {
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

#huntergate-quantum-navigator .map-slide > #map-container {
    margin-bottom: -1px !important;
    padding-bottom: 1px !important;
    transform: translateZ(0);
}

#huntergate-quantum-navigator .map-slide .hgqn-map-stage,
#huntergate-quantum-navigator .map-slide #leaflet-map,
#huntergate-quantum-navigator .hgqn-slide-nav-viewport-host {
    transform: translateZ(0);
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="controls"] .hgqn-slide-nav-viewport-host,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .hgqn-slide-nav-viewport-host {
    transform: translate3d(0, 1mm, 0) !important;
}

/* Retired viewport map reservation block.
   The single full-screen map + overlay nav contract lives in the block below. */
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .map-slide::after {
    display: none !important;
    content: none !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .map-slide > #map-container {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
}

@media (orientation: landscape) and (max-width: 980px), (orientation: landscape) and (max-height: 620px) {
    #huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination,
    #huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--bottom,
    #huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--hud-slot-mounted {
        width: min(100%, 258px) !important;
        max-width: 258px !important;
        min-height: 48px !important;
        padding: 4px 6px !important;
    }
}

@media (orientation: landscape) and (max-width: 760px), (orientation: landscape) and (max-height: 460px) {
    #huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host {
        bottom: max(calc(env(safe-area-inset-bottom, 0px) + 8px), calc(var(--hgqn-nav-browser-clearance, 0px) + 8px)) !important;
        min-height: 48px !important;
    }

    #huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination,
    #huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav,
    #huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--bottom,
    #huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .hgqn-slide-nav-viewport-host > .hgqn-slide-nav-shell > .swiper-pagination.hgqn-slide-nav--hud-slot-mounted {
        width: min(100%, 240px) !important;
        max-width: 240px !important;
        min-height: 44px !important;
        gap: 6px !important;
        padding: 4px 5px !important;
    }
}

/* ==== retired v34g grid-reservation contract; superseded by single overlay contract below ==== */

/* ==== v34j viewport host is single visual nav source; map stays full-screen under overlay ==== */
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide {
    display: block !important;
    position: relative !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    isolation: isolate !important;
    align-items: stretch !important;
    justify-content: stretch !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide > #map-container {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    z-index: 1 !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide > #map-container > .hgqn-map-stage,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide > #map-container #leaflet-map,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide .leaflet-container {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    min-height: 0 !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide > .hgqn-slide-nav-slot,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide > .hgqn-slide-nav-slot > .hgqn-slide-nav-shell,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide > .hgqn-slide-nav-slot > .swiper-pagination {
    display: none !important;
    min-height: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    background: transparent !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .control-slide,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide {
    padding-bottom: 0 !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .control-slide > .hgqn-slide-nav-slot,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide > .hgqn-slide-nav-slot {
    flex: 0 0 0 !important;
    min-height: 0 !important;
    height: 0 !important;
    margin: 0 !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .map-slide::after {
    display: none !important;
    content: none !important;
}


/* ==== v34k viewport baseline lock + true full-screen map cleanup ==== */
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .quantum-swiper,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .quantum-swiper .swiper-wrapper,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .quantum-swiper .swiper-slide[data-hgqn-slide="map"] {
    height: 100% !important;
    min-height: 0 !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .quantum-swiper .swiper-slide[data-hgqn-slide="controls"],
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .quantum-swiper .swiper-slide[data-hgqn-slide="map"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .quantum-swiper .swiper-slide[data-hgqn-slide="map"] {
    display: block !important;
    position: relative !important;
    overflow: hidden !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide > #map-container > .hgqn-map-stage,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide > #map-container #leaflet-map,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide .leaflet-container {
    border-radius: 0 !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode .map-slide > #map-container {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* ==== v34l map true full-screen + controls/map nav baseline alignment ==== */
/* controls/map viewport host now inherits the same baseline as slide 1 via the shared viewport host rule */

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .swiper-slide[data-hgqn-slide="map"],
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .map-slide {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .swiper-slide[data-hgqn-slide="map"] > #map-container,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .map-slide > #map-container {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 1 !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .swiper-slide[data-hgqn-slide="map"] > #map-container > .hgqn-map-stage,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .map-slide > #map-container > .hgqn-map-stage {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    background: #0a0e1a !important;
}

#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .swiper-slide[data-hgqn-slide="map"] > #map-container > .hgqn-map-stage > #leaflet-map,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .map-slide > #map-container > .hgqn-map-stage > #leaflet-map,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .swiper-slide[data-hgqn-slide="map"] .leaflet-container,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .map-slide .leaflet-container,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .swiper-slide[data-hgqn-slide="map"] .leaflet-pane,
#huntergate-quantum-navigator.hgqn-slide-nav-viewport-mode[data-hgqn-active-slide="map"] .map-slide .leaflet-pane {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
}



/* ==== slide 3 map stability + recenter control patch ==== */
#huntergate-quantum-navigator .map-slide .leaflet-pane,
#huntergate-quantum-navigator .map-slide .leaflet-map-pane,
#huntergate-quantum-navigator .map-slide .leaflet-tile-pane,
#huntergate-quantum-navigator .map-slide .leaflet-overlay-pane,
#huntergate-quantum-navigator .map-slide .leaflet-shadow-pane,
#huntergate-quantum-navigator .map-slide .leaflet-marker-pane,
#huntergate-quantum-navigator .map-slide .leaflet-tooltip-pane,
#huntergate-quantum-navigator .map-slide .leaflet-popup-pane {
    position: absolute !important;
    inset: 0 !important;
}

#huntergate-quantum-navigator[data-hgqn-active-slide="map"] .swiper-slide[data-hgqn-slide="map"],
#huntergate-quantum-navigator[data-hgqn-active-slide="map"] .map-slide {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

#huntergate-quantum-navigator[data-hgqn-active-slide="map"] .swiper-slide[data-hgqn-slide="map"] > #map-container,
#huntergate-quantum-navigator[data-hgqn-active-slide="map"] .map-slide > #map-container,
#huntergate-quantum-navigator[data-hgqn-active-slide="map"] .swiper-slide[data-hgqn-slide="map"] > #map-container > .hgqn-map-stage,
#huntergate-quantum-navigator[data-hgqn-active-slide="map"] .map-slide > #map-container > .hgqn-map-stage,
#huntergate-quantum-navigator[data-hgqn-active-slide="map"] .swiper-slide[data-hgqn-slide="map"] > #map-container > .hgqn-map-stage > #leaflet-map,
#huntergate-quantum-navigator[data-hgqn-active-slide="map"] .map-slide > #map-container > .hgqn-map-stage > #leaflet-map,
#huntergate-quantum-navigator[data-hgqn-active-slide="map"] .swiper-slide[data-hgqn-slide="map"] .leaflet-container,
#huntergate-quantum-navigator[data-hgqn-active-slide="map"] .map-slide .leaflet-container {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
}

#huntergate-quantum-navigator .map-slide .hgqn-map-recenter-control {
    margin-top: calc(12px + env(safe-area-inset-top, 0px));
    margin-right: calc(12px + env(safe-area-inset-right, 0px));
    border: 0 !important;
    box-shadow: none !important;
}

#huntergate-quantum-navigator .map-slide .hgqn-map-recenter-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border-radius: 14px;
    border: 1px solid rgba(0, 242, 255, 0.72);
    background: linear-gradient(135deg, rgba(2, 20, 34, 0.92), rgba(0, 242, 255, 0.16));
    color: #00f2ff;
    box-shadow: 0 0 16px rgba(0, 242, 255, 0.28), inset 0 0 12px rgba(0, 242, 255, 0.08);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    cursor: pointer;
}

#huntergate-quantum-navigator .map-slide .hgqn-map-recenter-btn .material-icons {
    font-size: 22px;
    line-height: 1;
}

#huntergate-quantum-navigator .map-slide .hgqn-map-recenter-btn:hover,
#huntergate-quantum-navigator .map-slide .hgqn-map-recenter-btn:focus-visible {
    outline: none;
    background: linear-gradient(135deg, rgba(0, 242, 255, 0.28), rgba(2, 20, 34, 0.96));
    box-shadow: 0 0 18px rgba(0, 242, 255, 0.4), inset 0 0 16px rgba(0, 242, 255, 0.12);
}

#huntergate-quantum-navigator .map-slide .hgqn-map-recenter-control.is-disabled .hgqn-map-recenter-btn,
#huntergate-quantum-navigator .map-slide .hgqn-map-recenter-btn:disabled {
    opacity: 0.45;
    cursor: default;
    box-shadow: none;
}


/* ==== slide 3 user marker anchor correction (v15) ==== */
#huntergate-quantum-navigator .map-slide .qn-user-marker {
    position: relative;
    width: 66px;
    height: 66px;
    pointer-events: none;
    color: var(--qn-user-color, #00f2ff);
}

#huntergate-quantum-navigator .map-slide .qn-user-heading {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    transform: translate(-50%, -50%) rotate(0deg);
    transform-origin: 50% 50%;
    transition: none;
    will-change: transform;
    backface-visibility: hidden;
}

#huntergate-quantum-navigator .map-slide .qn-user-arrow {
    position: absolute;
    left: 0;
    top: 0;
    width: 20px;
    height: 30px;
    transform: translate(-50%, -88%);
    background: currentColor;
    clip-path: polygon(50% 0%, 100% 100%, 50% 72%, 0% 100%);
    filter: drop-shadow(0 0 8px currentColor) drop-shadow(0 0 20px rgba(0,242,255,0.18));
    transition: filter 0.2s ease, background-color 0.18s linear;
}

#huntergate-quantum-navigator .map-slide .qn-user-arrow::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 72%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255,255,255,0.96);
    box-shadow: 0 0 12px rgba(255,255,255,0.45);
    transform: translate(-50%, -50%);
}

#huntergate-quantum-navigator .map-slide .qn-user-core {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    transform: translate(-50%, -50%);
    background: #ffffff;
    box-shadow: 0 0 0 2px rgba(0, 242, 255, 0.45), 0 0 10px rgba(255,255,255,0.75), 0 0 18px rgba(0,242,255,0.35);
}

#huntergate-quantum-navigator .map-slide .qn-user-arrow.aligned {
    background: #00ff88 !important;
    filter: drop-shadow(0 0 10px #00ff88) drop-shadow(0 0 18px rgba(0,255,136,0.45));
}
