html {
    position: relative;
    min-height: 100%;
}
body {
    /* Margin bottom by footer height */
    margin-bottom: 60px;
    background-color:#f5f5f5;
}
.footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    /* Set the fixed height of the footer here */
    height: 60px;
    line-height: 60px; /* Vertically center the text there */
}


/* Custom page CSS
-------------------------------------------------- */
/* Not required for template or sticky footer method. */

body > .container {
    padding: 60px 15px 100px;
}

.footer > .container {
    padding-right: 15px;
    padding-left: 15px;
}

code {
    font-size: 80%;
}

.logo {
    padding-right: 10px;
}

.hidden {
    display: none;
}

.flex {
    display: flex;
}

.spinner {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 300px;
    height: 300px;
}

.spinner-sector {
    border-radius: 50%;
    position: absolute;
    width: 100%;
    height: 100%;
    border: 15px solid transparent;
    mix-blend-mode: overlay;
}

.spinner-text {
    animation: loading-opacity 3s ease-in-out infinite;
    font-size: 2em;
}

.spinner-sector-green {
    animation: rotate 1.5s ease-in-out infinite;
    border-top: 15px solid lightgreen;
}

@keyframes rotate {
    from { transform: rotate(0); }
    to { transform: rotate(360deg); }
}

@keyframes loading-opacity {
    0%, 100% {
        opacity: 1;
    }
    25%, 75% {
        opacity: .5;
    }
    50% {
        opacity: .1;
    }
}

#container {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}

.categories-chart{
    padding-top: 60px;
}

.select-category {
    width: 300px;
}


.mobile-hide {
    display: flex;
}

@media screen and (max-width: 768px) {
    .mobile-hide {
      display: none;
    }
}

#loading {
  box-sizing: border-box;
  font: 20px 'Helvetica';
  text-transform: uppercase;
  position: relative;
  max-width: 300px;
  margin: auto;
  /* display: none; */
}
