/**
 * HPCI plugin front-end styling.
 *
 * Brand-aligns the output of the site's plugins so they match the theme:
 * Breadcrumb NavXT, Ninja Forms, Ninja Tables, AddToAny, Members.
 * All colours reference the theme.json tokens.
 */

/* ---- Breadcrumb NavXT (and the theme fallback) ---- */
.hpci-breadcrumbs {
  font-size: .95rem;
  color: var(--wp--preset--color--muted);
  margin-bottom: 1rem;
}
.hpci-breadcrumbs a { color: var(--wp--preset--color--pink-ink); }
.hpci-breadcrumbs .breadcrumbs > * + *::before,
.hpci-breadcrumbs > * + *::before { content: "›"; margin: 0 .4rem; color: var(--wp--preset--color--muted); }

/* ---- Ninja Forms ---- */
.nf-form-cont .nf-field-label label,
.nf-form-cont label { font-weight: 700 !important; color: var(--wp--preset--color--green) !important; }
.nf-form-cont input[type=text],
.nf-form-cont input[type=email],
.nf-form-cont input[type=tel],
.nf-form-cont textarea,
.nf-form-cont select {
  border: 2px solid rgba(25,64,29,.25) !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: var(--wp--preset--color--ink) !important;
  padding: .7rem .9rem !important;
  box-shadow: none !important;
}
.nf-form-cont input:focus,
.nf-form-cont textarea:focus,
.nf-form-cont select:focus {
  border-color: var(--wp--preset--color--green) !important;
  outline: 3px solid var(--wp--preset--color--pink) !important;
  outline-offset: 1px !important;
}
.nf-form-cont input[type=button],
.nf-form-cont .nf-element[type=button] {
  background: var(--wp--preset--color--pink-ink) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  padding: .85rem 1.6rem !important;
}
.nf-form-cont input[type=button]:hover { background: var(--wp--preset--color--green) !important; }
.nf-error-msg { color: #a30038 !important; font-weight: 700; }

/* ---- Ninja Tables ---- */
.ninja_table_wrapper table,
table.foo-table {
  border-radius: 12px; overflow: hidden; border-collapse: collapse; width: 100%;
}
.ninja_table_wrapper thead th,
table.foo-table thead th {
  background: var(--wp--preset--color--green) !important;
  color: #fff !important;
  text-align: left;
}
.ninja_table_wrapper tbody tr:nth-child(even) { background: var(--wp--preset--color--cream); }
.ninja_table_wrapper td, .ninja_table_wrapper th { padding: .7rem .9rem; }

/* ---- AddToAny share buttons ---- */
.addtoany_share_save_container { display: inline-flex; gap: .3rem; align-items: center; }
.a2a_kit a { border-radius: 8px; overflow: hidden; }

/* ---- Members: restricted-content notice ---- */
.members-access-error,
.members-access-denied-message {
  background: var(--wp--preset--color--cream);
  border: 2px solid var(--wp--preset--color--green);
  border-radius: 14px;
  padding: 1.25rem 1.5rem;
  color: var(--wp--preset--color--ink);
}

/* ---- FV Player / oEmbed: keep videos responsive ---- */
.fluid-width-video-wrapper, .wp-block-embed__wrapper { border-radius: 14px; overflow: hidden; }

/* High-contrast overrides for plugin output */
html[data-contrast="high"] .nf-form-cont input,
html[data-contrast="high"] .nf-form-cont textarea,
html[data-contrast="high"] .nf-form-cont select { border-color: #000 !important; }
html[data-contrast="high"] .ninja_table_wrapper thead th { background: #000 !important; }
