:root {
    --naqa-green: #7ddf4f;
    --naqa-green-dark: #58b934;
    --naqa-navy: #24477f;
    --naqa-navy-dark: #19345f;
    --naqa-surface: #eaf5f1;
    --naqa-surface-soft: #f5faf8;
    --naqa-border: #cfe1da;
    --naqa-text: #18304f;
}

body { background-color: var(--naqa-surface-soft); color: var(--naqa-text); }
a, .text-primary { color: var(--naqa-navy) !important; }
a:hover { color: var(--naqa-green-dark) !important; }
.btn-primary, .naq-btn {
    background: var(--naqa-navy) !important;
    border-color: var(--naqa-navy) !important;
    color: #fff !important;
}
.btn-primary:hover, .btn-primary:focus, .naq-btn:hover, .naq-btn:focus {
    background: var(--naqa-navy-dark) !important;
    border-color: var(--naqa-navy-dark) !important;
}
.btn-outline-primary { color: var(--naqa-navy); border-color: var(--naqa-navy); }
.btn-outline-primary:hover { color: #fff; background: var(--naqa-navy); border-color: var(--naqa-navy); }
.form-control:focus, .form-select:focus, .form-check-input:focus {
    border-color: var(--naqa-green-dark);
    box-shadow: 0 0 0 .2rem rgba(125, 223, 79, .18);
}
.form-check-input:checked { background-color: var(--naqa-green-dark); border-color: var(--naqa-green-dark); }
.menu-vertical .menu-item.active > .menu-link { background: rgba(125, 223, 79, .18) !important; color: var(--naqa-navy) !important; }
.layout-navbar, .layout-menu, .card { border-color: var(--naqa-border); }
.naqa-brand-image { max-width: 100%; max-height: 56px; object-fit: contain; }
.naqa-brand-lockup { display: block; width: min(220px, 100%); height: auto; }
.naqa-floating-collection {
    inset-inline-end: 1.25rem;
    bottom: 1.25rem;
    z-index: 1035;
    border-radius: 2rem;
    box-shadow: 0 .5rem 1.5rem rgba(36, 71, 127, .28) !important;
}
.naqa-floating-collection:focus-visible { outline: 3px solid var(--naqa-green); outline-offset: 3px; }
.naqa-floating-register {
    inset-inline-end: 1.5rem;
    top: 62%;
    bottom: auto;
    z-index: 1035;
    min-height: 64px;
    padding: .9rem 1.4rem;
    border: 3px solid var(--naqa-navy);
    border-radius: 2rem;
    background: var(--naqa-green);
    color: var(--naqa-navy) !important;
    font-size: 1.15rem;
    font-weight: 800;
    box-shadow: 0 .75rem 2rem rgba(36, 71, 127, .3) !important;
}
.naqa-floating-register:hover,
.naqa-floating-register:focus {
    background: #91e96a;
    color: var(--naqa-navy-dark) !important;
    transform: translateY(-2px);
}
.naqa-floating-register:focus-visible { outline: 4px solid #fff; outline-offset: 3px; }
.naqa-floating-register .ti { font-size: 1.6rem; }
@media (max-width: 575.98px) {
    .naqa-floating-collection {
        inset-inline-end: .75rem;
        bottom: 4.5rem;
        width: 56px;
        height: 56px;
        padding: 0;
        border-radius: 50%;
        justify-content: center;
    }
    .naqa-floating-register {
        inset-inline: .75rem;
        top: auto;
        bottom: .75rem;
        width: calc(100% - 1.5rem);
        min-height: 68px;
        border-radius: 1.25rem;
        font-size: 1.2rem;
    }
}
