/**

 * Admin Styles for Wow Extensions

 */

.wowext-dashboard {
  /* background: #f9fafb; */
  /* overflow: visible so header + feature tabs can use position: sticky */
  overflow: visible;
  /* Approximate height of .wowext-dashboard-header (used with sticky nav below) */
  --wowext-sticky-header-h: 5.625rem; /* 90px */
  --wowext-admin-bar-offset: 0px;
  /* margin: 0; */
  /* margin-left: -20px; */
  -webkit-tap-highlight-color: transparent;
}

body.admin-bar .wowext-dashboard {
  --wowext-admin-bar-offset: 32px;
}

@media screen and (max-width: 782px) {
  body.admin-bar .wowext-dashboard {
    --wowext-admin-bar-offset: 46px;
  }
}
.wowext-tabs-wrapper {
  background: #fff;
}

/* SPA: hide tabs/panels excluded by server-visible list without refetching HTML */
.wowext-tab.wowext-state-hidden,
.wowext-panel.wowext-state-hidden {
  display: none !important;
}
.wowext-dashboard-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 24px;
  position: sticky;
  top: var(--wowext-admin-bar-offset, 0px);
  z-index: 100;
  box-sizing: border-box;
  border-bottom: 1px solid #e5e7eb;
  background: #fff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}

.wowext-dashboard-header-left {
  display: flex;
  align-items: center;
  gap: 12px;
}

.wowext-dashboard-header-left h1 {
  margin: 0;
  font-size: 22px;
  padding: 0;
  font-weight: 600;
}

.wowext-logo-img img {
  inline-size: 48px;
  block-size: auto;
  display: block;
}

.wowext-version {
  margin: 0;
  color: #a64cf0;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
}

.wowext-dashboard-header-right a {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-direction: row-reverse;
  font-size: 14px;
  color: #333642;
  text-decoration: none;
  font-weight: 500;
}

.wowext-dashboard-header-right a svg {
  width: 16px;
  height: 16px;
  display: block;
}

.wowext-dashboard-header-right a:hover {
  color: #000;
}

.wowext-features--empty .notice.inline {
  margin: 10px 0 0;
}

.wowext-features h2 {
  margin-top: 0;
  font-size: 20px;
}

.wowext-features-description {
  color: #646970;
  margin: 0 0 20px;
}

/* Vertical tabs wrapper */

.wowext-tabs-wrapper {
  display: flex;
  align-items: flex-start;
  /* gap: 25px; */
}
.wowext-dashboard-header-title {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
  margin: 0 0 5px;
  color: #1d2327;
}
/* Tabs (vertical list on the left) */

.wowext-tabs {
  display: flex;
  flex-direction: column;
  min-width: 240px;
  max-width: 240px;
  background: #fff;
  padding: 0;
  list-style: none;
  padding: 20px;
  box-sizing: border-box;
  align-self: flex-start;
  position: sticky;
  top: calc(
    var(--wowext-admin-bar-offset, 0px) + var(--wowext-sticky-header-h, 5.625rem)
  );
  z-index: 99;
  max-height: calc(100vh - var(--wowext-admin-bar-offset, 0px) - var(--wowext-sticky-header-h, 5.625rem) - 1rem);
  overflow: auto;
  transition: min-width 0.22s ease, max-width 0.22s ease, padding 0.22s ease;
}

.wowext-tabs.is-collapsed {
  min-width: 52px;
  max-width: 52px;
  padding: 12px 8px;
  align-items: center;
}

.wowext-tabs__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 15px;
  width: 100%;
}

.wowext-tabs.is-collapsed .wowext-tabs__head {
  justify-content: center;
  margin-bottom: 12px;
}

