﻿@import url(../main.css);

.input-container {
    position: relative;
    padding: 2.5px 0;
}

.input-container > label {
    transition: all 0.25s cubic-bezier(.53,.01,.35,1.5);
    transform-origin: left center;
    color: hsl( var(--clr-dark),1);
    box-sizing: border-box;
    padding: 15px 15px;
    display: block;
    position: absolute;
    margin-top: -40px;
    font-size: var(--fs-300);
    z-index: 2;
    pointer-events: none;
}

@media (min-width: 45em) {
    .input-container > label {
        padding: 10px 15px;
    }
}

input:valid {
    margin-top: 20px;
}

input[type="text"] {
    transition: all 0.25s cubic-bezier(.53,.01,.35,1.5);
    appearance: none;
    background-color: none;
    border: 1px solid hsl( var(--clr-ambient),1);
    line-height: 0;
    width: 100%;
    display: block;
    box-sizing: border-box;
    padding: 10px 15px;
    border-radius: 15px;
    color: hsl( var(--clr-dark),1);
    font-size: var(--fs-300);
    font-weight: 300;
    letter-spacing: 0.01em;
    position: relative;
    z-index: 1;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}

input[type="text"]:focus {
    outline: none;
    margin-top: 20px;
}

input[type="text"]:focus ~ label {
    transform: translateY(-30px);
    transition: transform 100ms ease-in-out;
    font-size: var(--fs-200);
}

input[type="text"]:valid ~ label {
    transform: translateY(-30px);
    transition: transform 100ms ease-in-out;
    font-size: var(--fs-200);
}

input[type="number"] {
    transition: all 0.25s cubic-bezier(.53,.01,.35,1.5);
    appearance: none;
    background-color: none;
    border: 1px solid hsl( var(--clr-ambient),1);
    line-height: 0;
    font-size: var(--fs-300);
    width: 100%;
    display: block;
    box-sizing: border-box;
    padding: 10px 15px;
    border-radius: 15px;
    color: hsl( var(--clr-dark),1);
    font-weight: 300;
    letter-spacing: 0.01em;
    position: relative;
    z-index: 1;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}

input[type="number"]:focus {
    outline: none;
    margin-top: 20px;
}

input[type="number"]:focus ~ label {
    transform: translateY(-30px);
    transition: transform 100ms ease-in-out;
    font-size: var(--fs-200);
}

input[type="number"]:valid ~ label {
    transform: translateY(-30px);
    transition: transform 100ms ease-in-out;
    font-size: var(--fs-200);
}

input[type="password"] {
    transition: all 0.25s cubic-bezier(.53,.01,.35,1.5);
    appearance: none;
    background-color: none;
    border: 1px solid hsl( var(--clr-ambient),1);
    line-height: 0;
    font-size: var(--fs-300);
    width: 100%;
    display: block;
    box-sizing: border-box;
    padding: 10px 15px;
    border-radius: 15px;
    color: hsl( var(--clr-dark),1);
    font-weight: 300;
    letter-spacing: 0.01em;
    position: relative;
    z-index: 1;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}

input[type="password"]:focus {
    outline: none;
    margin-top: 20px;
}

input[type="password"]:focus ~ label {
    transform: translateY(-30px);
    transition: transform 100ms ease-in-out;
    font-size: var(--fs-200);
}

input[type="password"]:valid ~ label {
    transform: translateY(-30px);
    transition: transform 100ms ease-in-out;
    font-size: var(--fs-200);
}

input[type="date"] {
    appearance: none;
    background-color: none;
    border: 1px solid hsl( var(--clr-ambient),1);
    width: 100%;
    display: block;
    box-sizing: border-box;
    padding: 5px 15px;
    border-radius: 15px;
    color: hsl( var(--clr-dark),1);
    letter-spacing: 0.01em;
    position: relative;
    z-index: 1;
    margin-top: 0.75rem;
    font-size: var(--fs-300);
    font-weight: 300;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}

input[type="date"] ~ label {
    color: hsl( var(--clr-dark),1);
    box-sizing: border-box;
    display: block;
    position: absolute;
    z-index: 2;
    pointer-events: none;
    transform: translateY(-30px);
    font-size: var(--fs-200);
}

input[type="search"] {
    transition: all 0.25s cubic-bezier(.53,.01,.35,1.5);
    appearance: none;
    background-color: none;
    border: 1px solid hsl( var(--clr-ambient),1);
    line-height: 0;
    font-size: var(--fs-200);
    width: 100%;
    display: block;
    box-sizing: border-box;
    padding: 10px 15px;
    border-radius: 15px;
    color: hsl( var(--clr-dark),1);
    font-weight: 300;
    letter-spacing: 0.01em;
    position: relative;
    z-index: 1;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}

input[type="search"]:focus {
    outline: none;
    margin-top: 20px;
}

input[type="search"]:focus ~ label {
    transform: translateY(-30px);
    transition: transform 100ms ease-in-out;
    font-size: var(--fs-200);
}

input[type="search"]:valid ~ label {
    transform: translateY(-30px);
    transition: transform 100ms ease-in-out;
    font-size: var(--fs-200);
}
