body {
    font-family: sans - serif;
    color: #fff;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border - box;
 }
::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}
::-webkit-scrollbar-track {
    background: #2d2733;

}
::-webkit-scrollbar-thumb {
    background: #555;

}
::-webkit-scrollbar-thumb:hover {
    background:#dcbfff;

}
.world-map{
    position: absolute;
    top: 0;
    left: 0;
    width: max-content;
    height: max-content;
    min-height: 30 em;
    background-color: #151218;
    display: flex;
    justify-content: center;
    align-items: center;

}
svg {
   width: 100vw;
    height: 100vh;

}
/* hovering part */
path {
    fill: #443d4b;
    stroke: #dcbfff;
    transition: 100ms;
}
path:hover { 
    fill: #c99aff;
}
.side-panel {

    position: fixed;
    background-color:#1d1a20;
    padding: 2em;
    top: 0;
    left: -30em;
    width: 100%;
    max-width: 30em;
    height: 100vh;
    transition: 
    600ms cubic-bezier(0.77, 0, 0.18,1);
    overflow: scroll;
    z-index: 1;

}


.side-panel.container {
    padding-block: 2em;
}
.side-panel-open {left: 0;}
.hide {opacity: 0;}
.close-btn{
    position: absolute;
    top: 0;
    right: 0;
    width: 5em;
    border: none;
    background-color: #443d4b;
    color: #fff;
    transition:100ms ;
    cursor: pointer;

}
.loading {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
    user-select: none;
    transition: 200ms;
}
.close-btn i {
     font-size: 2em;
}.close-btn:hover {
    background-color: #c99aff;
}
.country-flag {
    width: 60%;
    max-width: 20em;
    margin-block: 1em;
}
.side-panel .container > ul {
    margin-top: 2em;
    list-style: none;
}
.side-panel.container > ul > li {
    margin-bottom: 2em;
    
}
.side-panel li { 
 margin-bottom: 1em;
 font-size: 1.2em;
}
.side-panel ul ul {
 margin-bottom: 1em;
  font-size: 0.7em;
  list-style: circle;
  padding-left: 2em;

}
.side-panel strong {
    color: #dcbfff;
}
.zoom-controls {
    position: fixed;
    top: 1em;
    right: 1em;

}
.zoom-controls button {
    display: block;
    width: 1.5em;
    height: 1.5em;
    font-size: 2em;
    background-color: #443d4b;
    color: #fff;
    border: 1px solid #dcbfff;
    cursor: pointer;

}
.zoom-controls button:hover {
    background-color: #2e2a33;

}
button:disabled {
background-color: #1d1a20;
border: 1px #443d4b solid;
cursor: default;
color: #333;
}
.zoom-out {
    margin-bottom: 10px;
}


