﻿:focus {
    outline: none;
}

a:focus-visible,
button:focus-visible,
[role="button"]:focus-visible,
.navbar-ctrl-btn:focus-visible,
.dropdown-item:focus-visible,
.navbar-sidebar-menu-item:focus-visible,
.navbar-sidebar-lang-header:focus-visible,
.navbar-sidebar-lang-item:focus-visible,
.navbar-hamburger:focus-visible {
    outline: 3px solid var(--focus-ring-color) !important;
    outline-offset: 2px !important;
    border-radius: 4px !important;
    box-shadow: none !important;
}

input:focus,
select:focus,
textarea:focus,
.form-control:focus {
    outline: none !important;
    border-color: var(--focus-ring-color) !important;
    border-width: 2px !important;
    box-shadow: 0 0 0 4px rgba(74, 144, 217, 0.25) !important;
}

input:focus[type=password]:focus {
    outline: none !important;
    border: none !important;
    box-shadow: none !important;
}

.visually-hidden-focusable:focus {
    position: fixed;
    top: 15px;
    left: 15px;
    z-index: 10000;
    padding: 12px 24px;
    background-color: #FFFFFF;
    color: #1E2235;
    border: 3px solid var(--focus-ring-color);
    border-radius: 8px;
    text-decoration: none;
    font-weight: bold;
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
    width: auto;
    height: auto;
    clip: auto;
    clip-path: none;
}

.ssp-navbar :focus-visible,
.navbar-sidebar :focus-visible {
    outline-offset: 3px !important;
}

.dropdown-item.active:focus-visible,
.navbar-sidebar-lang-item.active:focus-visible {
    outline: 2px solid #FFFFFF !important;
    outline-offset: -4px !important;
}

.dropdown-overlay {
    /* Ensure it doesn't accidentally steal focus visibility */
    pointer-events: all;
}

.widget:focus-visible,
.eso-logo:focus-visible {
    outline: 2px dashed var(--focus-ring-color);
    outline-offset: 8px;
}