/* Sigil visual theme component overrides: component rules through theme tokens only. */
html[data-theme] {
  background: var(--color-bg-primary);
  color-scheme: light;
}

html[data-theme="aurum"] {
  color-scheme: dark;
}

html[data-theme] body,
html[data-theme] .wp-site-blocks {
  background: var(--color-bg-primary);
  color: var(--color-text-primary);
  font-family: var(--font-body);
}

html[data-theme] h1,
html[data-theme] h2,
html[data-theme] h3,
html[data-theme] .sigilarium-title,
html[data-theme] .sigilarium-hero-title,
html[data-theme] .sigilarium-section-title {
  color: var(--color-text-primary);
  font-family: var(--font-display);
}

html[data-theme] .sigilarium-text-outline,
html[data-theme] h1,
html[data-theme] h2,
html[data-theme] .wp-block-site-title,
html[data-theme] .site-title,
html[data-theme] .sigilarium-brand,
html[data-theme] .sigilarium-brand-title,
html[data-theme] .sigilarium-hero-title,
html[data-theme] h1,
html[data-theme] .sigilarium-page h1,
html[data-theme] .sigilarium-page h2,
html[data-theme] .sigilarium-system-panel h2,
html[data-theme] .sigilarium-system-workspace h2,
html[data-theme] .sigilarium-report-section-title,
html[data-theme] .sigilarium-section-title,
html[data-theme] .sigilarium-title,
html[data-theme] .result-number,
html[data-theme] .destiny-number,
html[data-theme] .metric-value,
html[data-theme] .matrix-node.main,
html[data-theme] .matrix-node.center,
html[data-theme] .hd-metric strong {
  -webkit-text-stroke: var(--text-outline-size) var(--text-outline-color);
  paint-order: stroke fill;
  text-shadow: var(--text-outline-shadow);
}

html[data-theme] .sigilarium-hero-title,
html[data-theme] .sigilarium-page h1,
html[data-theme] .result-number,
html[data-theme] .destiny-number,
html[data-theme] .matrix-node.main,
html[data-theme] .matrix-node.center {
  text-shadow: var(--text-outline-strong);
}

html[data-theme] a {
  color: var(--color-accent-primary);
}

html[data-theme] .sigilarium-app,
html[data-theme] .sigilarium-page,
html[data-theme] .sigilarium-shell,
html[data-theme] .sigilarium-main,
html[data-theme] .sigilarium-account,
html[data-theme] .sigilarium-auth,
html[data-theme] .sigilarium-dashboard {
  background: var(--color-bg-primary);
  color: var(--color-text-primary);
}

html[data-theme] .sigilarium-panel,
html[data-theme] .sigilarium-card,
html[data-theme] .overview-card,
html[data-theme] .profile-card,
html[data-theme] .metric-card,
html[data-theme] .sigilarium-report-section,
html[data-theme] .sigilarium-report-card,
html[data-theme] .sigilarium-bazi-description-card,
html[data-theme] .sigilarium-line-card,
html[data-theme] .compatibility-card,
html[data-theme] .cabinet-card,
html[data-theme] .wp-block-group.has-background {
  background: var(--color-surface);
  border-color: var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  color: var(--color-text-primary);
}

html[data-theme] .sigilarium-panel.is-elevated,
html[data-theme] .sigilarium-card.is-elevated,
html[data-theme] .sigilarium-report-section[open] {
  background: var(--color-surface-elevated);
  box-shadow: var(--shadow-md);
}

html[data-theme] .sigilarium-muted,
html[data-theme] .sigilarium-subtitle,
html[data-theme] .sigilarium-meta,
html[data-theme] .sigilarium-report-section-subtitle,
html[data-theme] .sigilarium-report-card span,
html[data-theme] .overview-card p,
html[data-theme] .profile-card p {
  color: var(--color-text-secondary);
}

html[data-theme] input,
html[data-theme] select,
html[data-theme] textarea,
html[data-theme] .sigilarium-input,
html[data-theme] .sigilarium-select {
  background: var(--color-surface-elevated);
  border-color: var(--color-border);
  border-radius: var(--radius-sm);
  color: var(--color-text-primary);
  box-shadow: none;
}

