/*
 * DROPX EXPLORER ORB — isolated visual engine
 * Only the mobile Explorer Orb is styled here.
 * No Explorer menu/admin/navigation rules belong in this file.
 */
@media (max-width: 700px) {
    .mobile-explorer-orb {
        --orb-gold: #d6a52b;
        --orb-gold-soft: rgba(214,165,43,.55);
        --orb-glass: rgba(8, 10, 12, 0.795);
        position: relative;
        display: grid;
        place-items: center;
        width: 52px; height: 54px; min-width: 54px; min-height: 54px; max-width: 54px; max-height: 54px; aspect-ratio: 1 / 1;
        padding: 0;
        border: 1px solid rgba(214,165,43,.58);
        border-radius: 50%;
        background: linear-gradient(145deg, rgba(255,255,255,.16) 0%, rgba(255,255,255,.055) 18%, rgba(8,10,12,.70) 48%, rgba(8,10,12,.78) 72%, rgba(214,165,43,.08) 100%);
        color: var(--orb-gold);
        box-shadow: 0 0 0 4px rgba(214,165,43,.08), 0 9px 24px rgba(0,0,0,.52), inset 0 0 22px rgba(214,165,43,.12), inset 0 1px 2px rgba(255,255,255,.30), inset 0 -8px 14px rgba(0,0,0,.28);
        cursor: pointer;
        pointer-events: auto;
        overflow: visible;
        isolation: isolate;
        transform: translateZ(0);
        transition: transform .22s cubic-bezier(.2,.8,.2,1), border-color .25s ease, filter .25s ease, box-shadow .25s ease;
        -webkit-tap-highlight-color: transparent;
        z-index: 10;
        top: 25%;
    }
    .mobile-explorer-orb::before,
    .mobile-explorer-orb::after {
        content: ''; position: absolute; border-radius: 50%; pointer-events: none; z-index: 4;
    }
    .mobile-explorer-orb::before { inset: -5px; border: 1px solid rgba(214,165,43,.24); animation: dxOrbRing 9s linear infinite; }
    .mobile-explorer-orb::after { inset: -9px; border: 1px solid rgba(214,165,43,.11); border-top-color: rgba(255,255,255,.18); animation: dxOrbRingReverse 14s linear infinite; }

    .mobile-explorer-orb::selection { background: transparent; }
    .explorer-orb-core {
        position: absolute; inset: 0; overflow: hidden; isolation: isolate; border-radius: 50%; clip-path: circle(50% at 50% 50%); contain: paint;
        background: radial-gradient(circle at 30% 23%, rgba(255,255,255,.22), transparent 18%), radial-gradient(circle at 67% 72%, rgba(214,165,43,.24), transparent 42%), radial-gradient(circle at 50% 50%, #30363a 0%, #101518 57%, #050607 100%);
        box-shadow: inset -8px -9px 17px rgba(0,0,0,.54), inset 4px 4px 13px rgba(255,255,255,.07), 0 0 14px rgba(214,165,43,.08);
        animation: dxOrbCoreRotate var(--dx-explorer-globe-speed, 28s) linear infinite;
        will-change: transform;
    }
    .explorer-orb-core::before,
    .explorer-orb-core::after { content:''; position:absolute; inset:-22%; border-radius:50%; pointer-events:none; }
    .explorer-orb-core::before {
        background: conic-gradient(from 8deg, transparent 0deg, rgba(214,165,43,.22) 42deg, rgba(255,255,255,.11) 72deg, transparent 112deg, rgba(214,165,43,.26) 174deg, transparent 224deg, rgba(255,255,255,.09) 292deg, transparent 342deg);
        filter: blur(5px); opacity:.9; animation: dxOrbEnergy 13s ease-in-out infinite; will-change: transform, opacity;
    }
    .explorer-orb-core::after {
        inset: 3%;
        background: radial-gradient(ellipse at 18% 64%, rgba(214,165,43,.48), transparent 32%), radial-gradient(ellipse at 73% 28%, rgba(255,255,255,.13), transparent 27%), radial-gradient(ellipse at 72% 77%, rgba(214,165,43,.40), transparent 34%), radial-gradient(ellipse at 40% 42%, rgba(214,165,43,.12), transparent 45%);
        filter: blur(6px); opacity:.88; animation: dxOrbFluid 8.8s cubic-bezier(.45,.05,.35,1) infinite; will-change: transform, opacity;
    }
    .explorer-orb-smoke {
        position:absolute;
        width:32%;
        height:14%;
        border-radius:50%;
        filter:blur(1.2px) contrast(20.16);
        opacity:.92;
        clip-path:ellipse(80% 80% at 80% 80%);
        background:
            radial-gradient(ellipse at 14% 48%, rgba(214,165,43,.24) 0%, rgba(214,165,43,.08) 18%, transparent 42%),
            radial-gradient(ellipse at 74% 30%, rgba(71,178,255,.15) 0%, rgba(71,178,255,.045) 20%, transparent 44%),
            radial-gradient(ellipse at 54% 78%, rgba(166,91,255,.12) 0%, rgba(166,91,255,.035) 18%, transparent 42%),
            radial-gradient(ellipse at 12% 50%, rgba(0,0,0,.90) 0%, rgba(4,5,6,.72) 16%, transparent 40%),
            radial-gradient(ellipse at 34% 28%, rgba(3,4,5,.82) 0%, rgba(11,13,15,.58) 18%, transparent 43%),
            radial-gradient(ellipse at 57% 72%, rgba(0,0,0,.88) 0%, rgba(7,9,11,.68) 17%, transparent 42%),
            radial-gradient(ellipse at 84% 38%, rgba(2,3,4,.82) 0%, rgba(10,12,14,.54) 19%, transparent 42%),
            radial-gradient(ellipse at 48% 50%, rgba(120,124,128,.18) 0%, rgba(26,28,30,.14) 28%, transparent 58%),
            linear-gradient(112deg, transparent 4%, rgba(0,0,0,.76) 20%, rgba(48,50,51,.26) 34%, transparent 46%, rgba(0,0,0,.78) 62%, rgba(37,39,40,.24) 74%, transparent 92%);
        mix-blend-mode:normal;
        will-change:transform,opacity,filter;
    }
    .explorer-orb-smoke::before,
    .explorer-orb-smoke::after {
        content:'';
        position:absolute;
        inset:0;
        border-radius:50%;
        pointer-events:none;
    }
    .explorer-orb-smoke::before {
        background:
            radial-gradient(ellipse at 18% 58%, rgba(214,165,43,.22) 0%, rgba(214,165,43,.055) 20%, transparent 44%),
            radial-gradient(ellipse at 51% 35%, rgba(74,184,255,.16) 0%, rgba(38,74,96,.08) 22%, transparent 48%),
            radial-gradient(ellipse at 77% 68%, rgba(161,86,255,.15) 0%, rgba(74,42,105,.06) 20%, transparent 43%),
            radial-gradient(ellipse at 28% 72%, rgba(0,0,0,.78) 0%, rgba(5,6,7,.48) 22%, transparent 44%),
            radial-gradient(ellipse at 72% 22%, rgba(0,0,0,.72) 0%, rgba(6,8,9,.44) 20%, transparent 43%);
        filter:blur(1.6px);
        opacity:.96;
        animation:dxOrbSmokeWisps 8.2s ease-in-out infinite;
    }
    .explorer-orb-smoke::after {
        background:linear-gradient(112deg, transparent 0%, rgba(255,255,255,.018) 34%, rgba(255,255,255,.10) 46%, transparent 55%, rgba(214,165,43,.07) 68%, transparent 82%);
        filter:blur(1px);
        opacity:.92;
        animation:dxOrbGlassSheen 8.8s ease-in-out infinite;
    }

    .explorer-orb-smoke-a { left:-16%; top:8%; animation:dxOrbSmokeA var(--dx-orb-smoke-a,10.5s) cubic-bezier(.45,.05,.25,1) infinite; }
    .explorer-orb-smoke-b { right:-16%; bottom:4%; animation:dxOrbSmokeB var(--dx-orb-smoke-b,12.8s) cubic-bezier(.55,.02,.25,1) infinite; }
    .explorer-orb-smoke-c { left:18%; bottom:-12%; width:74%; opacity:.22; animation:dxOrbSmokeC var(--dx-orb-smoke-c,15.2s) cubic-bezier(.4,.05,.25,1) infinite; }

    /* A füst minden új ciklusban más irányba kapja a sodródását. */
    .explorer-orb-smoke-a,
    .explorer-orb-smoke-b,
    .explorer-orb-smoke-c {
        --smoke-mid-x: var(--dx-smoke-a-mid-x, 8%);
        --smoke-mid-y: var(--dx-smoke-a-mid-y, -6%);
        --smoke-end-x: var(--dx-smoke-a-end-x, 12%);
        --smoke-end-y: var(--dx-smoke-a-end-y, -8%);
        --smoke-back-x: var(--dx-smoke-a-back-x, -4%);
        --smoke-back-y: var(--dx-smoke-a-back-y, 3%);
    }
    .explorer-orb-smoke-b {
        --smoke-mid-x: var(--dx-smoke-b-mid-x, -8%);
        --smoke-mid-y: var(--dx-smoke-b-mid-y, 7%);
        --smoke-end-x: var(--dx-smoke-b-end-x, -14%);
        --smoke-end-y: var(--dx-smoke-b-end-y, 10%);
        --smoke-back-x: var(--dx-smoke-b-back-x, 4%);
        --smoke-back-y: var(--dx-smoke-b-back-y, -3%);
    }
    .explorer-orb-smoke-c {
        --smoke-mid-x: var(--dx-smoke-c-mid-x, 6%);
        --smoke-mid-y: var(--dx-smoke-c-mid-y, -8%);
        --smoke-end-x: var(--dx-smoke-c-end-x, 10%);
        --smoke-end-y: var(--dx-smoke-c-end-y, -12%);
        --smoke-back-x: var(--dx-smoke-c-back-x, -3%);
        --smoke-back-y: var(--dx-smoke-c-back-y, 4%);
    }

    .explorer-orb-continent { position:absolute; inset:5px; width:calc(100% - 10px); height:calc(100% - 10px); fill:rgba(226,178,55,.40); opacity:.42; filter:blur(1.2px); transform-origin:50% 50%; animation:dxOrbContinents 18s ease-in-out infinite; will-change:transform,opacity; }
    .explorer-orb-compass{position:absolute;inset:3px;z-index:4;pointer-events:none;border-radius:50%;overflow:hidden;opacity:.9;will-change:transform;}
    .explorer-orb-compass::before{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.20);border-radius:50%;box-shadow:inset 0 0 10px rgba(0,0,0,.58),0 0 8px rgba(214,165,43,.10);}
    .explorer-compass-card{position:absolute;inset:0;border-radius:50%;transform:rotate(0deg);transform-origin:50% 50%;transition:transform .18s cubic-bezier(.2,.8,.2,1);will-change:transform;}
    .explorer-compass-card span{position:absolute;display:grid;place-items:center;width:18px;height:12px;font:800 7px/1 system-ui,sans-serif;color:rgba(245,239,225,.96);text-shadow:0 1px 3px rgba(0,0,0,.9);transform:translate(-50%,-50%);}
    .explorer-compass-card .north{left:50%;top:10%;}.explorer-compass-card .east{left:90%;top:50%;}.explorer-compass-card .south{left:50%;top:90%;}.explorer-compass-card .west{left:10%;top:50%;}
    .explorer-compass-needle{position:absolute;left:50%;top:50%;width:6px;height:34px;transform:translate(-50%,-50%);z-index:5;filter:drop-shadow(0 1px 3px rgba(0,0,0,.9));}
    .explorer-compass-needle::before{content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:17px solid #e23b32;}
    .explorer-compass-needle::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);border-left:3px solid transparent;border-right:3px solid transparent;border-top:17px solid #f2f0e9;}
    .explorer-compass-needle .needle-center{position:absolute;left:50%;top:50%;width:7px;height:7px;transform:translate(-50%,-50%);border-radius:50%;background:#d6a52b;border:1px solid #fff;box-shadow:0 0 5px rgba(214,165,43,.55);}
    .mobile-explorer-orb.is-location-active .explorer-orb-compass{opacity:1;}
    .mobile-explorer-orb:not(.is-location-active) .explorer-orb-compass{opacity:.55;filter:grayscale(.25);}
    .mobile-explorer-orb.is-open .explorer-orb-compass{opacity:1;}
    .mobile-explorer-orb.is-location-active .explorer-orb-compass { opacity:.88; }
    .mobile-explorer-orb:not(.is-location-active) .explorer-orb-compass { opacity:.50; filter:grayscale(.35); }
    .mobile-explorer-orb.is-open .explorer-orb-compass { opacity:1; }

    .explorer-orb-icon { position:relative; z-index:5; width:20px; height:20px; stroke-width:1.8; filter:drop-shadow(0 0 7px rgba(214,165,43,.42)); transition:filter .25s ease, transform .22s ease, opacity .25s ease; }
    .explorer-orb-status-dot { position:absolute; z-index:6; right:5px; bottom:6px; width:7px; height:7px; border-radius:50%; background:#777; border:1px solid #080a0c; box-shadow:0 0 0 2px rgba(0,0,0,.18); transition:background .3s ease,box-shadow .3s ease; }
    .mobile-explorer-orb.is-location-active .explorer-orb-status-dot { background:#45b96b; box-shadow:0 0 0 3px rgba(69,185,107,.12),0 0 10px rgba(69,185,107,.55); animation:dxOrbStatusPulse 2.6s ease-in-out infinite; }
    .mobile-explorer-orb:not(.is-location-active) { filter:grayscale(.68); opacity:.9; border-color:rgba(160,160,160,.38); }
    .mobile-explorer-orb:not(.is-location-active) .explorer-orb-core { filter:grayscale(.5); opacity:.82; }
    .mobile-explorer-orb:not(.is-location-active) .explorer-orb-smoke { opacity:.18; }
    .mobile-explorer-orb.is-location-active .explorer-orb-smoke { opacity:.70; }
    .mobile-explorer-orb.is-open { transform:translateZ(0) scale(1.06); border-color:rgba(214,165,43,.92); box-shadow:0 0 0 5px rgba(214,165,43,.10),0 10px 28px rgba(0,0,0,.50),inset 0 0 25px rgba(214,165,43,.16); }
    .mobile-explorer-orb:active { transform:translateZ(0) scale(.96); }
    .mobile-explorer-orb.is-activating .explorer-orb-core { animation:dxOrbCoreWake .85s cubic-bezier(.2,.8,.2,1) both, dxOrbCoreRotate var(--dx-explorer-globe-speed,28s) linear .85s infinite; }
    .mobile-explorer-orb.is-activating .explorer-orb-smoke { animation-duration:5.5s; }
    .mobile-explorer-orb.is-deactivating .explorer-orb-smoke { opacity:.12; transition:opacity .7s ease; }
    html[data-dx-theme="light"] .mobile-explorer-orb { --orb-gold:#9a6b1c; background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(239,231,218,.78) 48%,rgba(154,107,28,.08)); border-color:rgba(154,107,28,.48); box-shadow:0 0 0 5px rgba(154,107,28,.07),0 9px 24px rgba(52,38,25,.22),inset 0 0 24px rgba(154,107,28,.12),inset 0 1px 1px rgba(255,255,255,.7); }
    html[data-dx-theme="light"] .explorer-orb-core { background:radial-gradient(circle at 30% 23%,rgba(255,255,255,.6),transparent 18%),radial-gradient(circle at 67% 72%,rgba(154,107,28,.20),transparent 42%),radial-gradient(circle at 50% 50%,#c9c0b4 0%,#776e63 58%,#37322d 100%); }
    html[data-dx-theme="light"] .explorer-orb-status-dot { border-color:#e7dfd4; }

    @keyframes dxOrbCoreRotate { from{transform:rotate(0)} to{transform:rotate(360deg)} }
    @keyframes dxOrbRing { from{transform:rotate(0)} to{transform:rotate(360deg)} }
    @keyframes dxOrbRingReverse { from{transform:rotate(360deg)} to{transform:rotate(0)} }
    @keyframes dxOrbEnergy { 0%,100%{transform:rotate(-8deg) scale(1);opacity:.55} 22%{transform:rotate(74deg) scale(1.08);opacity:.95} 46%{transform:rotate(168deg) scale(.96);opacity:.48} 67%{transform:rotate(251deg) scale(1.10);opacity:1} 82%{transform:rotate(316deg) scale(.98);opacity:.62} }
    @keyframes dxOrbFluid { 0%,100%{transform:translate3d(-8%,-2%,0) scale(.94) rotate(-5deg);opacity:.55} 17%{transform:translate3d(4%,5%,0) scale(1.04) rotate(11deg);opacity:.95} 36%{transform:translate3d(10%,-5%,0) scale(1.10) rotate(-7deg);opacity:.60} 52%{transform:translate3d(-4%,8%,0) scale(.98) rotate(14deg);opacity:1} 72%{transform:translate3d(-10%,-4%,0) scale(1.08) rotate(-11deg);opacity:.48} 88%{transform:translate3d(3%,2%,0) scale(.96) rotate(4deg);opacity:.82} }
    @keyframes dxOrbSmokeA {
        0%,100% { transform:translate3d(0,0,0) rotate(-12deg) scale(.76); opacity:.24; }
        18% { transform:translate3d(calc(var(--smoke-mid-x) * .55),calc(var(--smoke-mid-y) * .55),0) rotate(8deg) scale(1.02); opacity:.66; }
        34% { transform:translate3d(var(--smoke-mid-x),var(--smoke-mid-y),0) rotate(22deg) scale(1.18); opacity:.90; }
        51% { transform:translate3d(var(--smoke-end-x),var(--smoke-end-y),0) rotate(36deg) scale(1.30); opacity:.54; }
        67% { transform:translate3d(var(--smoke-mid-x),var(--smoke-mid-y),0) rotate(4deg) scale(1.02); opacity:.86; }
        83% { transform:translate3d(var(--smoke-back-x),var(--smoke-back-y),0) rotate(-18deg) scale(.84); opacity:.64; }
    }
    @keyframes dxOrbSmokeB {
        0%,100% { transform:translate3d(0,0,0) rotate(10deg) scale(.82); opacity:.22; }
        20% { transform:translate3d(calc(var(--smoke-mid-x) * .50),calc(var(--smoke-mid-y) * .50),0) rotate(-10deg) scale(1.04); opacity:.62; }
        38% { transform:translate3d(var(--smoke-mid-x),var(--smoke-mid-y),0) rotate(-24deg) scale(1.22); opacity:.86; }
        54% { transform:translate3d(var(--smoke-end-x),var(--smoke-end-y),0) rotate(-38deg) scale(1.30); opacity:.48; }
        70% { transform:translate3d(var(--smoke-mid-x),var(--smoke-mid-y),0) rotate(-4deg) scale(1.04); opacity:.88; }
        86% { transform:translate3d(var(--smoke-back-x),var(--smoke-back-y),0) rotate(18deg) scale(.88); opacity:.62; }
    }
    @keyframes dxOrbSmokeC {
        0%,100% { transform:translate3d(0,0,0) scale(.76) rotate(-5deg); opacity:.16; }
        22% { transform:translate3d(calc(var(--smoke-mid-x) * .48),calc(var(--smoke-mid-y) * .48),0) scale(1.00) rotate(5deg); opacity:.48; }
        40% { transform:translate3d(var(--smoke-mid-x),var(--smoke-mid-y),0) scale(1.20) rotate(15deg); opacity:.70; }
        57% { transform:translate3d(var(--smoke-end-x),var(--smoke-end-y),0) scale(1.28) rotate(-10deg); opacity:.38; }
        73% { transform:translate3d(var(--smoke-mid-x),var(--smoke-mid-y),0) scale(1.08) rotate(18deg); opacity:.72; }
        88% { transform:translate3d(var(--smoke-back-x),var(--smoke-back-y),0) scale(.90) rotate(-12deg); opacity:.46; }
    }
    @keyframes dxOrbContinents { 0%,100%{transform:translate3d(-2px,0,0) rotate(-4deg) scale(.98);opacity:.24} 24%{transform:translate3d(3px,-2px,0) rotate(9deg) scale(1.05);opacity:.62} 44%{transform:translate3d(0,3px,0) rotate(18deg) scale(.97);opacity:.30} 58%{transform:translate3d(-2px,-1px,0) rotate(26deg) scale(1.07);opacity:.72} 72%{transform:translate3d(2px,2px,0) rotate(33deg) scale(1);opacity:.34} }
    @keyframes dxOrbGlassSheen {
        0%,100% { transform:translate(-68%,-50%) rotate(-28deg); opacity:.20; }
        18% { opacity:.48; }
        42% { transform:translate(8%,-50%) rotate(-28deg); opacity:.64; }
        58% { opacity:.24; }
        76% { transform:translate(74%,-50%) rotate(-28deg); opacity:.46; }
    }
    @keyframes dxOrbStatusPulse { 0%,100%{transform:scale(1);opacity:.8} 50%{transform:scale(1.18);opacity:1} }
    @keyframes dxOrbCoreWake { 0%{transform:scale(.92);filter:brightness(.72)} 42%{transform:scale(1.05);filter:brightness(1.35)} 100%{transform:scale(1);filter:brightness(1)} }

    @media (prefers-reduced-motion:reduce) {
        .mobile-explorer-orb::before,.mobile-explorer-orb::after,.explorer-orb-core,.explorer-orb-smoke,.explorer-orb-continent,.explorer-orb-status-dot { animation:none !important; }
    }
}
