@import url('https://fonts.googleapis.com/css2?family=Rubik:ital,wght@0,500;1,500&display=swap');

.rubik {
    font-family: "Rubik";
    color: white;
}

body {
    background-color: #3f4552;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 100vh;
}

.osnova {
    background: #323741;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    height: auto;
    box-sizing: border-box;
    gap: 2rem;
    transition: background 0.2s linear;
}
@media (min-width: 320px) {
    .osnova {
        width: 89%;
        border-radius: 19px / 15px;
        box-shadow: 0px 0px 40px -9px black;
        margin-bottom: 2rem;
        padding: 1rem;
    }
}
@media (min-width: 992px) {
    .osnova {
        width: 89%;
        min-height: 11em;
        border-radius: 25px;
        box-shadow: 0px 0px 75px -12.5px black;
    }
}
@media (min-width: 1920px) {
    .osnova {
        border-radius: 35px;
        box-shadow: 0px 0px 100px -20.5px black;
        margin-bottom: 3rem;
    }
}
@media (min-width: 2560px) {
    .osnova {
        border-radius: 50px;
        box-shadow: 0px 0px 100px -20.5px black;
    }
}

.os_txt {
    text-align: center;
}
@media (min-width: 320px) {
    .os_txt {
        font-size: 22px;
    }
}
@media (min-width: 992px) {
    .os_txt {
        font-size: 30px;
    }
}

.convert {
    display: flex;
    gap: 1rem;
}
@media (min-width: 320px) {
    .convert {
        flex-direction: column;
    }
}
@media (min-width: 992px) {
    .convert {
        flex-direction: row;
    }
}

input {
    border: none;
    text-align: center;

}
@media (min-width: 320px) {
    input {
        border-radius: 20px;
        height: 2.9em;
        font-size: 12px;
    }
}
@media (min-width: 992px) {
    input {
        height: 2.5em;
        font-size: 18px;
    }
}
@media (min-width: 1920px) {
    input {
        border-radius: 30px;
        font-size: 20px;
    }
}
@media (min-width: 2560px) {
    input {
        border-radius: 40px;
        height: 2.5em;
        font-size: 25px;
    }
}

footer {
    background-color: #323741;
    width: 100%;
    box-sizing: border-box;
    margin-top: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    align-self: flex-end;
    transition: background 0.2s linear;
}
@media (min-width: 320px) {
    footer {
        padding: 0 1rem 0 1rem;
        height: 5rem;
        box-shadow: 0px 0px 20px -5px black;
    }
}
@media (min-width: 992px) {
    footer {
        height: 4rem;
        padding: 0.5rem;
    }
}
@media (min-width: 1920px) {
    footer {
        box-shadow: 0px 0px 35px -9px black;
    }
}
@media (min-width: 2560px) {
    footer {
        box-shadow: 0px 0px 35px -9px black;
    }
}

footer > a {
    margin-top: 0.4rem;
}

.f_txt {
    font-family: "Rubik";
    color: #d6d6d6;
}
@media (min-width: 320px) {
    .f_txt {
        font-size: 12px;
    }
}
@media (min-width: 992px) {
    .f_txt {
        font-size: 15px;
    }
}

.f-tg, .f-yt {
    background: #2c303a;
    transition: background 0.3s linear;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media (min-width: 320px) {
    .f-tg, .f-yt {
        border-radius: 10px;
        box-shadow: 0px 0px 10px -2px black;
        width: 2.5em;
        height: 2.5em;
        margin: 0.5em;
    }
}
@media (min-width: 1920px) {
    .f-tg, .f-yt {
        border-radius: 12px;
        box-shadow: 0px 0px 17px -3px black;
        margin: 0.8em;
    }
}
@media (min-width: 2560px) {
    .f-tg, .f-yt {
        border-radius: 14px;
        box-shadow: 0px 0px 17px -3px black;
        margin: 1em;
    }
}

@media (min-width: 320px) {
    .f-img {
        width: 1.2em;
        height: 1.2em;
    }
}

a:link {
    text-decoration: none;
    color: white;
}
a:hover {
    color: #ffffff;
}
a:active {
    color: #ffffff;
}
a:visited {
    color: #ffffff;
}
.f-tg:hover {
    background: #0088cc;
}
.f-yt:hover {
    background: red;
}