html[data-theme] input:focus,
html[data-theme] select:focus,
html[data-theme] textarea:focus,
html[data-theme] .sigilarium-input:focus,
html[data-theme] .sigilarium-select:focus {
  border-color: var(--color-accent-primary);
  box-shadow: 0 0 0 3px var(--color-glow);
  outline: none;
}

html[data-theme] button,
html[data-theme] .button,
html[data-theme] .wp-element-button,
html[data-theme] .sigilarium-button,
html[data-theme] .sigilarium-btn,
html[data-theme] .sigilarium-action,
html[data-theme] input[type="submit"] {
  border-radius: var(--radius-sm);
}

html[data-theme] .button-primary,
html[data-theme] .sigilarium-button-primary,
html[data-theme] .sigilarium-btn-primary,
html[data-theme] .wp-element-button,
html[data-theme] input[type="submit"] {
  background: var(--color-accent-primary);
  border-color: var(--color-accent-primary);
  color: var(--color-surface-elevated);
}

html[data-theme] .sigilarium-button-secondary,
html[data-theme] .sigilarium-btn-secondary,
html[data-theme] .button-secondary {
  background: var(--color-bg-secondary);
  border-color: var(--color-border);
  color: var(--color-text-primary);
}

html[data-theme] .sigilarium-badge,
html[data-theme] .sigilarium-pill,
html[data-theme] .status-pill,
html[data-theme] .tag-pill {
  background: var(--color-bg-secondary);
  border-color: var(--color-border);
  color: var(--color-text-secondary);
}

html[data-theme] .is-success,
html[data-theme] .sigilarium-success {
  color: var(--color-success);
}

html[data-theme] .is-warning,
html[data-theme] .sigilarium-warning {
  color: var(--color-warning);
}

html[data-theme] .is-danger,
html[data-theme] .sigilarium-danger,
html[data-theme] .error,
html[data-theme] .api-error {
  color: var(--color-danger);
}

html[data-theme] .sigilarium-report-section-summary,
html[data-theme] .sigilarium-nav a,
html[data-theme] .sigilarium-tab,
html[data-theme] .sigilarium-sidebar a {
  border-radius: var(--radius-sm);
}

html[data-theme] .sigilarium-tab.is-active,
html[data-theme] .sigilarium-sidebar a.is-active,
html[data-theme] .sigilarium-nav a[aria-current="page"] {
  background: var(--color-accent-primary);
  color: var(--color-surface-elevated);
}

