/* Shared public/Lite fixes; the admin bundles do not load this file. */
.public-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
[hidden] { display:none !important; }
:where(.public-site) img { max-width:100%; height:auto; }
.public-site :focus-visible { outline:3px solid #176b78; outline-offset:3px; }
.public-link-button { background:none; border:0; padding:8px; color:inherit; font:inherit; text-align:inherit; cursor:pointer; min-height:44px; min-width:44px; }
.public-link-button.active { color:darkred; text-decoration:underline; }
.public-site button.page-link { min-width:44px; min-height:44px; }
.public-site .pagination { flex-wrap:wrap; gap:4px; }
.public-site .btn-group { flex-wrap:wrap; }
.public-site .media-body, .public-site .post-content, .public-site [class*="col-"] { min-width:0; }
.public-site .post-title, .public-site .public-empty, .public-site .public-search { overflow-wrap:anywhere; }
.public-site .public-table-scroll { max-width:100%; overflow-x:auto; }
.public-search .inner-form { display:flex; width:100%; }
.public-search .second-wrap { flex:1; min-width:0; }
.public-search input[type="search"] { width:100%; min-width:0; }
.public-search .third-wrap { flex:none; }
.public-search .btn-search { min-width:64px; min-height:44px; }
.public-search label { display:block; }
/* Search feedback replaces the hint in its existing space, without moving results. */
.public-search-feedback { display:grid; margin-top:8px; min-height:44px; }
.public-search-feedback > * { grid-area:1 / 1; min-width:0; }
.public-search-feedback .public-search-hint { margin:0; align-self:center; }
.public-search-feedback [data-feedback-active] + .public-search-hint { visibility:hidden; }
.public-search-loading { display:flex; align-items:center; gap:10px; min-height:44px; color:#fff; font-size:18px; line-height:1.6; }
.public-search-loading-mark { flex:0 0 32px; width:32px; height:32px; }
.public-search-loading-track { opacity:.3; }
.public-search-loading-trace { stroke-dasharray:28 72; animation:public-search-trace 1.8s linear infinite; }
.public-search-feedback [data-async-error] { margin:0; }
@keyframes public-search-trace { to { stroke-dashoffset:-100; } }
@media(prefers-reduced-motion:reduce) { .public-search-loading-trace { animation:none; stroke-dasharray:none; } }

/* Keep feedback-type labels readable through Bootstrap's text utility overrides. */
.public-contact-form .feedback-type-option {
    --feedback-color:#176b78; --feedback-hover:#125560;
    border-color:var(--feedback-color) !important; background:#fff;
    color:var(--feedback-color) !important;
    transition:background-color 150ms ease, color 150ms ease;
}
.public-contact-form .feedback-type-option-bug { --feedback-color:#bd2638; --feedback-hover:#a11f2f; }
.public-contact-form .feedback-type-input:checked + .feedback-type-option { background:var(--feedback-color); color:#fff !important; }
.public-contact-form .feedback-type-option:hover,
.public-contact-form .feedback-type-input:checked + .feedback-type-option:hover { background:var(--feedback-hover); border-color:var(--feedback-hover) !important; color:#fff !important; }
.public-contact-form .feedback-type-input:focus-visible + .feedback-type-option { outline:3px solid #176b78; outline-offset:3px; }
@media(prefers-reduced-motion:reduce) { .public-contact-form .feedback-type-option { transition:none; } }
.public-site .header-top-right { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px; }
.public-site .header-top-right .btn { margin:0 !important; }
.public-site .language-card { text-align:inherit; color:inherit; border:0; background:none; font:inherit; cursor:pointer; }
.public-site .language-card:disabled { cursor:default; }
.public-site iframe, .public-site video, .public-site object, .public-site embed { max-width:100%; }
@media(max-width:767px) {
    .public-site .main-header .logo { max-width:100%; height:auto; }
    .public-site .suggestion-btn { position:static; margin:12px; }
    .public-search .btn-search { padding:8px; }
    .public-site .btn-group > .btn { flex:1 1 auto; }
    .public-site .modal-dialog { max-width:calc(100% - 16px); margin:8px auto; }
}
@media(prefers-reduced-motion:reduce) {
    .public-site .wow, .public-site .animated { animation:none !important; visibility:visible !important; }
    .public-site { scroll-behavior:auto; }
}
.public-search .search-container form .inner-form .input-field.second-wrap { width:auto; flex:1 1 0; margin:0; }
.public-search .search-container form .inner-form .input-field.third-wrap { width:74px; flex:0 0 74px; margin:0; }
.public-search .search-container form .inner-form { flex-wrap:nowrap; }
.public-site button.social-icon { border:0; min-width:44px; min-height:44px; }
.public-site button.slicknav_btn { border:0; cursor:pointer; }

.public-site button.ayah { display:inline; border:0; background:none; color:inherit; font:inherit; padding:0; cursor:pointer; }
.public-site .snip1132 button.type { position:absolute; inset:0; width:100%; height:100%; opacity:0; }

.public-site .header-social-network .social-icon { min-width:44px; min-height:44px; }
.public-site .slicknav_btn { min-width:44px; min-height:44px; }
.public-site .leaflet-bar button { display:block; border:0; border-bottom:1px solid #ccc; background:#fff; color:#000; width:44px; height:44px; font-size:22px; cursor:pointer; }
.public-site [data-async-retry], .public-search .public-empty button { min-height:44px; min-width:44px; }

.public-site .pagination .page-link { min-width:44px; min-height:44px; display:flex; align-items:center; justify-content:center; }
.public-search a.btn { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.public-site button.social-icon { color:#fff; border-radius:50%; }

/* Compact visual marks, with independent keyboard/touch targets. */
.public-site .header-social-network.share-controls { align-items:center; gap:0; margin:0; padding:0; }
.public-site .share-controls > .list-inline-item { margin:0; }
.public-site .share-controls .share-control {
    display:inline-flex; align-items:center; justify-content:center;
    width:44px; height:44px; min-width:44px; min-height:44px;
    border:0; border-radius:8px; background:transparent !important;
    padding:0 !important; color:#fff; line-height:1; cursor:pointer;
}
.public-site .share-mark { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:50%; color:#fff; transition:transform 150ms ease; }
.public-site .share-mark svg { width:16px; height:16px; }
.public-site .share-mark i { display:block; font-size:13px; line-height:1; }
.public-site .share-mark-x { background:#111; }
.public-site .share-mark-facebook { background:#3b5998; }
.public-site .share-mark-whatsapp { background:#169b45; }
.public-site .share-mark-telegram { background:#2987cf; }
.public-site .share-mark-copy { background:#07132d; }
.public-site .share-control:hover .share-mark { transform:translateY(-1px); }
@media(prefers-reduced-motion:reduce) { .public-site .share-mark { transition:none; } }
.public-site .share-mobile-controls { display:inline-flex; }
.public-site .header-sticky .header-tools { display:flex; align-items:center; padding:14px 0; }
@media(max-width:991px) {
    .public-site .header-sticky .header-tools { float:right !important; top:auto; bottom:auto !important; margin:0 !important; padding:5px 0; line-height:1; }
}
