:root {
    font-size: 15px;
}
  
.error-message {
    font-size: 0.8rem;
    color: var(--pico-del-color);
}
.valid-message {
    font-size: 0.8rem;
    color: green;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
}

.dropdown {
    list-style: none;
    margin: 0;
    padding: 0;
    border-radius: 5px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.dropdown li {
    padding: 8px 12px;
    cursor: pointer;
}

.dropdown li:hover {
    background-color: #f0f0f0;
}

.grid-button {
    display: grid;
    grid-template-columns: 1fr 1fr auto; 
    gap: 1rem;
}

.grid-button input {
    width: 100%;
}

.grid-button button {
    white-space: nowrap;
}

table, th, td {
    border: 1px solid #cfd5e2;
    border-radius: 0.25rem;
}

hr {
    border-color: black !important;
}

label.required::after {
    content: " *";
    color: red;
}