/* Patch 40: broad legacy Sigilarium coverage through shared tokens. */
html[data-theme] .sigilarium-header,
html[data-theme] .sigilarium-hero,
html[data-theme] .sigilarium-section-header,
html[data-theme] .sigilarium-home-hero,
html[data-theme] .sigilarium-portrait-card,
html[data-theme] .sigilarium-card,
html[data-theme] .sigilarium-soft-card,
html[data-theme] .sigilarium-accent-card,
html[data-theme] .sigilarium-metric-card,
html[data-theme] .sigilarium-profile-card,
html[data-theme] .sigilarium-person-card,
html[data-theme] .sigilarium-compatibility-card,
html[data-theme] .sigilarium-placeholder,
html[data-theme] .sigilarium-empty-state,
html[data-theme] .sigilarium-profile-metric-grid article,
html[data-theme] .sigilarium-hero-start-card,
html[data-theme] .sigilarium-mini-grid article,
html[data-theme] .sigilarium-advice-grid article,
html[data-theme] .sigilarium-process-card,
html[data-theme] .sigilarium-connection-list li,
html[data-theme] .sigilarium-profile-details div,
html[data-theme] .topbar,
html[data-theme] .profile-panel,
html[data-theme] .content-panel,
html[data-theme] .sigilarium-calculator-topbar,
html[data-theme] .sigilarium-profile-summary,
html[data-theme] .sigilarium-profile-editor,
html[data-theme] .sigilarium-system-sidebar,
html[data-theme] .sigilarium-system-workspace,
html[data-theme] .city-suggestions,
html[data-theme] .city-option,
html[data-theme] .saved-profile,
html[data-theme] .tab,
html[data-theme] .health-table-wrap,
html[data-theme] .table-wrap,
html[data-theme] .selector-panel,
html[data-theme] .summary-box,
html[data-theme] .compat-panel,
html[data-theme] .insight-card,
html[data-theme] .score-card,
html[data-theme] .future-grid article,
html[data-theme] .energy-card,
html[data-theme] .overview-hero,
html[data-theme] .overview-card,
html[data-theme] .action-card,
html[data-theme] .timeline-card,
html[data-theme] .style-tile,
html[data-theme] .month-card,
html[data-theme] .overview-note,
html[data-theme] .channel-item,
html[data-theme] .compat-item,
html[data-theme] .forecast-item,
html[data-theme] .jyotish-reading-card,
html[data-theme] .jyotish-card,
html[data-theme] .rashi-card,
html[data-theme] .dasha-item,
html[data-theme] .numerology-grid article,
html[data-theme] .hd-metric,
html[data-theme] .hd-info-card,
html[data-theme] .hd-compat-panel,
html[data-theme] .bodygraph-panel,
html[data-theme] .hd-side,
html[data-theme] .gate-summary-card,
html[data-theme] .sigilarium-product-panel,
html[data-theme] .sigilarium-environment-card,
html[data-theme] .sigilarium-analysis-card,
html[data-theme] .sigilarium-check-list li,
html[data-theme] .sigilarium-compact-list div,
html[data-theme] .sigilarium-selector-panel,
html[data-theme] .sigilarium-penta-flow,
html[data-theme] .sigilarium-penta-list label,
html[data-theme] .sigilarium-compatibility-row-grid,
html[data-theme] .sigilarium-compatibility-cell.is-note,
html[data-theme] .sigilarium-interaction-item,
html[data-theme] .sigilarium-compatibility-guidance div,
html[data-theme] .sigilarium-history-list a,
html[data-theme] .sigilarium-pricing-card,
html[data-theme] .sigilarium-payment-note,
html[data-theme] .sigilarium-auth-copy,
html[data-theme] .sigilarium-auth-form,
html[data-theme] .sigilarium-admin-table-wrap,
html[data-theme] .sigilarium-account-state-card,
html[data-theme] .sigilarium-state-list div,
html[data-theme] .sigilarium-numerology-line-card,
html[data-theme] .sigilarium-bazi-balance-card,
html[data-theme] .sigilarium-report-description-pair .sigilarium-hd-description-section,
html[data-theme] .sigilarium-report-technical {
  background: var(--color-surface);
  border-color: var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  color: var(--color-text-primary);
}

html[data-theme] .sigilarium-soft-card,
html[data-theme] .sigilarium-placeholder,
html[data-theme] .sigilarium-empty-state,
html[data-theme] .profile-state,
html[data-theme] .line-item,
html[data-theme] .overview-note,
html[data-theme] .sigilarium-auth-copy,
html[data-theme] .sigilarium-inline-notice,
html[data-theme] .sigilarium-compatibility-row.is-head,
html[data-theme] .sigilarium-compatibility-section-row,
html[data-theme] .sigilarium-report-section-summary,
html[data-theme] .sigilarium-report-section-arrow,
html[data-theme] .arcana-badge,
html[data-theme] .arcana-chip,
html[data-theme] .planet-chips span,
html[data-theme] .data-checklist span,
html[data-theme] .sigilarium-numerology-line-status,
html[data-theme] .sigilarium-state-list div,
html[data-theme] .sigilarium-admin-bars li {
  background: var(--color-bg-secondary);
  border-color: var(--color-border);
  color: var(--color-text-secondary);
}

