/* CMP-BUTTON-001 / CMP-ICON-CONTROL-001. Existing markup aliases share one contract. */
:root {--omedica-control-size:var(--wp--custom--interaction--touch-target,44px);--omedica-control-ink:var(--wp--preset--color--action);--omedica-control-hover:var(--wp--preset--color--surface);}
/* Gutenberg's Outline is also usable directly by dynamic Core links. */
html:not(.special) .wp-element-button.is-style-outline {background:transparent;color:var(--omedica-control-ink);border:var(--wp--custom--border--width,1px) solid currentColor;}
html:not(.special) .wp-element-button.is-style-outline:is(:hover,:active) {background:var(--omedica-control-hover);color:var(--omedica-control-ink);}
html:not(.special) .wp-element-button.is-style-outline:focus-visible {outline:var(--wp--custom--focus--width,2px) solid currentColor;outline-offset:var(--wp--custom--focus--offset,3px);}
/* Quiet / utility / navigation: icons do not introduce a new visual variant. */
html:not(.special) body :is(.omedica-clinic-social-links .wp-social-link > a,.omedica-contact-action-group__secondary .omedica-icon-button,.omedica-contact-action-group__secondary .wp-social-link > a,.omedica-mobile-menu__contacts .omedica-menu-social a,.omedica-mobile-menu__expand,.omedica-mobile-menu__header [data-mobile-menu-close]) {
 display:inline-flex;align-items:center;justify-content:center;flex:0 0 var(--omedica-control-size);box-sizing:border-box;
 width:var(--omedica-control-size);height:var(--omedica-control-size);min-width:var(--omedica-control-size);min-height:var(--omedica-control-size);
 padding:0;margin:0;border:0;border-radius:var(--wp--custom--radius--pill);background:transparent;color:var(--omedica-control-ink);font:inherit;line-height:1;cursor:pointer;text-decoration:none;
}
html:not(.special) body :is(.omedica-clinic-social-links .wp-social-link > a,.omedica-contact-action-group__secondary .omedica-icon-button,.omedica-contact-action-group__secondary .wp-social-link > a,.omedica-mobile-menu__contacts .omedica-menu-social a,.omedica-mobile-menu__expand,.omedica-mobile-menu__header [data-mobile-menu-close]):is(:hover,:active) {background:var(--omedica-control-hover);color:var(--omedica-control-ink);}
html:not(.special) body :is(.omedica-clinic-social-links .wp-social-link > a,.omedica-contact-action-group__secondary .omedica-icon-button,.omedica-contact-action-group__secondary .wp-social-link > a,.omedica-mobile-menu__contacts .omedica-menu-social a,.omedica-mobile-menu__expand,.omedica-mobile-menu__header [data-mobile-menu-close]):focus-visible {outline:var(--wp--custom--focus--width,2px) solid currentColor;outline-offset:var(--wp--custom--focus--offset,3px);}
/* Surface variant: contact/social actions and media navigation share a visible circle.
   The body :is specificity matches the geometry contract above. */