.wowext-tabs.is-collapsed .wowext-tab-title {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.wowext-tabs-toggle {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 1px solid #e5e7eb;
  border-radius: 3px;
  background: #fff;
  color: #5a5f6a;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.wowext-tabs-toggle:hover {
  background: #fff;
  border-color: #d1d5db;
  color: #374151;
}

.wowext-tabs-toggle__chevron {
  display: block;
  transition: transform 0.22s ease;
}

.wowext-tabs.is-collapsed .wowext-tabs-toggle__chevron {
  transform: rotate(180deg);
}

.wowext-tabs.is-collapsed .tab-label {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.wowext-tab-title {
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 3px;
  margin-bottom: 0;
  flex: 1;
  min-width: 0;
}

.wowext-tabs .wowext-tab {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px;
  border: none;
  background: 0 0;
  cursor: pointer;
  border-left: 2px solid transparent;
  transition: all 0.2s ease;
  font-size: 14px;
  color: #5a5f6a;
  text-align: left;
  width: 100%;
  box-sizing: border-box;
  font-weight: 500;
}

.wowext-tabs.is-collapsed .wowext-tab {
  justify-content: center;
  width: 100%;
  padding: 10px 6px;
  gap: 0;
}

.wowext-tabs .tab-icon svg {
  width: 16px;
  height: 16px;
  display: block;
}

.wowext-tab.is-active {
  background: #fafafa;
  border-left-color: #9149fd;
}

.wowext-panels-wrapper .submit button,
.wowext-submit button {
  background: linear-gradient(45deg, #e953c5, #9149fd) !important;
  border: 0 !important;
  padding: 10px 20px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  color: #fff !important;
  border-radius: 3px !important;
  cursor: pointer;
  transition: all 0.3s ease;
}

.wowext-panels-wrapper .submit button:hover,
.wowext-submit button:hover {
  background: linear-gradient(45deg, #9149fd, #e953c5) !important;
}
.wowext-panel-inner li.select2-search.select2-search--inline {
  margin-bottom: 0;
}
/* Panels (content on the right) */

.wowext-panels-wrapper {
  flex: 1;
  min-width: 0;
  border-left: 1px solid #f1f1f1;
  overflow: hidden;
}

.wowext-panel {
  background: #fff;
}

.wowext-panel[hidden] {
  display: none !important;
}

.wowext-panel-header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px;
}

.wowext-panel-title-description {
  flex: 1;
  min-width: 0;
}

.wowext-panel-title {
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 600;
}

.wowext-panel-description {
  margin: 0;
  color: #646970;
  font-size: 13px;
  line-height: 1.5;
}

.wowext-panel-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
}

/* Toggle switch */

.wowext-toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  user-select: none;
}

.wowext-toggle input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.wowext-toggle-slider {
  position: relative;
  display: inline-block;
  width: 44px;
  height: 24px;
  background: #c3c4c7;
  border-radius: 12px;
  transition: background 0.2s ease;
}

.wowext-toggle-slider::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 20px;
  height: 20px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  transition: transform 0.2s ease;
}

.wowext-toggle input:checked + .wowext-toggle-slider {
  background: #c94fd9;
}

.wowext-toggle
  input:checked
  + .wowext-toggle-slider::before {
  transform: translateX(20px);
}

.wowext-toggle input:focus + .wowext-toggle-slider {
  box-shadow: none;
}

.wowext-toggle-label {
  font-size: 13px;
  font-weight: 500;
  color: #2c3338;
}

/* Inline settings section (expands when toggle is ON) */

.wowext-panel-settings {
  display: none;
  padding: 20px;
  border-radius: 3px;
}

.wowext-panel-inner .select2-selection--multiple {
  border: solid #e4e6e8 1px !important;
  outline: 0 !important;
}

.wowext-panel-inner
  .select2-container--default
  .select2-selection--multiple {
  border: 1px solid #e4e6e8 !important;
  border-radius: 3px !important;
}

.wowext-panel-inner .select2-container--default .select2-search--inline .select2-search__field {
  width: 100% !important;
  display: ruby;
  margin: 10px 0 0 10px;
}
.wowext-panel-inner input.select2-search__field::placeholder {
  color: #aaa;
}
.wowext-panel-inner .form-table td {
  width: 100% !important;
  padding: 10px 0;
}

.wowext-panel-inner .form-table th {
  max-width: 200px;
  min-width: 200px;
}

.wowext-panel-inner select {
  border-radius: 3px !important;
  height: 40px;
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #e3e3e3 !important;
}

