/* ==========================================================================
   JAKARTA SIAGA 112 - ACCESSIBILITY & HIGH CONTRAST (WCAG 2.1)
   ========================================================================== */

/* Font Size Modifiers */
body.font-size-sm {
    font-size: 0.9rem !important;
}

body.font-size-md {
    font-size: 1rem !important;
}

body.font-size-lg {
    font-size: 1.15rem !important;
}

body.font-size-xl {
    font-size: 1.3rem !important;
}

/* High Contrast Mode Override */
body.high-contrast {
    background-color: #000000 !important;
    color: #ffffff !important;
}

body.high-contrast .navbar-siaga,
body.high-contrast .top-announcement-bar,
body.high-contrast footer {
    background-color: #000000 !important;
    border-color: #ffff00 !important;
}

body.high-contrast a,
body.high-contrast .nav-link,
body.high-contrast h1,
body.high-contrast h2,
body.high-contrast h3,
body.high-contrast h4,
body.high-contrast h5,
body.high-contrast h6 {
    color: #ffff00 !important;
}

body.high-contrast .card,
body.high-contrast .service-card,
body.high-contrast .workflow-step-card,
body.high-contrast .modal-content {
    background-color: #121212 !important;
    color: #ffffff !important;
    border: 2px solid #ffff00 !important;
}

body.high-contrast .btn-primary,
body.high-contrast .btn-danger,
body.high-contrast .btn-warning,
body.high-contrast .btn-info,
body.high-contrast .btn-success {
    background-color: #ffff00 !important;
    color: #000000 !important;
    font-weight: bold !important;
    border: 2px solid #ffffff !important;
}

body.high-contrast .badge {
    background-color: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #ffff00 !important;
}

body.high-contrast .fab-emergency-112 {
    background: #ffff00 !important;
    color: #000000 !important;
    border: 3px solid #ffffff !important;
    font-weight: 900 !important;
}

/* Accessibility Focus Indicator */
:focus-visible {
    outline: 3px solid #38bdf8 !important;
    outline-offset: 3px !important;
}
