/* Grid System */
.row {
    display: flex;
    flex-wrap: wrap;
}

.col-12 {
    flex: 0 0 100%;
    max-width: 100%;
    padding-right: 15px;
    padding-left: 15px;
}

.col-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
    padding-right: 15px;
    padding-left: 15px;
}

.col-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
    padding-right: 15px;
    padding-left: 15px;
}

/* MD media queries */
@media (min-width: 768px) {
    .col-md-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
        padding-right: 15px;
        padding-left: 15px;
    }

    .col-md-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
        padding-right: 15px;
        padding-left: 15px;
    }
}

/* Navigation Styles */
.nav {
    list-style: none;
    padding: 0;
    margin: 0;
}

.nav > li {
    display: block;
}

.nav-tabs {
    border-bottom: 1px solid #ddd;
}

.nav-tabs > li > a {
    display: block;
    padding: 10px 15px;
    text-decoration: none;
    border: 1px solid transparent;
    border-radius: 4px 4px 0 0;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
    color: #555;
    background-color: #fff;
    border: 1px solid #ddd;
    border-bottom-color: transparent;
    cursor: default;
}

/* Mobile: Display nav items as inline-block */
@media (max-width: 767px) {
    .nav > li {
        display: inline-block;
    }
}


fieldset {
    background: #dfedf3;
    border-width: 1px;
    padding: 50px 13px 13px 13px;
    border-radius: 3px;
}

legend {
    padding: 12px 0px;
    margin-top: 10px;
    position: absolute;
    top: 10px;
    border:none !important;
    width: auto;
}

#autocomplete {
    margin: -21px 0 0;
    width:400px;
    position:absolute;
    z-index: 1000;

}
.autocomplete {
    box-shadow:4px 4px 4px rgba(0,0,0,0.2);
}
.autocomplete li {
    border-bottom:1px solid #ccc;
    background:#fafafa;
    padding:5px 10px;
    list-style:none;
}
.autocomplete li.highlighted {
    background:#dfedf3;
    cursor: pointer;
}
#autocomplete a {
display:block;
}

/* Password field icons */
.password-field-wrapper {
    position: relative;
    display: inline-block;
    width: 100%;
}

.password-field-wrapper input[type="password"],
.password-field-wrapper input[type="text"] {
    padding-right: 70px;
}

.password-field-icons {
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    gap: 5px;
}

.password-icon-btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 5px;
    font-size: 16px;
    color: #666;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    opacity: 0.7;
    transition: opacity 0.2s;
}

.password-icon-btn:hover {
    opacity: 1;
}

.password-icon-btn:active {
    opacity: 0.5;
}

.password-icon-btn svg {
    width: 16px;
    height: 16px;
    fill: currentColor;
}