.wowext-panel-settings.is-visible {
  display: block;
}

.wowext-panel-settings .form-table {
  margin-top: 0;
}

.wowext-no-settings {
  margin: 0;
  color: #646970;
  font-style: italic;
}

/* Role Based Pricing inline settings */

.wowext-rbp-settings .notice.inline {
  margin: 0 0 16px;
}

.wowext-rbp-settings .form-table th {
  padding-top: 16px;
}

.wowext-rbp-settings .wowext-rbp-multiselect {
  min-width: 280px;
}

/* Select2 in RBP panel */

.wowext-rbp-settings .select2-container {
  min-width: 280px;
  max-width: 100%;
}

.wowext-rbp-settings .wowext-rbp-divider td {
  padding: 16px 0 0;
  border: none;
  vertical-align: top;
}

.wowext-rbp-settings .wowext-rbp-hr {
  margin: 0;
  border: none;
  border-top: 1px solid #c3c4c7;
}

.wowext-rbp-settings .wowext-rbp-role-label {
  display: inline-block;
  margin-right: 16px;
  margin-bottom: 6px;
}

/* Footer */

.wowext-rbp-settings .submit {
  margin-top: 16px;
  margin-left: 212px;
  padding: 0;
}

.wowext-submit {
  margin: 0;
  text-align: right;
}

.wowext-submit button {
  padding: 15px 20px !important;
}

/* Legacy / Role Based Pricing (e.g. on product screen) */

.role-based-pricing {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #eee;
}

.role-based-pricing h3 {
  margin-top: 0;
  margin-bottom: 15px;
  font-size: 14px;
  font-weight: 600;
}

.role-based-pricing .form-field-description {
  color: #646970;
  font-style: italic;
  margin-bottom: 15px;
}

.role-based-pricing-variation {
  margin-top: 15px;
  padding: 15px;
  background: #f9f9f9;
  border: 1px solid #ddd;
  border-radius: 3px;
}

.role-based-pricing-variation h4 {
  margin-top: 0;
  margin-bottom: 10px;
  font-size: 13px;
  font-weight: 600;
}

.role-based-pricing-variation .form-row {
  margin-bottom: 10px;
}

.role-based-pricing-variation .form-row label {
  font-weight: 600;

  font-size: 12px;
}

.wowext-footer {
  background: #fff;
  padding: 20px;
  text-align: center;
  border-block-start: 1px solid #f3f3f3;
}

.wowext-footer p {
  margin: 0;
  color: #5c5f6d;
  font-size: 14px;
}

.wowext-footer__onboarding {
  margin-top: 8px;
}

.wowext-footer__onboarding .button-link {
  font-size: 13px;
  color: #69727d;
}

.wowext-footer__onboarding .button-link:hover {
  color: #a64cf0;
}

.wowext-dashboard .notice.notice-success {
    margin: 30px 0 0;
	position: fixed;
	top: 32px;
	right: 32px;

}

.wowext-dashboard .notice.notice-success.is-dismissible {
    margin-top: 82px !important;
}

/* AJAX save feedback: fixed so the page layout does not jump / blink */
.wowext-ajax-notice:not([hidden]) {
  position: fixed;
  z-index: 100000;
  top: 48px;
  right: 20px;
  margin: 0;
  max-width: 28rem;
  pointer-events: auto;
}

.wowext-ajax-notice .notice {
  position: relative;
  top: auto;
  right: auto;
  left: auto;
  margin: 0 !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
}

/* ── One Page Checkout settings panel (accessible, responsive) ─── */

.wowext-opc-settings {
  --opc-space-xs: 8px;
  --opc-space-sm: 12px;
  --opc-space-md: 16px;
  --opc-space-lg: 24px;
  --opc-radius: 3px;
  --opc-border: #e5e7eb;
  --opc-text: #111827;
  --opc-text-muted: #4b5563;
  --opc-accent: #9149fd;
  --opc-accent-2: #e953c5;
  --opc-surface-muted: #f9fafb;
  max-width: 100%;
  margin: 0;
}