html:not(.special) body :is(.omedica-clinic-social-links .wp-social-link > a,.omedica-contact-action-group__secondary .omedica-icon-button,.omedica-contact-action-group__secondary .wp-social-link > a,.omedica-mobile-menu__contacts .omedica-menu-social a,.omedica-photo-lightbox .omedica-modal-close) {
 background:var(--wp--preset--color--background);color:var(--omedica-control-ink);
 border:var(--wp--custom--border--width,1px) solid var(--wp--preset--color--border);border-radius:var(--wp--custom--radius--pill);
}
html:not(.special) body :is(.omedica-clinic-social-links .wp-social-link > a,.omedica-contact-action-group__secondary .omedica-icon-button,.omedica-contact-action-group__secondary .wp-social-link > a,.omedica-mobile-menu__contacts .omedica-menu-social a,.omedica-photo-lightbox .omedica-modal-close):hover {background:var(--omedica-control-hover);border-color:var(--omedica-control-ink);}
html:not(.special) body :is(.omedica-clinic-social-links .wp-social-link > a,.omedica-contact-action-group__secondary .omedica-icon-button,.omedica-contact-action-group__secondary .wp-social-link > a,.omedica-mobile-menu__contacts .omedica-menu-social a,.omedica-photo-lightbox .omedica-modal-close):active {background:var(--wp--preset--color--border);}
html:not(.special) body .omedica-photo-lightbox .omedica-modal-close:focus-visible {outline:var(--wp--custom--focus--width,2px) solid var(--omedica-control-ink);outline-offset:var(--wp--custom--focus--offset,3px);}
html:not(.special) body .omedica-mobile-menu__expand {font-size:1.25rem;}
.omedica-mobile-menu {--omedica-drawer-gutter:var(--space-md);}
.omedica-mobile-menu .omedica-mobile-menu__header {padding-inline:var(--omedica-drawer-gutter);}
.omedica-mobile-menu .omedica-mobile-menu__view > .omedica-mobile-menu__list {padding-inline:var(--omedica-drawer-gutter);}
body :is(.omedica-clinic-social-links,.omedica-menu-social,.omedica-contact-action-group .wp-block-social-links) {list-style:none;padding:0;}
body :is(.omedica-clinic-social-links,.omedica-menu-social,.omedica-contact-action-group .wp-block-social-links) > li {list-style:none;background:transparent;}
body :is(.omedica-clinic-social-links,.omedica-menu-social,.omedica-contact-action-group .wp-block-social-links) > li::before,
body :is(.omedica-clinic-social-links,.omedica-menu-social,.omedica-contact-action-group .wp-block-social-links) > li::after {content:none;}

html:not(.special) .omedica-clinic-social-links svg {fill:currentColor;color:inherit;width:24px;height:24px;}

/* Section preview navigation: one text CTA, also used by editable section headers. */
html body .omedica-section-header {display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--space-sm) var(--space-md);}
html body .omedica-section-header > * {min-width:0;margin:0;max-width:100%;}
html body .omedica-section-header .omedica-section-controls {display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-sm);}
html body .omedica-section-header a.omedica-section-cta {display:inline-flex;align-items:center;min-height:var(--omedica-control-size,44px);max-width:100%;box-sizing:border-box;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--wp--preset--color--action);font-size:var(--wp--preset--font-size--small);font-weight:600;line-height:1.5;text-decoration:none;white-space:normal;overflow-wrap:anywhere;}
html body .omedica-section-header a.omedica-section-cta:hover {color:var(--wp--preset--color--action);background:transparent;text-decoration:underline;text-underline-offset:.2em;}
html body .omedica-section-header a.omedica-section-cta:focus-visible {outline:var(--wp--custom--focus--width,2px) solid currentColor;outline-offset:var(--wp--custom--focus--offset,3px);text-decoration:underline;}
html body .omedica-doctor-about .omedica-education-meta {margin:var(--space-xs) 0 0;font-size:var(--wp--preset--font-size--small);color:var(--wp--preset--color--text-muted);line-height:1.5;}
@media(max-width:767px){html body .omedica-section-header {flex-direction:column;align-items:flex-start;gap:var(--space-xs);}html body .omedica-section-header > p {flex-shrink:1;}}

