:root {
    --brand-color: #43982c;
    --brand-hover: #357a22;
}

body {
    font-family: 'Inter', sans-serif;
}

.custom-input {
    padding: 12px 16px;
    border-radius: 8px;
    font-size: 15px;
    transition: all 0.2s ease-in-out;
}

.custom-input::placeholder {
    color: var(--bs-secondary-color) !important;
    opacity: 0.7;
}

.custom-input:hover {
    border-color: #a1a1aa;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04); 
}

.custom-input:focus {
    border-color: var(--brand-color);
    box-shadow: 0 0 0 3px rgba(67, 152, 44, 0.15);
}

.custom-input-group .input-group-text {
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    padding: 12px 16px 12px 12px; 
    transition: all 0.2s ease-in-out;
}

.custom-input-group .custom-input {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.custom-input-group:hover .custom-input,
.custom-input-group:hover .input-group-text {
    border-color: #a1a1aa;
}

.custom-input-group:hover {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04);
    border-radius: 8px;
}
.custom-input-group:hover .custom-input {
    box-shadow: none;
}

.custom-input-group:focus-within .custom-input,
.custom-input-group:focus-within .input-group-text {
    border-color: var(--brand-color);
}

.custom-input-group:focus-within {
    box-shadow: 0 0 0 3px rgba(67, 152, 44, 0.15);
    border-radius: 8px;
}
.custom-input-group .custom-input:focus {
    box-shadow: none; 
}

#togglePassword {
    display: flex;
    align-items: center;
    justify-content: center;
}
#togglePassword .material-symbols-outlined {
    line-height: 1;
}

.custom-checkbox, 
.form-check-label {
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

.form-check:hover .custom-checkbox {
    border-color: var(--brand-color);
}

.form-check:hover .form-check-label {
    color: var(--brand-color) !important;
}

.custom-checkbox:checked {
    background-color: var(--brand-color);
    border-color: var(--brand-color);
}

.btn-custom {
    background-color: var(--brand-color);
    color: white;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.btn-custom:hover {
    background-color: var(--brand-hover);
    color: white;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(67, 152, 44, 0.2);
}

.text-custom {
    color: var(--brand-color);
}

.custom-link:hover {
    text-decoration: underline !important;
    color: var(--brand-hover) !important;
}

.object-fit-cover {
    object-fit: cover;
}