.wowext-opc-settings__stack {
  display: flex;
  flex-direction: column;
  gap: var(--opc-space-lg);
}

.wowext-opc-card {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: var(--opc-radius);
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
  padding: var(--opc-space-lg);
  margin: 0;
}

.wowext-opc-card--muted {
  background: #fafbfc;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.04);
}

.wowext-opc-card__header {
  margin: 0 0 var(--opc-space-md);
  padding-bottom: var(--opc-space-sm);
  border-bottom: 1px solid #f3f4f6;
}

.wowext-opc-card__title {
  margin: 0 0 var(--opc-space-xs);
  font-size: 20px;
  font-weight: 600;
  color: var(--opc-text);
  letter-spacing: -0.015em;
  line-height: 1.3;
  text-transform: capitalize;
}

.wowext-opc-card__intro {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--opc-text-muted);
}

.wowext-opc-inline-notice {
  margin: 0 0 var(--opc-space-md);
  padding: var(--opc-space-sm) var(--opc-space-md);
  /* background: linear-gradient(180deg, #f8f5ff 0%, #faf8ff 100%); */
  border: 1px solid #e4dcfa;
  border-radius: 3px;
  /* border-left: 3px solid var(--opc-accent); */
  box-shadow: 0 1px 2px rgba(145, 73, 253, 0.06);
}

.wowext-opc-inline-notice__title {
  margin: 0 0 6px;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--opc-accent);
}

.wowext-opc-inline-notice__text {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--opc-text-muted);
}

.wowext-opc-fields {
  display: flex;
  flex-direction: column;
  gap: 0;
  border: 1px solid #e2e8f0;
  border-radius: 3px;
  /* overflow visible so tip bubbles (above the trigger) are not clipped */
  overflow: visible;
  background: #fff;
}

.wowext-opc-fields > *:first-child {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}

.wowext-opc-fields > *:last-child {
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}

.wowext-opc-field {
  display: grid;
  grid-template-columns: minmax(10rem, 1fr) minmax(0, 22rem);
  gap: var(--opc-space-sm) var(--opc-space-lg);
  align-items: center;
  padding: 14px 16px;
  margin: 0;
  background: #fff;
}

.wowext-opc-fields > .wowext-opc-field + .wowext-opc-field {
  border-top: 1px solid #eef0f4;
}

.wowext-opc-field:has(.wowext-opc-tip:hover),
.wowext-opc-field:has(.wowext-opc-tip:focus-within) {
  position: relative;
  z-index: 3;
}

.wowext-opc-fields > .wowext-opc-field:nth-child(even) {
  background: #fafafa;
}

.wowext-opc-field--toggle {
  grid-template-columns: 1fr auto;
  align-items: center;
}

