/* otepaakultuur.ee ligipääsetavus (WCAG 2.1 AA). Laeb mu-plugin zrk-a11y.php. Audit: a11y/ACCESSIBILITY_AUDIT.md */

/* ---------- abiklassid ---------- */
.zrk-sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
#content[tabindex="-1"]:focus, [role="main"][tabindex="-1"]:focus { outline: none; }
.zrk-ico { width: 22px !important; height: 22px !important; display: block !important; flex: 0 0 auto; }

/* ---------- tavavaade: ainult märkamatud kontrastiparandused (L1) ---------- */
.jet-team-member__position, .jet-team-member__position span { color: #767676 !important; }   /* #777 → 4,54:1 */
.zrk-select-group label { color: #767676 !important; }                                        /* #7a7a7a → 4,54:1 */

/* 1.4.10: pikad URL-tekstiga lingid (nt laululava amphora link) murduvad, et 320 px vaates ei lõigataks ära */
.zrk-url-link { overflow-wrap: anywhere; }

/* ---------- ligipääsetavuse nupp ---------- */
.zrk-a11y-side { display: flex; justify-content: center; margin-top: 18px; box-sizing: border-box; }
.zrk-a11y-side--compact { margin-top: 8px; }
.zrk-a11y-side--compact .zrk-a11y-btn--side { width: 36px; height: 36px; }
.zrk-a11y-side--compact .zrk-ico { width: 22px !important; height: 22px !important; }
.zrk-a11y-side--float { position: fixed; bottom: 16px; margin: 0; z-index: 9990; }
.zrk-a11y-side--float .zrk-a11y-btn--side { box-shadow: 0 0 0 2px #1a1a1a, 0 3px 10px rgba(0, 0, 0, .25); }
/* töölaual vasakmenüüs ja mobiilis päises: ümmargune ligipääsetavuse ikoon (nimi ekraanilugejale + vihje) */
.zrk-a11y-btn--side, .zrk-a11y-btn--icon, .zrk-a11y-btn--menu {
  display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box;
  padding: 0; margin: 0; background: #fff; color: #1a1a1a; border: 0; border-radius: 50%; cursor: pointer;
  transition: box-shadow .15s;
}
.zrk-a11y-btn--side { width: 44px; height: 44px; }
.zrk-a11y-btn--side .zrk-ico { width: 26px !important; height: 26px !important; }
.zrk-a11y-btn--icon { position: absolute; z-index: 5; width: 36px; height: 36px; }
/* ülemine horisontaalne menüü: ikoon viimase menüüpunkti järel; mobiilse rippmenüü sees peidetud (seal on päise ikoon) */
.zrk-a11y-li { display: flex; align-items: center; align-self: center; list-style: none; margin: 0 0 0 10px; padding: 0; height: 30px; }
.zrk-a11y-btn--menu { width: 30px; height: 30px; }
.zrk-a11y-btn--menu .zrk-ico { width: 20px !important; height: 20px !important; }
.jet-mega-menu:not(.jet-mega-menu--layout-horizontal) .zrk-a11y-li { display: none !important; }
.zrk-a11y-btn--side:hover, .zrk-a11y-btn--side[aria-expanded="true"],
.zrk-a11y-btn--icon:hover, .zrk-a11y-btn--icon[aria-expanded="true"], .zrk-a11y-btn--menu:hover, .zrk-a11y-btn--menu[aria-expanded="true"] { box-shadow: inset 0 0 0 2px #1a1a1a; }
.zrk-a11y-btn .zrk-a11y-btn-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.zrk-a11y-btn:focus-visible, .zrk-a11y-panel :focus-visible { outline: 3px solid #1a1a1a; outline-offset: 2px; box-shadow: 0 0 0 5px #fff; }

/* paneel */
.zrk-a11y-panel {
  position: fixed; z-index: 100000; box-sizing: border-box; padding: 14px 16px 16px;
  background: #fff; color: #1a1a1a; border-top: 6px solid #97a294; box-shadow: 0 8px 28px rgba(0, 0, 0, .28);
  font-family: Roboto, sans-serif; font-size: 15px; line-height: 1.4; text-align: left;
}
.zrk-a11y-panel[hidden] { display: none !important; }
.zrk-a11y-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.zrk-a11y-title { margin: 0 !important; font-family: Oswald, Roboto, sans-serif !important; font-size: 20px !important; font-weight: 500 !important; color: #1a1a1a !important; line-height: 1.2 !important; text-transform: none !important; }
.zrk-a11y-close { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; padding: 0; background: transparent !important; color: #1a1a1a !important; border: 0 !important; cursor: pointer; }
.zrk-hc-switch {
  display: flex; align-items: center; gap: 10px; width: 100%; padding: 10px 12px; text-align: left; box-sizing: border-box;
  background: #f4f5f3 !important; color: #1a1a1a !important; border: 2px solid #1a1a1a !important; border-radius: 0; cursor: pointer;
  font-family: inherit; font-size: 15px; font-weight: 500; text-transform: none; letter-spacing: 0;
}
.zrk-hc-text { flex: 1 1 auto; }
.zrk-hc-track { position: relative; flex: 0 0 auto; width: 42px; height: 24px; border-radius: 12px; background: #fff; border: 2px solid #1a1a1a; box-sizing: border-box; }
.zrk-hc-knob { position: absolute; top: 2px; left: 2px; width: 16px; height: 16px; border-radius: 50%; background: #1a1a1a; transition: left .15s; }
.zrk-hc-switch[aria-checked="true"] .zrk-hc-track { background: #1a1a1a; }
.zrk-hc-switch[aria-checked="true"] .zrk-hc-knob { left: 20px; background: #ffeb3b; }
.zrk-a11y-desc { margin: 8px 0 12px !important; font-size: 14px !important; color: #3d3d3d !important; }
.zrk-a11y-link { color: #1a1a1a !important; text-decoration: underline !important; font-weight: 500; }

/* ---------- taustavideo paus (L6) ---------- */
.zrk-video-pause {
  position: absolute; right: 16px; bottom: 16px; z-index: 5; display: flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; padding: 0; border-radius: 50%;
  background: rgba(255, 255, 255, .92); color: #1a1a1a; border: 0; cursor: pointer;
}
.zrk-video-pause svg { width: 22px !important; height: 22px !important; display: block !important; }
.zrk-video-pause:focus-visible { outline: 3px solid #1a1a1a; outline-offset: 2px; box-shadow: 0 0 0 5px #fff; }

/* ======================================================================
   KÕRGE KONTRASTI VAADE  html.zrk-hc  (WCAG G174)
   must taust, valge tekst, kollased lingid; maja värv jääb kaardi triibuks
   ====================================================================== */
html.zrk-hc body,
html.zrk-hc body *:not(svg):not(svg *):not(img):not(video):not(iframe):not(.e-gallery-image):not(.zrk-a11y-btn):not(.zrk-a11y-btn *):not(.zrk-a11y-panel):not(.zrk-a11y-panel *) {
  background-color: #000 !important; color: #fff !important; border-color: #fff !important;
  text-shadow: none !important; box-shadow: none !important; opacity: 1 !important;
}
html.zrk-hc body *:not(.e-gallery-image):not(.elementor-gallery-item__image) { background-image: none !important; }
html.zrk-hc body *::before, html.zrk-hc body *::after { background-color: transparent !important; background-image: none !important; }
html.zrk-hc .elementor-background-overlay,
html.zrk-hc .elementor-background-video-container,
html.zrk-hc .elementor-background-slideshow,
html.zrk-hc .zrk-video-pause,
html.zrk-hc .e-page-transition { display: none !important; }

html.zrk-hc a, html.zrk-hc a *:not(svg):not(svg *):not(img) { color: #ffeb3b !important; }
/* 1.4.1: kõrge kontrasti vaates eristab linke ka allajoonimine (kollane vs valge ei piisa). Selektor peab ületama Elementori kiti .elementor a:link */
html.zrk-hc body a:is(:link, :visited, :hover, :focus, :active) { text-decoration: underline !important; }
html.zrk-hc body :is(a.elementor-button, a.zrk-event-card, .elementor-nav-menu a, .jet-mega-menu a, .zrk-a11y-panel a.zrk-a11y-btn):is(:link, :visited, :hover, :focus, :active) { text-decoration: none !important; }
/* ääris ainult värvina (outline), et paigutus ei nihkuks */
html.zrk-hc a.elementor-button, html.zrk-hc button:not(.zrk-a11y-btn):not(.zrk-a11y-panel button), html.zrk-hc select, html.zrk-hc input, html.zrk-hc textarea { outline: 2px solid #fff; outline-offset: -2px; }
html.zrk-hc option { background: #000 !important; color: #fff !important; }
html.zrk-hc .filter-btn.active, html.zrk-hc .filter-btn[aria-pressed="true"] { background-color: #ffeb3b !important; color: #000 !important; border-color: #ffeb3b !important; }
html.zrk-hc a svg .cls-1 { fill: #ffeb3b !important; }
/* tumedad logod (failinimes "must") nähtavaks */
html.zrk-hc img[src*="must"], html.zrk-hc img[src*="Must"] { filter: invert(1) hue-rotate(180deg); }
/* sündmuse kaart: maja värv vasakuks triibuks */
html.zrk-hc [data-zrk-accent] { box-shadow: inset 10px 0 0 var(--zrk-accent) !important; }
html.zrk-hc :focus-visible { outline: 3px solid #ffeb3b !important; outline-offset: 2px !important; }
html.zrk-hc ::placeholder { color: #ccc !important; opacity: 1; }

/* ligipääsetavuse nupp ja paneel kõrge kontrasti vaates */
html.zrk-hc .zrk-a11y-btn { background: #ffeb3b !important; color: #000 !important; border-color: #ffeb3b !important; }
html.zrk-hc .zrk-a11y-btn--side:hover, html.zrk-hc .zrk-a11y-btn--side[aria-expanded="true"] { box-shadow: inset 0 0 0 2px #000 !important; }
html.zrk-hc .zrk-a11y-panel { background: #000 !important; color: #fff !important; border: 3px solid #ffeb3b !important; box-shadow: none !important; }
html.zrk-hc .zrk-a11y-panel * { color: #fff !important; }
html.zrk-hc .zrk-hc-switch { background: #000 !important; border-color: #fff !important; }
html.zrk-hc .zrk-hc-track { background: #000; border-color: #fff; }
html.zrk-hc .zrk-hc-switch[aria-checked="true"] .zrk-hc-track { background: #fff; }
html.zrk-hc .zrk-hc-switch[aria-checked="true"] .zrk-hc-knob { background: #000; }
html.zrk-hc .zrk-a11y-panel .zrk-a11y-link { color: #ffeb3b !important; }
html.zrk-hc .zrk-a11y-btn:focus-visible, html.zrk-hc .zrk-a11y-panel :focus-visible { outline: 3px solid #ffeb3b !important; box-shadow: 0 0 0 5px #000 !important; }

/* ---------- ligipääsetavuse teatise leht (/ligipaasetavus/, mall 5567) ---------- */
.zrk-teatis { max-width: 860px; margin: 0 auto; padding: 56px 32px 72px; font-size: 17px; line-height: 1.6; color: #1a1a1a; }
.zrk-teatis h1 { font-size: 40px; line-height: 1.15; margin: 0 0 28px; }
.zrk-teatis h2 { font-size: 28px; margin: 44px 0 14px; }
.zrk-teatis h3 { font-size: 21px; margin: 32px 0 10px; }
.zrk-teatis h4 { font-size: 18px; margin: 24px 0 8px; }
.zrk-teatis p, .zrk-teatis li { margin: 0 0 12px; }
.zrk-teatis ul { padding-left: 22px; }
/* Elementori kit: .elementor a:link { text-decoration: inherit !important } → vaja tugevamat selektorit */
.elementor .zrk-teatis a:is(:link, :visited, :hover, :focus, :active), .zrk-teatis a { color: #1a1a1a !important; text-decoration: underline !important; text-underline-offset: 2px; }
@media (max-width: 767px) { .zrk-teatis { padding: 32px 16px 48px; font-size: 16px; } .zrk-teatis h1 { font-size: 30px; } .zrk-teatis h2 { font-size: 23px; } }
