/* Sewa Rent accessibility layer (includes/a11y.php, docs/qa/a11y.md). WCAG 2.2 AA fixes on top of Listeo markup:
   skip link, keyboard focus ring, AA text colours for Listeo/Leaflet elements. Colours come from tokens.css. */

/* Skip link: hidden until focused (first Tab on every page) */
.sewa-skip-link{position:absolute;left:12px;top:-200px;z-index:100000;padding:12px 18px;border-radius:var(--sewa-radius-pill);
	background:var(--sewa-white);color:var(--sewa-navy)!important;font-weight:600;box-shadow:var(--sewa-shadow-lg);text-decoration:none}
.sewa-skip-link:focus{top:12px;outline:2px solid var(--sewa-navy);outline-offset:2px}
.sewa-main{display:block}
/* Listeo burger: the <button> is 0x0 inside the 50x50 .mmenu-trigger — show the ring on the trigger */
.mmenu-trigger:has(.hamburger:focus-visible){outline:2px solid var(--sewa-focus);outline-offset:2px;border-radius:8px}
.sewa-main:focus{outline:none}

/* Keyboard focus ring (mouse clicks keep the current look: :focus-visible only) */
a:focus-visible,button:focus-visible,summary:focus-visible,[role=button]:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible,
input[type=checkbox]:focus-visible,input[type=radio]:focus-visible,input[type=submit]:focus-visible,input[type=button]:focus-visible,
.bootstrap-select .dropdown-toggle:focus-visible,select:focus-visible{outline:2px solid var(--sewa-focus)!important;outline-offset:2px!important}
#footer a:focus-visible,.sewa-hero a:focus-visible,.sewa-hero button:focus-visible,.sewa-cta a:focus-visible,
.sewa-type-card:focus-visible,.sewa-region-card:focus-visible{outline-color:var(--sewa-white)!important;box-shadow:0 0 0 4px var(--sewa-navy)}

/* AA text colours on Listeo fields and labels (#808080 / #888 / #777 were 3.5–4.5:1) */
.main-search-input input[type=text],.wpcf7-form .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-checkbox):not(.wpcf7-acceptance),
#sign-in-dialog input[type=text],#sign-in-dialog input[type=email],#sign-in-dialog input[type=password],
.bootstrap-select .filter-option-inner-inner,#date-picker,.panel-dropdown > a,.listing-share .email-share,.email-share,
.footer-new-bottom-left,.leaflet-container .leaflet-control-attribution,.category-item .category-name,[id^="widget_listing_owner"] h4 > span{color:var(--sewa-muted)}
/* Listeo rules with higher specificity (booking widget, share list, hero date trigger) */
#date-picker,.panel-dropdown > a,.share-buttons a.email-share,.email-share,.sewa-dates-trigger .sewa-dates-label{color:var(--sewa-muted)!important}
.main-search-input input::placeholder,.wpcf7-form .wpcf7-form-control::placeholder,#sign-in-dialog input::placeholder{color:var(--sewa-muted);opacity:1}
.category-item.active .category-name,.category-item:hover .category-name{color:var(--sewa-accent-dark)}
.hosted-by-link{color:var(--sewa-accent-deep)!important}
.badge-nl.featured-nl{color:var(--sewa-featured-text)!important}
.notification.notice,.notification.notice p{color:var(--sewa-info-text)}
.whatsapp-share{color:var(--sewa-whatsapp-text)!important}
.sewa-i18n-note a{color:var(--sewa-accent-dark)}

/* Links inside running text must not rely on colour alone (WCAG 1.4.1) */
.page-container-col .post-content p a:not(.button),.page-container-col p a:not(.button),#footer .textwidget p a,
#sign-in-dialog label a,.sewa-form-note a,.sewa-i18n-note a{text-decoration:underline;text-underline-offset:2px}

/* Dark mobile menu: labels on #222 */
.mm-menu .sewa-mobile-setting-label,.mobile-navigation-wrapper .sewa-mobile-setting-label{color:var(--sewa-on-dark-muted)}
.mm-menu .sewa-i18n .sewa-i18n-sep,.mobile-navigation-wrapper .sewa-i18n .sewa-i18n-sep{color:var(--sewa-on-dark-muted)}

@media (prefers-reduced-motion: reduce){
	*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Readability (TRACKER 2.95): small red links in running text use the small-text red (brand red is 4.0:1 on white);
   footer body text 16px on phones. */
#footer .textwidget p a,#footer .sewa-an-footer-fallback a,.sewa-an-footer-fallback a,.page-container-col p a:not(.button){color:var(--sewa-red-text)}
@media (max-width:767px){body #footer .footer-widget .textwidget p,body #footer .textwidget p{font-size:16px;line-height:1.5}#footer .menu li a{display:inline-block;min-width:44px}.listing-widget .notification p,.notification.notice p{font-size:16px}}
/* Current / hovered top menu item: red text on Listeo's 6 % red tint is 4.4:1 (#e0173c) / 3.6:1 (#f91942) → small-text red. */
#header #navigation.style-1 > ul > li.current-menu-ancestor > a,#header #navigation.style-1 > ul > li.current-menu-item > a,#header #navigation.style-1 > ul > li:hover > a{color:var(--sewa-red-text)}
/* Listing page (Listeo markup, colours only): tags, "Starts from" pill, address, review sign-in note, date placeholder. */
#titlebar.listing-titlebar span.listing-tag a,span.listing-tag a{color:var(--sewa-red-text)}
#titlebar.listing-titlebar span.listing-pricing-tag,.listing-pricing-tag{color:var(--sewa-ok-text)}
#titlebar.listing-titlebar a.listing-address,a.listing-address{color:var(--sewa-text-subtle);font-weight:400}
.notification.notice a.sign-in,.notification a.sign-in{color:var(--sewa-info-text);text-decoration:underline}
input.date-picker-listing-date_range::placeholder,input#date-picker::placeholder{color:var(--sewa-muted);opacity:1}
.mobile-navigation-wrapper .textwidget a,.mm-menu .textwidget a{color:var(--sewa-red-on-dark);text-decoration:underline}

/* TRACKER 2.97 (live QA #9): 404 lead "Sorry, this page does not exist…" was #999 = 2.85:1 */
#not-found p,#not-found .sewa-404-lead{color:var(--sewa-text-subtle,#5f6368)}
/* TRACKER 2.97 (live QA #14): listing spec rows were 15px on phones; body text 16px (card captions stay 15px, 2.95) */
@media (max-width:767px){.sewa-specs-grid li{font-size:16px}}
