/* =========================================
   ACCESSIBILITY OVERRIDES
   ========================================= */

/* 
   Fix: Color Misuse
   Visual indicator for required fields 
*/
.dp-required-asterisk {
    color: #d4351c;
    font-weight: bold;
    margin-left: 0.25rem;
}

/* 
   Fix: High Contrast Mode 
   Ensure navbar toggler is visible when background images are disabled
*/
@media (forced-colors: active) {
    .custom-toggler .navbar-toggler-icon {
        background: none;
        border: 1px solid ButtonText;
        width: 1.5em;
        height: 1.5em;
    }

    .custom-toggler .navbar-toggler-icon:after {
        content: "≡";
        color: ButtonText;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        font-size: 1.5em;
    }

    /* Restore system default arrow for dropdowns */
    select.dp-input {
        appearance: auto !important;
        -webkit-appearance: auto !important;
        -moz-appearance: auto !important;
        background-image: none !important;
        background-color: Canvas !important;
        color: CanvasText !important;
        border: 1px solid ButtonText !important;
    }
}

/* 
   Fix: Viewport Units in Font Size
   Override Bootstrap fs-* classes to use rem/px instead of viewport units 
   to allow browser text resizing up to 200%
*/
.fs-1 {
    font-size: 2.5rem !important;
}

.fs-2 {
    font-size: 2rem !important;
}

.fs-3 {
    font-size: 1.75rem !important;
}

.fs-4 {
    font-size: 1.5rem !important;
}

.fs-5 {
    font-size: 1.25rem !important;
}

.fs-6 {
    font-size: 1rem !important;
}



/* 
   Fix: Skip Link Visibility & Focus
   Override inline styles and JS behavior to ensure skip link is visible on focus.
   Targeting strictly via header > a[href="#main-content"] based on master.njk structure.
*/
.dp-skip-link {
    /* Reset positioning - Hidden by default */
    position: absolute !important;
    top: 0 !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    z-index: 2000 !important;
    /* Higher than navbar */

    /* Styling reset */
    background: #ffffff !important;
    color: #00703C !important;
    padding: 8px 16px !important;
    border-radius: 4px !important;
    text-decoration: none !important;
}

.dp-skip-link:focus {
    /* Make visible on focus */
    left: 0 !important;
    top: 0 !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;

    /* High visibility focus indicator */
    outline: 4px solid #FFD600 !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 4px #0b0c0c !important;
    /* Double border for contrast */
}

/* 
   Fix: Video Iframe Focus
   Ensure keyboard focus is visible on the video player iframe
*/
.video-player-iframe:focus {
    outline: 4px solid #FFD600 !important;
    outline-offset: -4px !important;
    /* Inner outline since it's an iframe */
    box-shadow: inset 0 0 0 4px #0b0c0c !important;
}