@font-face {
    font-family: "SFPro";
    src: url("fonts/SF-Pro.ttf") format("truetype");
}

@font-face {
    font-family: "SFCompactRoundedBold";
    src: url("fonts/SF-Compact-Rounded-Bold.otf") format("opentype");
}

* {
    margin: 0;
    padding: 0;
    -webkit-user-drag: none;
    -webkit-tap-highlight-color: transparent;
    font-family: -apple-system, BlinkMacSystemFont, "SFPro", "Helvetica Neue", sans-serif;
}

*::-webkit-scrollbar {
    opacity: 0;
    display: none;
    background: transparent;
}

:root {
    --conic-gradient: conic-gradient(from 180deg at 50% 50%, #8A15E7 0deg, #D91A76 93.75deg, #CC11F0 181.87deg, #D91A76 303.75deg, #8A15E7 360deg);
    --button-gradient: conic-gradient(from 0deg at 50% 50%, #CC11F0 0deg, #8A15E7 80deg, #D91A76 220deg, #CC11F0 360deg);
    --default-easing: cubic-bezier(0, 0.55, 0.45, 1);
}

*:not(input, textarea) {
    -webkit-user-select: none;
}

img {
    pointer-events: none;
}

#scrollable-area {
    top: 0;
    left: 0;
    z-index: 0;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    position: absolute;
    transition: filter .3s;
    overscroll-behavior-y: none;
}

html, body {
    height: 100vh;
    overflow: hidden;
    overscroll-behavior-y: none;
}

#scrollable-area.dimmed {
    filter: blur(20px);
    background: rgba(0, 0, 0, .05);
}

#scrollable-area #satellite-map {
    width: 100vw;
    position: relative;
    overflow: hidden;
    height: calc(100vh + 60px);
}

#modular-content {
    opacity: 0;
}