:root {
    --light-mode-bg-color: white;
    --dark-mode-bg-color: rgb(30, 30, 30);
    --light-mode-text-color: black;
    --dark-mode-text-color: rgb(230, 230, 230);
    --box-shadow-spread: 5px;
    --light-mode-box-shadow: rgba(0, 0, 0, 0.4);
    --dark-mode-box-shadow: rgba(150, 150, 150, 0.4);
    --light-mode-bg-select: rgb(200, 200, 200);
    --dark-mode-bg-select: rgb(60, 60, 60);
    --light-mode-link-color: rgb(29, 30, 234);
    --dark-mode-link-color: rgb(65, 65, 245);
    --scrollbar-track-color: gray;
    --scrollbar-thumb-color: lightgray;
    --frame-border-radius: 20px;
}

* {
    box-sizing: border-box;
}

html {
    height:100%;
    font-family: 'Barlow','OpenSans Condensed','Segoe UI Mod';
}

body {
    overscroll-behavior: none;
}

body, #map, select {
    margin:0;
    height: 100%;
    font-family: 'Barlow','OpenSans Condensed','Segoe UI Mod';
}

body[data-theme="dark"], [data-theme="dark"] #map {
    background-color: rgb(10, 10, 10);
}

input {
    accent-color: #3278fb;
}

img {
    -webkit-user-drag: none;
}

span.material-symbols-outlined {
    vertical-align: -7%;
}

.leaflet-tooltip {
    font-weight: bolder;
    font-size:14px;
    transition: opacity 0.3s;
}

[data-theme="dark"] .leaflet-tooltip {
    background-color: var(--dark-mode-bg-color);
    color: var(--dark-mode-text-color);
    border: 1px solid var(--dark-mode-bg-color);
}

[data-theme="dark"] .leaflet-tooltip-right::before {
    border-right-color: var(--dark-mode-bg-color);
}

[data-theme="dark"] .leaflet-tooltip-left::before {
    border-left-color: var(--dark-mode-bg-color);
}

[data-theme="dark"]:not([data-selected-map="sat"]) .leaflet-tile-pane {
    filter: invert(1) hue-rotate(180deg);
}

.leaflet-right .leaflet-control {
    margin-right: 10px;
}

[data-theme="dark"] .leaflet-right .leaflet-control {
    background-color: var(--dark-mode-bg-color);
    color: var(--dark-mode-text-color);
}

.leaflet-control-attribution {
    -webkit-user-select: none;
    user-select: none;
}

[data-theme="dark"] :is(.leaflet-control-zoom-in, .leaflet-control-zoom-out) {
    background-color: var(--dark-mode-bg-color);
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] :is(.leaflet-control-zoom-in, .leaflet-control-zoom-out):hover {
    background-color: var(--dark-mode-bg-select);
    transition: background-color 0.2s;
}

.line-number-bubble-container {
    border: none;
    background-color: transparent;
}

.line-number-bubble {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.line-number-bubble.bubble-circle {
    border-radius: 100%;
    height: 100%;
    width: 100%;
}

.line-number-bubble.bubble-rect {
    border-radius: 3px;
    padding: 2px 5px;
}