/*
*           Input
*/
.input-group {
    position: relative;
}

.input-group input {
    padding: 11px;
    width: 250px;
    border: 1px solid var(--color-outline);
    background-color: var(--color-surface-container-low);
    color: var(--color-on-surface);
    border-radius: var(--input-border-radius);
}

.input-group:focus-within input {
    outline: none;
    padding: 10px;
    border-width: 2px;
    border-color: var(--color-primary);
}

.input-group label {
    user-select: none;
    cursor: text;
    position: absolute;
    top: calc(50% - 10px);
    left: 10px;
    color: var(--color-outline);
    transition: all 0.2s ease;
}

.input-group:focus-within label, .input-group input:not(:placeholder-shown) + label {
    top: -8px;
    padding: 0 6px;
    border-radius: 3px;
    background-color: var(--color-surface-container-low);
    color: var(--color-primary);
    font-size: 0.85rem;
}

.input-group input.error {
    padding: 10px;
    border: 2px solid var(--color-error);
}

.input-group input.error + label {
    color: var(--color-error);
}

.input-group-with-description .input-group-description {
    margin-top: 12px;
}

/*
*           Textarea
*/
.textarea-group {
    position: relative;
}

.textarea-group textarea {
    padding: 11px;
    width: 250px;
    max-width: 250px;
    min-width: 250px;
    min-height: 60px;
    border: 1px solid var(--color-outline);
    background-color: var(--color-surface-container-low);
    color: var(--color-on-surface);
    border-radius: var(--input-border-radius);
}

.textarea-group:focus-within textarea {
    outline: none;
    padding: 10px;
    border-width: 2px;
    border-color: var(--color-primary);
}

.textarea-group label {
    user-select: none;
    cursor: text;
    position: absolute;
    top: 10px;
    left: 10px;
    color: var(--color-outline);
    transition: all 0.2s ease;
}

.textarea-group:focus-within label, .textarea-group textarea:not(:placeholder-shown) + label {
    top: -8px;
    padding: 0 6px;
    border-radius: 3px;
    background-color: var(--color-surface-container-low);
    color: var(--color-primary);
    font-size: 0.85rem;
}

.textarea-group textarea.error {
    padding: 10px;
    border: 2px solid var(--color-error);
}

.textarea-group textarea.error + label {
    color: var(--color-error);
}