﻿/* prlz-a11y.css — OIBS erişilebilirlik paneli (K 04.11.2026)
   Ayar sınıfları <html> öğesine prlz-a11y-* olarak eklenir (prlz-a11y.js). Panel, okuma kılavuzu ve
   büyüteç <body> dışında, doğrudan <html> altında durur: sayfa ölçeği ve kontrast kuralları onlara dokunmaz.
   Kalın yazı yok (CLAUDE.md §7.7), ikonlar Font Awesome fal (§7.5). */

/* ===== Panel ve buton ===== */
.prlz-a11y-root,
.prlz-a11y-root * { box-sizing: border-box; }
/* fal ağırlığı ikon ailesini seçer (300), ona dokunulmaz */
.prlz-a11y-root,
.prlz-a11y-root *:not(.fal) { font-weight: 400 !important; }
.prlz-a11y-root {
    --prlz-a11y-bg: #ffffff;
    --prlz-a11y-fg: #1f2933;
    --prlz-a11y-muted: #56616c;
    --prlz-a11y-line: #d5dbe1;
    --prlz-a11y-soft: #f3f5f7;
    --prlz-a11y-accent: #1d4ed8;
    --prlz-a11y-accent-bg: #e6eeff;
    --prlz-a11y-focus: #ffbf00;
    font-family: "Segoe UI", Tahoma, Verdana, sans-serif;
    font-size: 15px;
    line-height: 1.4;
    color: var(--prlz-a11y-fg);
    letter-spacing: normal;
    word-spacing: normal;
    text-align: left;
}
.prlz-a11y-root button {
    font-family: inherit;
    font-size: inherit;
    line-height: 1.2;
    color: inherit;
    text-transform: none;
    margin: 0;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
}
.prlz-a11y-root button:focus { outline: none; }
.prlz-a11y-root button:focus-visible {
    outline: 3px solid var(--prlz-a11y-focus);
    outline-offset: 2px;
    box-shadow: 0 0 0 5px #111111;
}
/* Buton kabı: sağ kenarda, dikey yeri JS yazar (sürükleme, Üst/Orta/Alt); küçük − ve × kontrolleri solunda */
.prlz-a11y-root .prlz-a11y-dock {
    position: fixed;
    top: calc(50% - 24px);
    right: 0;
    z-index: 2147483000;
}
.prlz-a11y-root .prlz-a11y-dock.is-hidden { display: none; }
/* Kabuktaki "İçeriğe geç" bağlantısı (K 05.11.2026): ekran dışında durur, yalnız Tab ile odaklanınca görünür */
a.prlz-a11y-skip {
    position: fixed;
    left: 8px;
    top: -80px;
    z-index: 2147483001;
    padding: 8px 16px;
    border-radius: 6px;
    background: #1d4ed8;
    color: #ffffff !important;
    font: 400 15px/1.3 "Segoe UI", Tahoma, Verdana, sans-serif;
    text-decoration: none !important;
}
a.prlz-a11y-skip:focus {
    top: 8px;
    outline: 3px solid #ffbf00;
    outline-offset: 2px;
}
.prlz-a11y-root .prlz-a11y-toggle {
    position: relative;
    width: 42px;
    height: 48px;
    padding: 0;
    border: 0;
    border-radius: 10px 0 0 10px;
    background: var(--prlz-a11y-accent);
    color: #ffffff;
    font-size: 24px;
    box-shadow: -2px 2px 10px rgba(0, 0, 0, .25);
    display: flex;
    align-items: center;
    justify-content: center;
    touch-action: none;
}
.prlz-a11y-root .prlz-a11y-toggle:hover { background: #1e40af; }
.prlz-a11y-root .prlz-a11y-dock.is-dragging .prlz-a11y-toggle { cursor: grabbing; }
/* küçük sekme 24 px: WCAG 2.5.8 en küçük tıklama hedefi */
.prlz-a11y-root .prlz-a11y-dock.is-min .prlz-a11y-toggle {
    width: 24px;
    height: 44px;
    border-radius: 8px 0 0 8px;
    font-size: 14px;
}
.prlz-a11y-root .prlz-a11y-mini {
    position: absolute;
    top: 0;
    right: 100%;
    display: none;
    flex-direction: column;
    gap: 4px;
    padding-right: 4px;
}
.prlz-a11y-root .prlz-a11y-dock:hover .prlz-a11y-mini,
.prlz-a11y-root .prlz-a11y-dock:focus-within .prlz-a11y-mini { display: flex; }
.prlz-a11y-root .prlz-a11y-dock.is-min .prlz-a11y-mini,
.prlz-a11y-root .prlz-a11y-dock.is-dragging .prlz-a11y-mini { display: none; }
.prlz-a11y-root .prlz-a11y-mini-btn {
    width: 22px;
    height: 22px;
    padding: 0;
    border: 1px solid var(--prlz-a11y-line);
    border-radius: 50%;
    background: var(--prlz-a11y-bg);
    color: var(--prlz-a11y-fg);
    font-size: 12px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .2);
    display: flex;
    align-items: center;
    justify-content: center;
}
.prlz-a11y-root .prlz-a11y-mini-btn:hover { background: var(--prlz-a11y-soft); }
/* glif butondan line-height 1,2 alıp aşağı, temanın ikon boşluğuyla (oibs21.css .fa… margin-right: 3px) sola kayıyordu:
   1em kare kutuda, boşluksuz ortalanır */