/* CMP-CAROUSEL-CONTROLS-001: one pattern for hero, doctors, reviews and media. */
.omedica-carousel-controls {display:inline-flex;align-items:center;gap:var(--space-xs);vertical-align:middle;}
.omedica-carousel-controls[hidden] {display:none!important;}
html body .omedica-carousel-controls > button,html body .omedica-photo-controls > button {
 display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;margin:0;
 border:var(--wp--custom--border--width,1px) solid var(--wp--preset--color--border);border-radius:50%;background:var(--wp--preset--color--background);color:var(--wp--preset--color--action);font:inherit;font-size:1.4rem;line-height:1;cursor:pointer;
}
html body :is(.omedica-carousel-controls,.omedica-photo-controls) > button:hover:not(:disabled) {background:var(--omedica-control-hover);border-color:var(--omedica-control-ink);}
html body :is(.omedica-carousel-controls,.omedica-photo-controls) > button:focus-visible {outline:var(--wp--custom--focus--width,2px) solid var(--wp--preset--color--action);outline-offset:3px;}
html body :is(.omedica-carousel-controls,.omedica-photo-controls) > button:disabled {opacity:.45;cursor:default;}
/* Quiet site navigation; photo controls retain the visible media-button surface above. */
html body .omedica-carousel-controls:not(.omedica-photo-controls)>button{background:transparent;border-color:transparent;transition:background-color var(--wp--custom--motion--fast,140ms) var(--wp--custom--motion--standard,ease),border-color var(--wp--custom--motion--fast,140ms) var(--wp--custom--motion--standard,ease),opacity var(--wp--custom--motion--fast,140ms) var(--wp--custom--motion--standard,ease);}
html body .omedica-carousel-controls:not(.omedica-photo-controls)>button:is(:hover,:focus-visible):not(:disabled){background:var(--omedica-control-hover);border-color:color-mix(in srgb,var(--omedica-control-ink) 20%,transparent);}
html body .omedica-carousel-controls:not(.omedica-photo-controls)>button:active:not(:disabled){background:color-mix(in srgb,var(--omedica-control-ink) 12%,var(--omedica-control-hover));}
html body .omedica-carousel-controls:not(.omedica-photo-controls)>button:disabled{background:transparent;border-color:transparent;opacity:.35;}
@media(hover:none),(pointer:coarse){html body .omedica-carousel-controls:not(.omedica-photo-controls)>button:not(:disabled){background:var(--omedica-control-hover);border-color:color-mix(in srgb,var(--omedica-control-ink) 12%,transparent);}}
@media(prefers-reduced-motion:reduce){html body .omedica-carousel-controls:not(.omedica-photo-controls)>button{transition:none;}}
html body .omedica-section-header p:has(.omedica-carousel-controls) {display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-md);}
.omedica-about-scroll,.omedica-review-track {scrollbar-width:none;overscroll-behavior-inline:contain;}
:is(.omedica-about-scroll,.omedica-review-track)::-webkit-scrollbar {display:none;}

/* State feedback only: keep content geometry and the bespoke search SVG intact. */
:root {--omedica-feedback-duration:var(--wp--custom--motion--fast,140ms);--omedica-state-duration:var(--wp--custom--motion--normal,200ms);--omedica-state-easing:var(--wp--custom--motion--standard,ease-out);}
html body :is(.omedica-segmented-control span,.omedica-booking-ui [data-booking-visit-pair] button,.omedica-booking-ui label:has(input[type="radio"]),.omedica-home-tabs button,.omedica-ui-disclosure) {
 transition:color var(--omedica-feedback-duration) var(--omedica-state-easing),background-color var(--omedica-feedback-duration) var(--omedica-state-easing),border-color var(--omedica-feedback-duration) var(--omedica-state-easing);
}
html body .omedica-booking-patient-type .omedica-segmented-control::before,html body .omedica-booking-ui [data-booking-visit-pair]::before {transition:transform var(--omedica-state-duration) var(--omedica-state-easing);}
html body :is(.omedica-booking-ui,.omedica-contact-form,.omedica-vacancy-form) :is(input:not([type="radio"]):not([type="checkbox"]),select,textarea) {transition:border-color var(--omedica-feedback-duration) var(--omedica-state-easing),background-color var(--omedica-feedback-duration) var(--omedica-state-easing);}
html body .omedica-mobile-menu__sheet {transition:transform var(--omedica-state-duration) var(--omedica-state-easing);}
html body .omedica-mobile-menu__backdrop {transition:opacity var(--omedica-feedback-duration) var(--omedica-state-easing);}
@media(prefers-reduced-motion:reduce){
 html body :is(.omedica-segmented-control span,.omedica-booking-ui [data-booking-visit-pair] button,.omedica-booking-ui label:has(input[type="radio"]),.omedica-home-tabs button,.omedica-ui-disclosure,.omedica-mobile-menu__sheet,.omedica-mobile-menu__backdrop),
 html body .omedica-booking-patient-type .omedica-segmented-control::before,html body .omedica-booking-ui [data-booking-visit-pair]::before,
 html body :is(.omedica-booking-ui,.omedica-contact-form,.omedica-vacancy-form) :is(input,select,textarea) {transition:none;}
}
html.special body :is(.omedica-mobile-menu__sheet,.omedica-mobile-menu__backdrop) {transition:none;}

/* Horizontal lightbox swipes stay in the gallery; vertical scrolling and pinch zoom remain native. */
html body .omedica-photo-lightbox img {touch-action:pan-y pinch-zoom;}
/* The static warning also reflows when system settings reduce motion or text grows. */
html body .omedica-footer-warning__text {overflow-wrap:anywhere;}
