:root {
    /*
    Ratio: calc(9/16) = 0.5625;
    REF WIDTH: 1280px;
    Narbar Height: 36px;
    */
    --frameWidth: calc(min(97.5lvw, calc(95.55vh / 0.5625)));
    --frameHeight: calc(var(--frameWidth) * 0.5625);
    --frameScale: calc( var(--frameWidth) / 1280 );
}

body {
    margin: 0px;
    padding: 0px;
    background-color: #111;
    font-weight: 400;
    font-family: "Google Sans",Roboto,RobotoDraft,Helvetica,Arial,sans-serif;
    color: #ddd;
    overflow: hidden;
}
img {
    padding: 0;
    margin: 0;
}
div {
    padding: 0;
    margin: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
sup {
    font-size: smaller;
    vertical-align:baseline;
}
span {
    font-size: small;
    padding: 0;
    margin: 0;
}
.bodycontainer {
    position: absolute;
    margin: 0px;
    padding: 0px;
    width: var(--frameWidth);
    height: var(--frameHeight);
    /*
    top: calc( (100lvh - var(--frameHeight) ) / 2 );
    left: calc( (100lvw - var(--frameWidth) ) / 2 );
    */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-image: url("background.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;    
}
.framecontent {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.dias-frame {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: calc(100% + 38px);
    z-index: 1;
    border: none;
}
.textoverlay {
    position: absolute;
    z-index: 100;
    left: 2%;
    width: 96%;
    top: 2.5%;
    height: 95%;
    font-size: calc(var(--frameWidth) * 0.01);
}
.header {
    position: absolute;
    width: 100%;
    height: 7%;
    left: 0px;
    top: 1%;
    z-index: 900;
}
.header div {
    position: absolute;
    width: 50%;
    right: 0px;
    text-align: right;
    z-index: 1000;
}
.time_label {
    top: 0px;
    font-size: 2em;
}
.date_label {
    bottom: 0px;
    font-size: 1.2em;
}
.weather_icon {
    position: absolute;
    z-index: 1000;
    width: 7%; /* calc(4rem);*/
    top: 91%;
    left: 0px;
}
.footer {
    position: absolute;
    width: 100%;
    height: 5%;
    left: 0px;
    top: 96%;
    z-index: 1000;
}
.footer div {
    position: absolute;
    z-index: 1000;
}
.weather_temp {
    width: 9%;
    left: 7%;
    top: 0px;
    text-align: center;
    font-size: 1.75em;
}
.weather_feel {
    /*
    width: calc(5rem);
    left: calc(4rem);
    top: calc(1rem);
    */
    width: 9%;
    left: 7%;
    bottom: 0px;
    text-align: center;
    font-size: 1em;
    overflow: visible;
}
.weather_cond, .weather_text {
    width: 84%;
    right: 0px;
    bottom: 10%;
}
.weather_cond {
    text-align: left;
    font-size: 1.75em;
}
.weather_text {
    text-align: right;
    font-size: 1.45em;
}