/* Opt-in Elementor interaction roles. Zero changes to ordinary widgets. */
.prk-ui-panel[hidden] { display: none !important; }
.prk-ui-trigger { cursor: pointer; }
.prk-ui-trigger:focus-visible,
.prk-ui-trigger [role="tab"]:focus-visible,
.prk-ui-trigger [role="button"]:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.prk-ui-panel[role="tabpanel"]:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
/* Designers can target .prk-ui-is-active / .prk-ui-is-open in Elementor styles. */
/* Only during WAAPI transitions: never constrain the container's natural size permanently. */
[data-prk-ui-role="panel"][data-prk-ui-animating] { overflow: hidden; box-sizing: border-box; will-change: height, opacity; }
/* Optional detached navigation. The placeholder maintains original layout dimensions. */
.prk-ui-sticky-placeholder[hidden] { display: none !important; }
.prk-ui-navigation.prk-ui-sticky-is-fixed {
  box-sizing: border-box;
  background: var(--prk-color-surface, #fff);
  box-shadow: 0 5px 22px rgba(17, 24, 39, .075);
  isolation: isolate;
  animation: prk-ui-sticky-arrive 170ms ease-out both;
}
@keyframes prk-ui-sticky-arrive {
  from { opacity: .9; transform: translate3d(0,-5px,0); }
  to { opacity: 1; transform: translate3d(0,0,0); }
}
/* Keep active highlights responsive without forcing a visual language. */
.prk-ui-trigger { transition: color 140ms ease-out, background-color 140ms ease-out, border-color 140ms ease-out; }
@media (prefers-reduced-motion: reduce) {
  .prk-ui-navigation.prk-ui-sticky-is-fixed { animation: none; }
  .prk-ui-trigger { transition: none; }
}
/* Secondary editor-only row previews use real PHP Dynamic Data with no editable Elementor IDs. */
[data-prk-repeater-preview="readonly"] { position: relative; }
body.elementor-editor-active [data-prk-repeater-preview="readonly"] { outline: 1px dashed rgba(130, 130, 180, .28); }