.wowext-opc-field--parent-toggle {
  background: linear-gradient(180deg, #f8f9ff 0%, #ffffff 72%) !important;
  border-bottom: 2px solid #e2e6ef;
  box-shadow: inset 0 -1px 0 rgba(145, 73, 253, 0.06);
}

.wowext-opc-field--parent-toggle .wowext-opc-field__text-label {
  font-size: 0.9375rem;
}

.wowext-opc-subfields-shell {
  background: #fafafa;
  border-top: 1px solid #eef1f7;
  padding: var(--opc-space-sm) 0 0;
}

.wowext-opc-subfields {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-top: var(--opc-space-sm);
  border: 1px solid #e8eaef;
  border-radius: 3px;
  overflow: visible;
}

.wowext-opc-subfields > .wowext-opc-field:first-child {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}

.wowext-opc-subfields > .wowext-opc-field:last-child {
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}

.wowext-opc-subfields-shell .wowext-opc-subfields {
  margin: 0 var(--opc-space-md) var(--opc-space-md) var(--opc-space-md);
  margin-top: 0;
  border: 1px solid #dbe0ea;
  border-radius: 3px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
}

.wowext-opc-subfields > .wowext-opc-field {
  padding: var(--opc-space-md);
  margin: 0;
  background: #fff;
}

.wowext-opc-subfields > .wowext-opc-field:nth-child(even) {
  background: #fafafa;
}

.wowext-opc-subfields > .wowext-opc-field + .wowext-opc-field {
  border-top: 1px solid #eef0f4;
}

/* Label + help: one row; label wraps, tip stays on the right (vertically centered). */
.wowext-opc-field__label-row {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.wowext-opc-field__text-label {
  flex: 1 1 auto;
  min-width: 0;
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--opc-text);
  line-height: 1.4;
  margin: 0;
}

p.wowext-opc-field__text-label {
  margin: 0;
}

.wowext-opc-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.wowext-opc-tip {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.wowext-opc-tip__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  margin: 0;
  padding: 0;
  border: 1px solid var(--opc-border);
  border-radius: 50%;
  background: #fff;
  color: var(--opc-text-muted);
  cursor: help;
  transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.wowext-opc-tip__btn svg {
  display: block;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}

.wowext-opc-tip__btn:hover {
  color: var(--opc-accent);
  border-color: #c4b5fd;
  background: #faf5ff;
}

.wowext-opc-tip__bubble {
  position: absolute;
  z-index: 100050;
  left: 50%;
  bottom: 100%;
  transform: translateX(-50%) translateY(-8px);
  width: min(18rem, 70vw);
  padding: var(--opc-space-sm) var(--opc-space-md);
  background: var(--opc-text);
  color: #fff;
  font-size: 0.8125rem;
  font-weight: 400;
  line-height: 1.45;
  border-radius: 3px;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.18);
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease, visibility 0.15s ease;
}

.wowext-opc-tip__bubble::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -6px;
  border: 6px solid transparent;
  border-top-color: var(--opc-text);
}

.wowext-opc-tip:hover .wowext-opc-tip__bubble,
.wowext-opc-tip:focus-within .wowext-opc-tip__bubble {
  visibility: visible;
  opacity: 1;
}

.wowext-opc-switch {
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  flex-shrink: 0;
}

.wowext-opc-switch__input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
}

.wowext-opc-switch__track {
  display: block;
  width: 44px;
  height: 26px;
  background: #d1d5db;
  border-radius: 13px;
  position: relative;
  transition: background 0.2s ease;
}

.wowext-opc-switch__track::after {
  content: "";
  position: absolute;
  width: 22px;
  height: 22px;
  background: #fff;
  border-radius: 50%;
  top: 2px;
  left: 2px;
  transition: transform 0.2s ease;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.12);
}

.wowext-opc-switch__input:checked + .wowext-opc-switch__track {
  background: linear-gradient(45deg, var(--opc-accent-2), var(--opc-accent));
}

.wowext-opc-switch__input:checked + .wowext-opc-switch__track::after {
  transform: translateX(18px);
}

.wowext-opc-switch__input:disabled + .wowext-opc-switch__track {
  opacity: 0.5;
  cursor: not-allowed;
}

