body {
    background-color: rgb(143, 188, 143, 0.2);
}

tr.htmx-swapping td {
    opacity: 0;
    transition: opacity 1s ease-out;
}

.htmx-indicator{
    display: none;
}
.htmx-request .htmx-indicator{
    display: inline;
}
.htmx-request.htmx-indicator{
    display: inline;
}

.icon {
    display: inline-block;
    overflow: hidden;
    filter: invert(1);
}

.icon > img {
    position: relative;
    height: 1rem;
}

label:has(+ input:required):after {
    content: ' *';
    color: #dc3545;
}

label:has(+ div > input:required):after {
    content: ' *';
    color: #dc3545;
}

label:has(+ select:required):after {
    content: ' *';
    color: #dc3545;
}

label:has(+ div > select:required):after {
    content: ' *';
    color: #dc3545;
}

.lucide {
    width: 1em;
    height: 1em;
}

.lucide-big {
    width: 1.15em;
    height: 1.15em;
}