html[data-theme] .sigilarium-accent-card,
html[data-theme] .score-card.featured,
html[data-theme] .saved-profile.is-active,
html[data-theme] .rashi-card.is-lagna,
html[data-theme] .data-checklist .is-ok,
html[data-theme] .sigilarium-form-success,
html[data-theme] .sigilarium-pill.is-good {
  background: var(--color-bg-secondary);
  border-color: var(--color-accent-primary);
  color: var(--color-success);
}

html[data-theme] .data-checklist .is-missing {
  background: var(--color-bg-secondary);
  color: var(--color-warning);
}

html[data-theme] .sigilarium-final-cta {
  background: var(--color-accent-primary);
  border-color: var(--color-accent-primary);
  border-radius: var(--radius-md);
  color: var(--color-surface-elevated);
}

html[data-theme] .sigilarium-final-cta h2,
html[data-theme] .sigilarium-final-cta .sigilarium-badge {
  color: var(--color-surface-elevated);
}

html[data-theme] button:not(.ghost-button):not(.profile-load),
html[data-theme] .sigilarium-btn:not(.sigilarium-btn-secondary),
html[data-theme] .profile-delete {
  background: var(--color-accent-primary);
  border-color: var(--color-accent-primary);
  color: var(--color-surface-elevated);
}

html[data-theme] button:hover {
  box-shadow: var(--shadow-sm);
}

html[data-theme] .secondary-button,
html[data-theme] button.secondary-button,
html[data-theme] .ghost-button,
html[data-theme] .danger-button,
html[data-theme] .profile-load {
  background: transparent;
  border-color: var(--color-border);
  color: var(--color-text-primary);
  box-shadow: none;
}

html[data-theme] .danger-button,
html[data-theme] .status-pill.warning,
html[data-theme] .storage-state.warning,
html[data-theme] .sigilarium-form-error {
  color: var(--color-danger);
}

html[data-theme] .matrix-map {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
}

html[data-theme] .readiness-meter {
  background:
    radial-gradient(circle at center, var(--color-surface) 0 58%, transparent 59%),
    conic-gradient(var(--color-success) calc(var(--value) * 1%), var(--color-bg-secondary) 0);
  color: var(--color-text-primary);
}

html[data-theme] table,
html[data-theme] .table-wrap,
html[data-theme] .health-table-wrap,
html[data-theme] .bodygraph-scroll,
html[data-theme] .report-preview {
  background: var(--color-surface);
  border-color: var(--color-border);
  border-radius: var(--radius-md);
  color: var(--color-text-primary);
}

html[data-theme] th,
html[data-theme] td,
html[data-theme] .health-table th,
html[data-theme] .health-table td,
html[data-theme] .jyotish-table th,
html[data-theme] .jyotish-table td,
html[data-theme] .bazi-table th,
html[data-theme] .bazi-table td,
html[data-theme] .hd-table th,
html[data-theme] .hd-table td,
html[data-theme] .sigilarium-users-table th,
html[data-theme] .sigilarium-users-table td {
  background: var(--color-surface);
  border-color: var(--color-border);
  color: var(--color-text-primary);
}

html[data-theme] th,
html[data-theme] .health-table th,
html[data-theme] .sigilarium-users-table th,
html[data-theme] tr:nth-child(even) td,
html[data-theme] .health-table tr:nth-child(even) td {
  background: var(--color-bg-secondary);
}

html[data-theme] .sigilarium-step-list li,
html[data-theme] .sigilarium-check-list li,
html[data-theme] .sigilarium-compact-list div,
html[data-theme] .sigilarium-profile-details div,
html[data-theme] .sigilarium-interaction-item,
html[data-theme] .sigilarium-compatibility-guidance div {
  box-shadow: none;
}



/* Patch 44: exact visual refinements for BaZi, system navigation, period selector, and text outline. */
html[data-theme] .sigilarium-bazi-day-master-symbol,
html[data-theme] .dominant-symbol,
html[data-theme] .card-primary-symbol,
html[data-theme] .symbol-large,
html[data-theme] .sigilarium-bazi-description-card > strong,
html[data-theme] .sigilarium-bazi-balance-card > strong {
  -webkit-text-stroke: var(--text-outline-size) var(--text-outline-color);
  paint-order: stroke fill;
  text-shadow: var(--text-outline-shadow);
}

