@import url('https://fonts.googleapis.com/css2?family=Noto+Sans&display=swap');

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
a,
input,
button,
textarea,
select {
    font-family: 'Noto Sans';
}

:root {
    --main-bg-color: #B81E28;
    --main-box-shadow: 0px 0px 10px 3px #0004;
    --main-font-dark-color: #333333;
}

html,
body {
    margin: 0;
    font-family: 'Noto Sans';
    width: 100%;
    height: 100%;
    background: #EEE;
}

input {
    outline: none;
}

#app {
    width: 100%;
    height: 100%;
}

.container {
    max-width: 100%;
    background: #FFF;
    height: 100%;
    overflow: hidden;
    padding: 0;
    display: flex;
    flex-direction: column;
}

.main {
    flex: auto;
    overflow-y: auto;
}

.flex {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.hide {
    display: none;
}

.header {
    width: 100%;
}

.banner {
    width: 100%;
    height: 300px;
}

.banner div {
    width: 100%;
    height: 300px;
}

.banner img {
    width: 100%;
    height: 300px;
}

.top_bar {
    padding: 0 10px;
    justify-content: end;
    box-shadow: var(--main-box-shadow);
    background: var(--main-bg-color);
    color: #FFFFFF;
    height: 60px;
}

.top_bar .top_tab {
    padding: 10px 20px;
    border: 1px solid transparent;
    font-weight: bold;
    font-size: 1rem;
    border-radius: 4px;
}

.top_bar .top_tab:hover {
    border: 1px solid #CCC;
    cursor: pointer;
}

.top_bar .active {
    background: #FFF;
    color: #50503F;
}

.top_tab {
    cursor: pointer;
}

.auth_box {
    flex: auto;
    margin: 10px 20px;
}

.big_title {
    font-size: 2rem;
    font-weight: bold;
}

.medium_title {
    font-size: 1.2rem;
}

#logout_tab input {
    border: 0;
    background: transparent;
    font-weight: bold;
    font-size: 1rem;
    cursor: pointer;
}

.left_bar {
    width: 20%;
    border: 1px solid #000;
    border-radius: 8px;
    align-self: flex-start;
    margin: 20px;
    padding: 10px;
    height: 90%;
    box-shadow: 0px 0px 10px #0002;
}

.left_bar_line {
    width: 100%;
    height: 0;
    border: 1px solid #000;
}

.left_bar_item {
    padding: 10px;
    cursor: pointer;
}

.main_content {
    width: 100%;
    padding: 20px;
}

.footer {
    /*height: 100px;*/
    background: var(--main-bg-color);
    color: #FFF;
    width: 100%;
    box-shadow: var(--main-box-shadow);
}

.simple_table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #000;
    background: #FFFFFF;
}

.simple_table td,
.simple_table th {
    border: 1px solid #000;
    padding: 5px;
}

.simple_table th {
    background-color: #eeeeee;
}

.header_straight_line {
    margin: 0 10px;
    width: 0;
    height: 20px;
    border: 1px solid;
}

.header_option {
    font-weight: bold;
    font-size: 1rem;
    cursor: pointer;
}

.header_option input {
    background: transparent;
    border: 0;
}

.header_option:hover {
    text-decoration: underline;
}

.header_icon_div {
    flex: auto;
}

.small_logo{
    height: 30px;
}

.big_logo {
    height: 50px;
}

.ui-datepicker-current {
    display: none;
}

.ui-state-highlight {
    border: 1px solid #cccccc !important;
    background: #f6f6f6 url(images/ui-bg_glass_100_f6f6f6_1x400.png) 50% 50% repeat-x !important;
    font-weight: bold;
    color: #1c94c4 !important;
}

.ui-state-active{
    background: #ffe45c url(images/ui-bg_highlight-soft_75_ffe45c_1x100.png) 50% top repeat-x !important;
}

.ui-datepicker-header {
    background: var(--main-bg-color);
}

.weather_div,
.future_weather_div {
    flex: auto;
    font-weight: bold;
    font-size: 1rem;
}

.weather_div img,
.future_weather_div img {
    width: 30px;
}

.now_weather_div {
    padding: 5px 10px;
    justify-self: flex-start;
    border-radius: 4px;
    border: 1px solid transparent;
}

.now_weather_div div,
.future_weather_div div {
    margin-right: 10px;
    align-self: center;
}

.now_weather_div:hover {
    border: 1px solid #CCC;
    cursor: pointer;
}

.weather_div .active {
    border: 1px solid #CCC;
    background: rgba(0, 0, 0, 0.2);
    color: #FFF;
}

.weather_forcast_div {
    position: fixed;
    /*width: 410px;*/
    text-align: left;
    padding: 0 10px;
    border-radius: 0 0 8px 8px;
    background-color: #FFF;
    box-shadow: var(--main-box-shadow);
    margin-left: 20px;
    z-index: 100;
}

.future_weather_div {
    padding: 5px;
    border-bottom: 1px solid #000000;
}

.rwd_show {
    display: none;
}

.rwd_menu {
    font-size: 2rem;
    cursor: pointer;
}

.right_bar {
    right: 0;
    top: 0;
    position: fixed;
    z-index: 101;
    width: 250px;
    height: 100%;
    background: var(--main-bg-color);
    padding: 10px;
    color: #FFFFFF;
    display: none;
}

.hide_right_bar{
    font-size: 1.6rem;
    text-align: left;
    cursor: pointer;
    padding: 10px;
}

.right_bar .top_tab{
    padding: 15px 20px;
    border: 1px solid transparent;
    font-weight: bold;
    font-size: 1rem;
    border-radius: 4px;
    text-align: left;
    justify-content: left;
}

.right_bar_line{
    width: 100%;
    height: 0;
    border: 1px solid #FFF;
}

.right_bar_sub_line{
    /*margin: 0 20px;*/
    width: 100%;
    height: 0;
    border: 1px solid #333;
}

.right_bar .left_bar_item{
    padding-left: 20px;
    background: rgba(0, 0, 0, 0.2);
    border-radius: unset;
}

.loader {
    width: 50px;
    aspect-ratio: 1;
    border-radius: 50%;
    background:
        radial-gradient(farthest-side, var(--main-bg-color) 94%, #0000) top/8px 8px no-repeat,
        conic-gradient(#0000 30%, var(--main-bg-color));
    -webkit-mask: radial-gradient(farthest-side, #0000 calc(100% - 8px), #000 0);
    animation: l13 1s infinite linear;
}
@keyframes l13{ 
  100%{transform: rotate(1turn)}
}

@media screen and (max-width: 950px) {
    .top_bar .top_tab {
        font-size: 0.9rem;
    }

    .weather_div,
    .future_weather_div {
        font-size: 0.9rem;
    }
}

@media screen and (max-width: 850px) {
    .top_bar .top_tab {
        font-size: 0.8rem;
    }

}

@media screen and (max-width: 750px) {
    .small_logo {
        height: 25px;
    }

    .big_logo {
        height: 40px;
    }

    .rwd_hide {
        display: none;
    }

    .rwd_show {
        display: block;
    }

    .top_bar .top_tab {
        font-size: 0.8rem;
    }

    .left_bar_active{
        background: #FFF !important;
        color: #000 !important;
    }
}

@media screen and (max-width: 500px) {
    .small_logo {
        height: 20px;
    }

    .big_logo {
        height: 30px;
    }

    .top_bar{
        padding: 5px;
        height: 50px;
    }
}
