/* WooCommerce Content Preferences - Dark Theme Styles v1.1.0 */

/* Scoped CSS variables (safe names) */
:root {
  --wc-pref-bg: #0c1116;         /* site background (reference) */
  --wc-pref-card: #131a22;       /* card background */
  --wc-pref-card-alt: #0f151c;   /* child rows */
  --wc-pref-border: #243041;     /* subtle border */
  --wc-pref-text: #e6edf3;       /* primary text */
  --wc-pref-muted: #9fb1c3;      /* muted text */
  --wc-pref-accent: #60a5fa;     /* checkbox accent / focus ring */
  --wc-pref-hover: #1a2430;      /* row hover */
}

/* Preferences tree */
.wc-pref-tree {
  display: grid;
  gap: 10px;
}

/* Row cards */
.wc-pref-row {
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: 8px;
  padding: 12px 14px;
  border: 1px solid var(--wc-pref-border);
  border-radius: 10px;
  background: var(--wc-pref-card);
  color: var(--wc-pref-text);
  transition: background .2s ease, border-color .2s ease, transform .06s ease;
}

.wc-pref-row.small {
  padding-left: 26px;
  background: var(--wc-pref-card-alt);
}

.wc-pref-row:hover {
  background: var(--wc-pref-hover);
  border-color: #2c3c51;
}

/* Term label */
.wc-pref-term {
  font-weight: 700;
  letter-spacing: .1px;
  color: var(--wc-pref-text);
}

/* Like/Hide labels */
.wc-pref-actions label {
  margin-left: 8px;
  color: var(--wc-pref-muted);
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  user-select: none;
}

.wc-pref-actions label:hover {
  color: var(--wc-pref-text);
}

/* Checkboxes: modern accent + accessible focus */
.wc-pref-row input[type="checkbox"] {
  width: 18px;
  height: 18px;
  accent-color: var(--wc-pref-accent);
  cursor: pointer;
  border-radius: 4px;
}

.wc-pref-row input[type="checkbox"]:focus-visible {
  outline: 2px solid transparent;
  box-shadow: 0 0 0 3px color-mix(in oklab, var(--wc-pref-accent) 60%, #ffffff 0%);
}

/* “For You” section (dark) */
.wc-for-you {
  margin: 20px 0 10px;
  padding: 14px 0 6px;
  border-top: 1px solid var(--wc-pref-border);
  border-bottom: 1px solid var(--wc-pref-border);
  background: transparent;
}

.wc-for-you__title {
  font-size: 1.4rem;
  margin: 0 0 12px;
  color: var(--wc-pref-text);
}

.wc-for-you__grid .products {
  margin-bottom: 0;
}

/* High contrast users */
@media (prefers-contrast: more) {
  .wc-pref-row { border-color: #3a4d66; }
  .wc-pref-row:hover { border-color: #4c6486; }
  .wc-pref-actions label { color: #c7d5e2; }
}