html[data-theme] .sigilarium-bazi-day-master-symbol,
html[data-theme] .dominant-symbol,
html[data-theme] .card-primary-symbol,
html[data-theme] .symbol-large {
  text-shadow: var(--text-outline-strong);
}

html[data-theme] .sigilarium-period-switcher {
  align-items: center;
  background: var(--color-surface-elevated);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  color: var(--color-text-secondary);
  display: inline-flex;
  gap: 4px;
  padding: 4px;
  white-space: nowrap;
}

html[data-theme] .sigilarium-period-btn {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: max(0px, calc(var(--radius-md) - 2px));
  color: var(--color-text-secondary);
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  justify-content: center;
  line-height: 1;
  min-height: 26px;
  padding: 0 9px;
}

html[data-theme] .sigilarium-period-btn.is-active {
  background: var(--color-accent-primary);
  color: var(--color-bg-primary);
}

html[data-theme] .sigilarium-bazi-table {
  overflow-x: auto;
}

html[data-theme] .sigilarium-bazi-pillars-table {
  border-collapse: collapse;
  width: 100%;
}

html[data-theme] .sigilarium-bazi-stem-badge {
  align-items: center;
  display: inline-flex;
  margin: 2px 4px 2px 0;
}

/* Patch 45 final form-field guard: keep Sigilarium inputs readable after theme-specific rules. */
html[data-theme] .sigilarium-page input:not([type="checkbox"]):not([type="radio"]),
html[data-theme] .sigilarium-page select,
html[data-theme] .sigilarium-page textarea,
html[data-theme] .sigilarium-calculator-shell input:not([type="checkbox"]):not([type="radio"]),
html[data-theme] .sigilarium-calculator-shell select,
html[data-theme] .sigilarium-calculator-shell textarea {
  background: var(--field-bg);
  border-color: var(--field-border);
  color: var(--field-text);
}

html[data-theme] .sigilarium-page input:not([type="checkbox"]):not([type="radio"])::placeholder,
html[data-theme] .sigilarium-page textarea::placeholder,
html[data-theme] .sigilarium-calculator-shell input:not([type="checkbox"]):not([type="radio"])::placeholder,
html[data-theme] .sigilarium-calculator-shell textarea::placeholder {
  color: var(--field-placeholder);
}

html[data-theme] .sigilarium-page input:not([type="checkbox"]):not([type="radio"]):focus,
html[data-theme] .sigilarium-page select:focus,
html[data-theme] .sigilarium-page textarea:focus,
html[data-theme] .sigilarium-calculator-shell input:not([type="checkbox"]):not([type="radio"]):focus,
html[data-theme] .sigilarium-calculator-shell select:focus,
html[data-theme] .sigilarium-calculator-shell textarea:focus {
  border-color: var(--field-focus-border);
}

html[data-theme] .sigilarium-page input:-webkit-autofill,
html[data-theme] .sigilarium-page textarea:-webkit-autofill,
html[data-theme] .sigilarium-page select:-webkit-autofill,
html[data-theme] .sigilarium-calculator-shell input:-webkit-autofill,
html[data-theme] .sigilarium-calculator-shell textarea:-webkit-autofill,
html[data-theme] .sigilarium-calculator-shell select:-webkit-autofill {
  -webkit-text-fill-color: var(--field-text);
  box-shadow: 0 0 0 1000px var(--field-bg) inset;
}

/* AURUM page scene override: keep cabinet full-bleed and preserve the bitmap background. */
html[data-theme="aurum"] body.sigilarium-shortcode-sigilarium-cabinet,
html[data-theme="aurum"] body.sigilarium-shortcode-sigilarium-cabinet > .wp-site-blocks,
html[data-theme="aurum"] .sigilarium-cabinet-page--aurum {
  background: #03090F url("/wp-content/plugins/sigilarium-calculator/assets/images/aurum-personal1.png") center top / cover fixed no-repeat !important;
}

