/* Frontend only. Shared appearance based on "Mitteilung Bestzeiten".
 * Forms on pages containing Team LCP also match outside theme content wrappers,
 * including Elementor/reusable blocks and document submission/search forms.
 */
:is(form.lcp-frontend-form, .lcp-team, body.lcp-button-page .entry-content, body.lcp-button-page .wp-block-post-content, body:is(.lcp-button-page, :has(.lcp-team)) form)
  :is(button, input[type="submit"], input[type="button"], input[type="reset"], a.button, .lcp-button, .wp-block-button__link, .wp-element-button),
.lcp-team input:is([type="submit"], [type="button"], [type="reset"]):not([type="checkbox"]):not([type="range"]):not([type="file"]),
.lcp-frontend-action,
a.lcp-button {
  appearance: none;
  -webkit-appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: auto;
  max-width: 100%;
  min-height: 60px;
  height: auto;
  margin: 0;
  padding: 18px 26px;
  border: 1px solid transparent;
  border-radius: 12px;
  background: #124e65;
  color: #fff !important;
  -webkit-text-fill-color: #fff;
  box-shadow: none;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 750;
  font-style: normal;
  line-height: 1.3;
  letter-spacing: normal;
  text-align: center;
  text-decoration: none !important;
  text-transform: none;
  white-space: normal;
  overflow-wrap: anywhere;
  vertical-align: middle;
  cursor: pointer;
  transition: background-color .2s, box-shadow .2s;
}
:is(form.lcp-frontend-form, .lcp-team, body.lcp-button-page .entry-content, body.lcp-button-page .wp-block-post-content, body:is(.lcp-button-page, :has(.lcp-team)) form)
  :is(button, input[type="submit"], input[type="button"], input[type="reset"], a.button, .lcp-button, .wp-block-button__link, .wp-element-button):hover,
.lcp-team input:is([type="submit"], [type="button"], [type="reset"]):not([type="checkbox"]):not([type="range"]):not([type="file"]):hover,
.lcp-frontend-action:hover,
a.lcp-button:hover {
  background: #0b3545;
  box-shadow: 0 6px 20px #0b354524;
}
:is(form.lcp-frontend-form, .lcp-team, body.lcp-button-page .entry-content, body.lcp-button-page .wp-block-post-content, body:is(.lcp-button-page, :has(.lcp-team)) form)
  :is(button, input[type="submit"], input[type="button"], input[type="reset"], a.button, .lcp-button, .wp-block-button__link, .wp-element-button):focus-visible,
.lcp-frontend-action:focus-visible,
a.lcp-button:focus-visible {
  outline: 3px solid #e6ad48;
  outline-offset: 4px;
}
:is(form.lcp-frontend-form, .lcp-team, body.lcp-button-page .entry-content, body.lcp-button-page .wp-block-post-content, body:is(.lcp-button-page, :has(.lcp-team)) form)
  :is(button, input[type="submit"], input[type="button"], input[type="reset"]):disabled {
  opacity: .55;
  cursor: not-allowed;
  box-shadow: none;
}
/* File pickers keep their native operation and share the same visual style. */
:is(form.lcp-frontend-form, .lcp-team, body.lcp-button-page .entry-content, body.lcp-button-page .wp-block-post-content, body:is(.lcp-button-page, :has(.lcp-team)) form)
  input[type="file"]::file-selector-button {
  margin: 0 10px 6px 0;
  padding: 18px 26px;
  min-height: 60px;
  max-width: 100%;
  border: 1px solid transparent;
  border-radius: 12px;
  background: #124e65;
  color: #fff;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 750;
  line-height: 1.3;
  white-space: normal;
  cursor: pointer;
}
:is(form.lcp-frontend-form, .lcp-team, body.lcp-button-page .entry-content, body.lcp-button-page .wp-block-post-content, body:is(.lcp-button-page, :has(.lcp-team)) form)
  input[type="file"]::file-selector-button:hover { background: #0b3545; }
/* Compact controls stay inside their input row on small screens. */
body .lcp-team .lcp-password-wrap button.lcp-password-toggle {
  flex-shrink: 0;
  min-height: 32px;
  padding: 5px 10px;
  font-size: .76rem;
}
@media (prefers-reduced-motion: reduce) {
  .lcp-team button, .lcp-team .lcp-button { transition: none; }
}

/* Document forms can be rendered on a separate page by another shortcode. */
.lcp-frontend-action {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 60px !important;
  height: auto !important;
  padding: 18px 26px !important;
  border: 1px solid transparent !important;
  border-radius: 12px !important;
  background: #124e65 !important;
  color: #fff !important;
  font-family: inherit !important;
  font-size: 1rem !important;
  font-weight: 750 !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
  white-space: normal !important;
  box-shadow: none !important;
}
.lcp-frontend-action:hover { background: #0b3545 !important; }
.lcp-frontend-action:disabled { opacity: .55; cursor: not-allowed; }