.prlz-a11y-root .prlz-a11y-mini-btn .fal,
.prlz-a11y-root .prlz-a11y-toggle .fal {
    display: block;
    width: 1em;
    margin: 0;
    line-height: 1;
    text-align: center;
}
/* Dokunmatik ekranda üzerine gelme yok: küçült/gizle panelin Buton bölümünden yapılır */
@media (hover: none) {
    .prlz-a11y-root .prlz-a11y-dock .prlz-a11y-mini { display: none !important; }
}
.prlz-a11y-root .prlz-a11y-toast {
    position: fixed;
    right: 16px;
    bottom: 16px;
    z-index: 2147483002;
    max-width: min(360px, calc(100vw - 32px));
    padding: 10px 14px;
    border-radius: 8px;
    background: #1f2933;
    color: #ffffff;
    font-size: 14px;
    line-height: 1.4;
    box-shadow: 0 4px 16px rgba(0, 0, 0, .25);
    opacity: 0;
    pointer-events: none;
    transition: opacity .2s ease;
}
.prlz-a11y-root .prlz-a11y-toast:empty { display: none; }
.prlz-a11y-root .prlz-a11y-toast.is-on { opacity: 1; }
.prlz-a11y-root .prlz-a11y-panel {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 2147483001;
    width: 340px;
    max-width: 100vw;
    display: flex;
    flex-direction: column;
    background: var(--prlz-a11y-bg);
    border-left: 1px solid var(--prlz-a11y-line);
    box-shadow: -6px 0 24px rgba(0, 0, 0, .18);
    transform: translateX(100%);
    visibility: hidden;
    transition: transform .2s ease, visibility 0s linear .2s;
}
.prlz-a11y-root .prlz-a11y-panel.is-open {
    transform: none;
    visibility: visible;
    transition: transform .2s ease, visibility 0s;
}
.prlz-a11y-root .prlz-a11y-head {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-bottom: 1px solid var(--prlz-a11y-line);
}
.prlz-a11y-root .prlz-a11y-title {
    flex: 1;
    margin: 0;
    font-size: 20px;
    color: var(--prlz-a11y-fg);
}
.prlz-a11y-root .prlz-a11y-title .fal { color: var(--prlz-a11y-accent); margin-right: 8px; }
.prlz-a11y-root .prlz-a11y-close {
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid var(--prlz-a11y-line);
    border-radius: 8px;
    background: var(--prlz-a11y-bg);
    font-size: 18px;
}
.prlz-a11y-root .prlz-a11y-close:hover { background: var(--prlz-a11y-soft); }
.prlz-a11y-root .prlz-a11y-body {
    flex: 1;
    overflow-y: auto;
    padding: 4px 14px 14px;
}
.prlz-a11y-root .prlz-a11y-sec-title {
    margin: 14px 0 6px;
    font-size: 13px;
    font-style: italic;
    color: var(--prlz-a11y-muted);
}
.prlz-a11y-root .prlz-a11y-profiles {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
}
.prlz-a11y-root .prlz-a11y-profile {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    padding: 6px 10px;
    border: 1px solid var(--prlz-a11y-line);
    border-radius: 8px;
    background: var(--prlz-a11y-bg);
    font-size: 14px;
    text-align: left;
}
.prlz-a11y-root .prlz-a11y-profile .fal { font-size: 18px; width: 22px; text-align: center; color: var(--prlz-a11y-muted); }
.prlz-a11y-root .prlz-a11y-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 8px 0;
    border-bottom: 1px solid var(--prlz-a11y-soft);
}
.prlz-a11y-root .prlz-a11y-row.is-stack { display: block; }
.prlz-a11y-root .prlz-a11y-label {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    font-size: 15px;
}
.prlz-a11y-root .prlz-a11y-label .fal { width: 20px; text-align: center; font-size: 16px; color: var(--prlz-a11y-muted); }
.prlz-a11y-root .prlz-a11y-switch {
    position: relative;
    flex: 0 0 auto;
    width: 46px;
    height: 26px;
    padding: 0;
    border: 0;
    border-radius: 13px;
    background: #aeb7c0;
}
.prlz-a11y-root .prlz-a11y-switch::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #ffffff;
    transition: left .15s ease;
}
.prlz-a11y-root .prlz-a11y-seg {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 6px;
}
.prlz-a11y-root .prlz-a11y-opt {
    flex: 1 1 auto;
    min-height: 34px;
    padding: 4px 8px;
    border: 1px solid var(--prlz-a11y-line);
    border-radius: 6px;
    background: var(--prlz-a11y-bg);
    font-size: 13px;
}
.prlz-a11y-root .prlz-a11y-opt:hover,
.prlz-a11y-root .prlz-a11y-profile:hover { background: var(--prlz-a11y-soft); }
.prlz-a11y-root .prlz-a11y-switch[aria-pressed="true"] { background: var(--prlz-a11y-accent); }
.prlz-a11y-root .prlz-a11y-switch[aria-pressed="true"]::after { left: 23px; }
.prlz-a11y-root .prlz-a11y-opt[aria-pressed="true"],
.prlz-a11y-root .prlz-a11y-profile[aria-pressed="true"] {
    background: var(--prlz-a11y-accent-bg);
    border-color: var(--prlz-a11y-accent);
    color: var(--prlz-a11y-accent);
}
.prlz-a11y-root .prlz-a11y-profile[aria-pressed="true"] .fal { color: var(--prlz-a11y-accent); }
.prlz-a11y-root .prlz-a11y-stepper { display: flex; align-items: center; gap: 4px; }
.prlz-a11y-root .prlz-a11y-step {
    width: 36px;
    height: 34px;
    padding: 0;
    border: 1px solid var(--prlz-a11y-line);
    border-radius: 6px;
    background: var(--prlz-a11y-bg);
    font-size: 15px;
}
.prlz-a11y-root .prlz-a11y-step:hover { background: var(--prlz-a11y-soft); }
.prlz-a11y-root .prlz-a11y-step[aria-disabled="true"] { opacity: .4; cursor: default; }
.prlz-a11y-root .prlz-a11y-zoom-val { min-width: 54px; text-align: center; font-size: 16px; }
.prlz-a11y-root .prlz-a11y-foot {
    padding: 10px 14px 12px;
    border-top: 1px solid var(--prlz-a11y-line);
}
.prlz-a11y-root .prlz-a11y-reset {
    width: 100%;
    min-height: 40px;
    border: 1px solid var(--prlz-a11y-line);
    border-radius: 8px;
    background: var(--prlz-a11y-soft);
    font-size: 15px;
}
.prlz-a11y-root .prlz-a11y-reset .fal { margin-right: 8px; }
.prlz-a11y-root .prlz-a11y-reset:hover { background: #e7ebef; }
.prlz-a11y-root .prlz-a11y-action {
    width: 100%;
    min-height: 36px;
    border: 1px solid var(--prlz-a11y-line);
    border-radius: 8px;
    background: var(--prlz-a11y-bg);
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.prlz-a11y-root .prlz-a11y-action:hover { background: var(--prlz-a11y-soft); }
.prlz-a11y-root .prlz-a11y-note { margin: 8px 0 0; font-size: 12px; font-style: italic; color: var(--prlz-a11y-muted); }
.prlz-a11y-root .prlz-a11y-sr {
    position: absolute !important;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}

/* Telefonda panel alttan açılır */
@media (max-width: 575.98px) {
    .prlz-a11y-root .prlz-a11y-panel {
        top: auto;
        left: 0;
        width: 100%;
        height: 82vh;
        border-left: 0;
        border-top: 1px solid var(--prlz-a11y-line);
        border-radius: 14px 14px 0 0;
        transform: translateY(100%);
    }
}

/* ===== Okuma kılavuzu, okuma maskesi, metin büyüteci ===== */
.prlz-a11y-guide,
.prlz-a11y-mask-top,
.prlz-a11y-mask-bottom,
.prlz-a11y-mag {
    position: fixed;
    z-index: 2147482000;
    pointer-events: none;
    display: none;
}
.prlz-a11y-guide {
    left: 0;
    right: 0;
    height: 12px;
    background: rgba(255, 191, 0, .45);
    border-top: 2px solid #111111;
    border-bottom: 2px solid #111111;
}
.prlz-a11y-mask-top,
.prlz-a11y-mask-bottom {
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, .6);
}
.prlz-a11y-mask-top { top: 0; }
.prlz-a11y-mask-bottom { bottom: 0; }
.prlz-a11y-mag {
    max-width: min(520px, 90vw);
    padding: 10px 14px;
    background: #111111;
    color: #ffffff;
    border: 2px solid #ffbf00;
    border-radius: 8px;
    font: 400 26px/1.35 Verdana, Tahoma, sans-serif;
    white-space: pre-wrap;
    word-break: break-word;
}

/* ===== Metin =====
   Sayfa kuralları !important ile sınıf düzeyinde yazılmış olabilir (ör. giriş sayfası .card-brand .hr-text::after);
   :not(#prlz-a11y-boost) seçiciye kimlik ağırlığı katar, ayar her zaman kazanır. */
html.prlz-a11y-lh-1:not(#prlz-a11y-boost) body * { line-height: 1.5 !important; }
html.prlz-a11y-lh-2:not(#prlz-a11y-boost) body * { line-height: 1.75 !important; }
html.prlz-a11y-lh-3:not(#prlz-a11y-boost) body * { line-height: 2 !important; }

html.prlz-a11y-sp-1:not(#prlz-a11y-boost) body * { letter-spacing: .04em !important; word-spacing: .08em !important; }
html.prlz-a11y-sp-2:not(#prlz-a11y-boost) body * { letter-spacing: .12em !important; word-spacing: .16em !important; }
html.prlz-a11y-sp-3:not(#prlz-a11y-boost) body * { letter-spacing: .2em !important; word-spacing: .3em !important; }

/* İkon yazı tipleri (Font Awesome, glyphicon) korunur */
html.prlz-a11y-font:not(#prlz-a11y-boost) body *:not(.fa):not(.fal):not(.fas):not(.far):not(.fab):not(.fad):not([class*="fa-"]):not(.glyphicon) {
    font-family: Verdana, Tahoma, "Segoe UI", sans-serif !important;
}

html.prlz-a11y-head:not(#prlz-a11y-boost) body :is(h1, h2, h3, h4, h5, h6, [role="heading"], .panel-heading, .card-header, .modal-title) {
    outline: 2px dashed #b45309 !important;
    outline-offset: 2px !important;
}

/* ===== Gezinme ===== */
html.prlz-a11y-links:not(#prlz-a11y-boost) body a[href]:not(.btn) {
    text-decoration: underline !important;
    text-underline-offset: 3px;
    outline: 2px solid #ffbf00 !important;
    outline-offset: 1px !important;
}

html.prlz-a11y-focus:not(#prlz-a11y-boost) body *:focus,
html.prlz-a11y-focus:not(#prlz-a11y-boost) body *:focus-visible {
    outline: 3px solid #ffbf00 !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 6px #111111 !important;
}

html.prlz-a11y-cur-black:not(#prlz-a11y-boost),
html.prlz-a11y-cur-black:not(#prlz-a11y-boost) * {
    cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M7 4v35l9-9 6 14 6-3-6-13h13z' fill='%23000' stroke='%23fff' stroke-width='2.5' stroke-linejoin='round'/%3E%3C/svg%3E") 7 4, auto !important;
}
html.prlz-a11y-cur-white:not(#prlz-a11y-boost),
html.prlz-a11y-cur-white:not(#prlz-a11y-boost) * {
    cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M7 4v35l9-9 6 14 6-3-6-13h13z' fill='%23fff' stroke='%23000' stroke-width='2.5' stroke-linejoin='round'/%3E%3C/svg%3E") 7 4, auto !important;
}

html.prlz-a11y-anim:not(#prlz-a11y-boost) *,
html.prlz-a11y-anim:not(#prlz-a11y-boost) *::before,
html.prlz-a11y-anim:not(#prlz-a11y-boost) *::after {
    animation-duration: .001s !important;
    animation-delay: 0s !important;
    animation-iteration-count: 1 !important;
    transition: none !important;
    scroll-behavior: auto !important;
}

/* ===== Renk =====
   Evir, yüksek kontrast ve doygunluk filtreleri JS'te <html>'e yazılır (yalnız en üst pencerede; iframe
   içi üstten devralır). Burada evirmede fotoğraf, video ve grafiklerin geri çevrilmesi durur. */
html.prlz-a11y-media-inv:not(#prlz-a11y-boost) img,
html.prlz-a11y-media-inv:not(#prlz-a11y-boost) video,
html.prlz-a11y-media-inv:not(#prlz-a11y-boost) canvas,
html.prlz-a11y-media-inv:not(#prlz-a11y-boost) .prlz-a11y-root .prlz-a11y-dock,
html.prlz-a11y-media-inv:not(#prlz-a11y-boost) .prlz-a11y-root .prlz-a11y-toast,
html.prlz-a11y-media-inv:not(#prlz-a11y-boost) .prlz-a11y-root .prlz-a11y-panel {
    /* filtre kapsayıcıya değil sabit öğelere: filtreli kapsayıcı fixed çocukları kendine bağlar, buton ekrandan çıkar */
    filter: invert(1) hue-rotate(180deg);
}

/* Koyu / açık kontrast: yazı rengi her öğeye; zemin YALNIZ kendi zemini olan öğeye (JS data-prlz-a11y-bg ile işaretler:
   e = öğe, b = ::before, a = ::after; saydamlık --prlz-a11y-a / -ab / -aa ile korunur). Her öğeyi boyamak, ekranı
   kaplayan saydam katmanı (#prolizToastContainer, stretched-link::after) siyah perdeye çeviriyordu (04.11 foa_app). */
html.prlz-a11y-c-dark:not(#prlz-a11y-boost),
html.prlz-a11y-c-dark:not(#prlz-a11y-boost) body { background: #000000 !important; }
html.prlz-a11y-c-dark:not(#prlz-a11y-boost) body *,
html.prlz-a11y-c-dark:not(#prlz-a11y-boost) body *::before,
html.prlz-a11y-c-dark:not(#prlz-a11y-boost) body *::after {
    color: #ffffff !important;
    border-color: #9a9a9a !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html.prlz-a11y-c-dark:not(#prlz-a11y-boost) body [data-prlz-a11y-bg*="e"] { background-color: rgba(0, 0, 0, var(--prlz-a11y-a, 1)) !important; }
html.prlz-a11y-c-dark:not(#prlz-a11y-boost) body [data-prlz-a11y-bg*="b"]::before { background-color: rgba(0, 0, 0, var(--prlz-a11y-ab, 1)) !important; }
html.prlz-a11y-c-dark:not(#prlz-a11y-boost) body [data-prlz-a11y-bg*="a"]::after { background-color: rgba(0, 0, 0, var(--prlz-a11y-aa, 1)) !important; }

html.prlz-a11y-c-light:not(#prlz-a11y-boost),
html.prlz-a11y-c-light:not(#prlz-a11y-boost) body { background: #ffffff !important; }
html.prlz-a11y-c-light:not(#prlz-a11y-boost) body *,
html.prlz-a11y-c-light:not(#prlz-a11y-boost) body *::before,
html.prlz-a11y-c-light:not(#prlz-a11y-boost) body *::after {
    color: #000000 !important;
    border-color: #555555 !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html.prlz-a11y-c-light:not(#prlz-a11y-boost) body [data-prlz-a11y-bg*="e"] { background-color: rgba(255, 255, 255, var(--prlz-a11y-a, 1)) !important; }
html.prlz-a11y-c-light:not(#prlz-a11y-boost) body [data-prlz-a11y-bg*="b"]::before { background-color: rgba(255, 255, 255, var(--prlz-a11y-ab, 1)) !important; }
html.prlz-a11y-c-light:not(#prlz-a11y-boost) body [data-prlz-a11y-bg*="a"]::after { background-color: rgba(255, 255, 255, var(--prlz-a11y-aa, 1)) !important; }
html.prlz-a11y-c-light:not(#prlz-a11y-boost) body a,
html.prlz-a11y-c-light:not(#prlz-a11y-boost) body a * { color: #0b3fbf !important; }
html.prlz-a11y-c-light:not(#prlz-a11y-boost) body :is(input, select, textarea, button) { border-color: #000000 !important; }

/* ===== Yazdırma: ayarlar çıktıya taşınmaz ===== */
@media print {
    .prlz-a11y-root,
    .prlz-a11y-guide,
    .prlz-a11y-mask-top,
    .prlz-a11y-mask-bottom,
    .prlz-a11y-mag { display: none !important; }
    html[class*="prlz-a11y-"] { filter: none !important; }
}

/* Güvenlik kodu görseli: ikonu Captcha.dll çizer, saydam butonu prlz-a11y.js ekler */
span.prlz-captcha-box { position: relative; display: inline-block; flex: 0 0 auto; width: 197px; height: 38px; vertical-align: middle; }
span.prlz-captcha-box img { display: block; box-sizing: border-box; width: 197px !important; height: 38px !important; max-width: none; padding: 0; border: 1px solid #e2e8f0; border-radius: 8px; object-fit: fill; }
span.prlz-captcha-box a.captcha-audio-btn { position: absolute; top: 5.5px; right: 5.5px; display: block; width: 27px; height: 27px; min-height: 0; padding: 0; border: 0; border-radius: 5px; background: transparent; cursor: pointer; transition: background .15s; }
span.prlz-captcha-box a.captcha-audio-btn:hover { background: rgba(0,0,0,.18); }
span.prlz-captcha-box a.captcha-audio-btn:focus-visible { outline: 2px solid #64748b; outline-offset: 2px; }