html[data-theme="aurum"] body.sigilarium-shortcode-sigilarium-cabinet > .wp-site-blocks > main,
html[data-theme="aurum"] body.sigilarium-shortcode-sigilarium-cabinet .wp-site-blocks > main {
  margin-block-start: 0 !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

html[data-theme="aurum"] body.sigilarium-shortcode-sigilarium-cabinet .entry-content,
html[data-theme="aurum"] body.sigilarium-shortcode-sigilarium-cabinet .wp-block-post-content {
  font-size: 0 !important;
  line-height: 0 !important;
}

html[data-theme="aurum"] .sigilarium-cabinet-page--aurum .sigilarium-container {
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
}

html[data-theme="aurum"] .sigilarium-cabinet-page--aurum {
  font-size: 16px !important;
  line-height: 1.5 !important;
}

html[data-theme="aurum"] .sigilarium-cabinet-page--aurum .sigilarium-cabinet-hero {
  align-items: start !important;
  min-height: clamp(520px, 62vh, 640px) !important;
  padding-top: clamp(26px, 3vw, 56px) !important;
}

html[data-theme="aurum"] .sigilarium-cabinet-page--aurum .sigilarium-cabinet-hero__copy {
  align-content: start !important;
}

@media (max-width: 780px) {
  html[data-theme="aurum"] .sigilarium-cabinet-page--aurum .sigilarium-cabinet-hero {
    min-height: auto !important;
  }
}

/* AURUM compatibility page keeps the same full-bleed scene contract as home/cabinet. */
html[data-theme="aurum"] body.sigilarium-shortcode-sigilarium-compatibility,
html[data-theme="aurum"] body.sigilarium-shortcode-sigilarium-compatibility > .wp-site-blocks,
html[data-theme="aurum"] .sigilarium-compatibility-page--aurum {
  background: #03090F url("/wp-content/plugins/sigilarium-calculator/assets/images/aurum-home-hero.png") center top / cover fixed no-repeat !important;
}

html[data-theme="aurum"] body.sigilarium-shortcode-sigilarium-compatibility > .wp-site-blocks > main,
html[data-theme="aurum"] body.sigilarium-shortcode-sigilarium-compatibility .wp-site-blocks > main {
  margin-block-start: 0 !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

html[data-theme="aurum"] body.sigilarium-shortcode-sigilarium-compatibility .entry-content,
html[data-theme="aurum"] body.sigilarium-shortcode-sigilarium-compatibility .wp-block-post-content {
  font-size: 0 !important;
  line-height: 0 !important;
}

html[data-theme="aurum"] .sigilarium-compatibility-page--aurum,
html[data-theme="aurum"] .sigilarium-compatibility-page--aurum .sigilarium-container {
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
}

html[data-theme="aurum"] .sigilarium-compatibility-page--aurum {
  font-size: 16px !important;
  line-height: 1.5 !important;
}

html[data-theme="aurum"] .sigilarium-compatibility-page--aurum #sigilariumProfileCitySuggestions.city-suggestions.is-open {
  background: rgba(4, 14, 18, 0.96) !important;
  border-color: rgba(232, 187, 105, 0.36) !important;
  color: var(--compat-text) !important;
}

html[data-theme="aurum"] .sigilarium-compatibility-page--aurum #sigilariumProfileCitySuggestions .city-option {
  background: rgba(4, 14, 18, 0.98) !important;
  border-color: rgba(232, 187, 105, 0.12) !important;
  color: var(--compat-text) !important;
  -webkit-text-fill-color: var(--compat-text) !important;
}

html[data-theme="aurum"] .sigilarium-compatibility-page--aurum #sigilariumProfileCitySuggestions .city-option:hover,
html[data-theme="aurum"] .sigilarium-compatibility-page--aurum #sigilariumProfileCitySuggestions .city-option:focus {
  background: rgba(232, 187, 105, 0.13) !important;
}

html[data-theme="aurum"] .sigilarium-compatibility-page--aurum #sigilariumProfileCitySuggestions .city-option span {
  color: var(--compat-muted) !important;
  -webkit-text-fill-color: var(--compat-muted) !important;
}