@media (max-width: 640px) {
  .wowext-opc-field {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .wowext-opc-field--toggle {
    grid-template-columns: 1fr auto;
  }

  .wowext-opc-tip__bubble {
    left: 0;
    transform: translateX(0) translateY(-8px);
  }

  .wowext-opc-tip__bubble::after {
    left: 14px;
    margin-left: 0;
  }
}

.wowext-opc-field__control {
  min-width: 0;
}

.wowext-opc-field__control select,
.wowext-opc-field__control input[type="text"],
.wowext-opc-field__control input[type="number"] {
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
  border-radius: 3px;
  border: 1px solid var(--opc-border);
  padding: 8px 12px;
  font-size: 14px;
  line-height: 1.4;
  color: var(--opc-text);
  background: #fff;
}

.wowext-opc-field__control select {
  min-height: 40px;
}

.wowext-opc-field__control input:focus-visible,
.wowext-opc-field__control select:focus-visible {
  border-color: #c4b5fd;
}

.wowext-opc-reference {
  margin: 0;
  /* padding: 0 0 0 1.25rem; */
  font-size: 0.875rem;
  line-height: 1.7;
  color: var(--opc-text-muted);
}

.wowext-opc-reference li {
  margin-bottom: var(--opc-space-sm);
}

.wowext-opc-reference li:last-child {
  margin-bottom: 0;
}

.wowext-opc-reference code {
  font-size: 0.8125rem;
  padding: 2px 6px;
  background: #fff;
  border: 1px solid var(--opc-border);
  border-radius: 3px;
  color: #5b21b6;
  word-break: break-word;
}

.wowext-opc-card--muted .wowext-opc-reference code {
  background: #fff;
}

.wowext-opc-actions {
  padding-top: var(--opc-space-sm);
}

.wowext-opc-actions .button-primary {
  background: linear-gradient(45deg, var(--opc-accent-2), var(--opc-accent)) !important;
  border: none !important;
  padding: 10px 22px !important;
  font-weight: 600 !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  min-height: 44px;
}

.wowext-opc-actions .button-primary:hover,
.wowext-opc-actions .button-primary:focus,
.wowext-opc-actions .button-primary:active {
  filter: brightness(1.06);
  box-shadow: none !important;
}

/* No browser focus ring / interaction box-shadow inside the extensions dashboard UI. */
.wowext-dashboard *:focus,
.wowext-dashboard *:focus-visible,
.wowext-dashboard *:active {
  outline: none !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
}

/* ── Role Based Pricing (reuses One Page Checkout field layout) ─── */

.wowext-rbp-skin {
  --opc-text-muted: #4b5563;
  --opc-border: #e5e7eb;
  --opc-space-sm: 12px;
}

.wowext-rbp-skin .wowext-opc-field__control .description {
  margin: 8px 0 0;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: var(--opc-text-muted, #4b5563);
}

.wowext-rbp-skin .wowext-opc-field__control fieldset {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 20px;
  margin: 0;
  padding: 0;
  border: 0;
}

.wowext-rbp-skin .wowext-opc-field__control fieldset label {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 6px;
  margin: 0;
  font-size: 0.875rem;
  font-weight: 500;
  color: #111827;
  cursor: pointer;
}

.wowext-rbp-skin .wowext-opc-field__control fieldset input[type="radio"] {
  margin: 0;
  flex-shrink: 0;
}

.wowext-rbp-skin .wowext-rbp-section-divider {
  height: 0;
  margin: 10px 0;
  border: 0;
  border-top: 1px solid var(--opc-border, #e5e7eb);
  background: transparent;
  padding: 0;
  width: 100%;
}

.wowext-rbp-skin .select2-container {
  width: 100% !important;
  max-width: 100%;
}

.wowext-rbp-skin
  .select2-container--default
  .select2-selection--single,
.wowext-rbp-skin
  .select2-container--default
  .select2-selection--multiple {
  min-height: 40px;
  border-radius: 3px !important;
  border-color: var(--opc-border, #e5e7eb) !important;
  align-items: center;
}

.wowext-rbp-skin
  .select2-container--default
  .select2-selection--single
  .select2-selection__rendered {
  line-height: 38px;
  padding-left: 12px;
  font-size: 0.875rem;
  color: var(--opc-text, #111827);
}

.wowext-dashboard .select2-selection__choice,
.wowext-dashboard .select2-search--inline .select2-search__field {
  border-radius: 3px !important;
}

.wowext-rbp-settings .wowext-opc-field.wowext-rbp-field--section-top {
  padding-top: 16px;
  background: #fafafa;
}

.wowext-rbp-notice--success {
  margin: 0 0 16px;
  padding: 12px 16px;
  background: linear-gradient(180deg, #ecfdf5 0%, #f0fdf4 100%);
  border: 1px solid #a7f3d0;
  border-left: 3px solid #10b981;
  border-radius: 3px;
  font-size: 0.875rem;
  color: #065f46;
}

#woocommerce-product-data .wowext-rbp-skin--product {
  margin: 0;
  max-width: none;
  width: 100%;
  box-sizing: border-box;
}

#woocommerce-product-data .wowext-rbp-skin--product .wowext-opc-card {
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}

/* One Page Checkout product General-tab field styles live in src/css/wowext-opc-wc-product-admin.css. */
