/*
 * EDEM WTF visual integration adapter, 2026-10-27.
 * Values come only from tokens.css; no import or duplicate theme.
 * Required token opt-in: .edem-wtf or [data-edem-theme="wtf"] on owning html/body.
 * Source anchors: INTEGRATION-MAP.json (published UI 5ae8/fae06a27).
 * Isolated candidate: NOT applied, NOT browser/device verified.
 * No visibility, open state, structural layout, map geometry or event changes.
 * DomaRover is reserved for the approved logo asset; UI uses system fonts.
 */

:where(.edem-help-page, .help-dialog, .edem-profile-menu, .dt-account-dialog,
       #sidebar, .workspace, #record-dialog, .edem071-bottom) {
  /* tokens.css owns all values. Its scope must be on the owning html/body. */
  --edem-wtf-paper: var(--edem-surface);
  --edem-wtf-soft: var(--edem-surface-soft);
  --edem-wtf-ink: var(--edem-ink);
  --edem-wtf-muted: var(--edem-muted);
  --edem-wtf-line: var(--edem-line);
  --edem-wtf-line-strong: var(--edem-line-strong);
  --edem-wtf-coral: var(--edem-brand);
  --edem-wtf-coral-soft: var(--edem-brand-soft);
  --edem-wtf-green: var(--edem-success);
  --edem-wtf-green-soft: var(--edem-success-soft);
  --edem-wtf-danger: var(--edem-danger);
  --edem-wtf-danger-soft: var(--edem-danger-soft);
  --edem-wtf-warning: var(--edem-warning);
  --edem-wtf-warning-soft: var(--edem-warning-soft);
  --edem-wtf-radius-control: var(--edem-radius-control);
  --edem-wtf-radius-card: var(--edem-radius-card);
  --edem-wtf-radius-dialog: var(--edem-radius-sheet);
  --edem-wtf-shadow-control: var(--edem-shadow-small);
  --edem-wtf-shadow-card: var(--edem-shadow-raised);
  color: var(--edem-ink);
  font-family: var(--edem-font);
}

.edem-help-page {
  background-color: var(--edem-wtf-paper);
}

:where(.edem-help-page .header, .edem071-bottom) {
  background-color: var(--edem-wtf-paper);
  border-color: var(--edem-wtf-line);
}

/* Labels remain real DOM text inside each existing button. */
:where(.edem071-action, .edem071-quick button, .edem071-bottom button,
       .edem-menu-row, .edem-resource, .help-btn,
       .dt-account-dialog .btn, .dt-account-dialog .dt-account-text-button,
       .workspace button, #record-dialog button) {
  background-color: var(--edem-wtf-paper);
  border: 1px solid var(--edem-wtf-line);
  border-radius: var(--edem-wtf-radius-control);
  color: var(--edem-wtf-ink);
  box-shadow: var(--edem-wtf-shadow-control);
  font-family: inherit;
  text-decoration: none;
  font-weight: 500;
  transition: none;
}

.edem071-action {
  border-radius: var(--edem-wtf-radius-card);
  box-shadow: var(--edem-wtf-shadow-card);
}

:where(.help-primary, .dt-account-dialog .btn-primary,
       .workspace button.primary, #record-dialog button.primary) {
  background-color: var(--edem-wtf-paper);
  border-color: var(--edem-wtf-coral);
  color: var(--edem-wtf-ink);
  font-weight: 500;
}

:where(.edem071-action, .edem071-quick button, .edem071-bottom button,
       .edem-menu-row, .edem-resource, .help-btn,
       .dt-account-dialog .btn, .workspace button, #record-dialog button)
       :where(svg) {
  color: inherit;
}

:where(.edem071-action, .edem071-quick button, .edem071-bottom button,
       .edem-menu-row, .edem-resource, .help-btn,
       .dt-account-dialog .btn, .workspace button, #record-dialog button)
       :where(img) {
  /* The approved soft 3D artwork owns color and meaning. */
  filter: none;
}

:where(.edem071-action, .edem071-quick button, .edem071-bottom button,
       .edem-menu-row, .edem-resource, .help-btn, .dt-account-dialog .btn,
       .workspace button, #record-dialog button):hover:not(:disabled):not([aria-disabled="true"]) {
  background-color: var(--edem-wtf-soft);
  border-color: var(--edem-wtf-line-strong);
}

:where(.help-primary, .dt-account-dialog .btn-primary,
       .workspace button.primary, #record-dialog button.primary)
       :where(span) {
  color: inherit;
}

:where(.edem071-action, .edem071-quick button, .edem071-bottom button,
       .edem-menu-row, .edem-resource, .help-btn, .dt-account-dialog .btn,
       .workspace button, #record-dialog button):active:not(:disabled):not([aria-disabled="true"]) {
  background-color: var(--edem-wtf-soft);
}

:where(.edem071-quick button, .edem071-bottom button, .edem-menu-row)
       [aria-hidden="true"] {
  color: inherit;
}

:where(.edem071-quick button, .edem071-bottom button, .edem-menu-row)[aria-current="page"] {
  background-color: var(--edem-wtf-coral-soft);
  border-color: var(--edem-wtf-coral);
}

:where(.edem071-action, .edem071-quick button, .edem071-bottom button,
       .edem-menu-row, .edem-resource, .help-btn, .dt-account-dialog .btn,
       .workspace button, #record-dialog button):disabled,
:where(.edem-section-card, .edem-menu-row)[aria-disabled="true"] {
  background-color: var(--edem-wtf-soft);
  border-color: var(--edem-wtf-line);
  color: var(--edem-wtf-muted);
  box-shadow: none;
}

/* Keep native checkbox/radio semantics, including disabled and checked. */
:where(.help-field, .help-check, .help-payment, .dt-account-dialog,
       .workspace, #record-dialog) :where(input, textarea, select) {
  color: var(--edem-wtf-ink);
  font-family: inherit;
  accent-color: var(--edem-wtf-green);
}

:where(.help-field, .dt-account-dialog .field, #filters, .workspace .form-stack,
       #record-dialog .form-stack)
       :where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), textarea, select),
.help-chat textarea {
  background-color: var(--edem-wtf-paper);
  border: 1px solid var(--edem-control-line);
  border-radius: var(--edem-wtf-radius-control);
  box-shadow: var(--edem-shadow-small);
}

:where(.help-field, .dt-account-dialog, #filters, .workspace, #record-dialog)
       :where(input, textarea)::placeholder {
  color: var(--edem-wtf-muted);
}

:where(.help-check, .dt-notification-choice) {
  background-color: var(--edem-wtf-paper);
  border-color: var(--edem-wtf-line);
  border-radius: var(--edem-wtf-radius-control);
}

:where(.help-dialog, .edem-profile-menu, .dt-account-dialog, #record-dialog) {
  background-color: var(--edem-wtf-paper);
  border-color: var(--edem-wtf-line);
  border-radius: var(--edem-wtf-radius-dialog);
}

:where(.help-head, .edem-menu-toolbar, .dt-account-header,
       #record-dialog .dialog-head) {
  background-color: var(--edem-wtf-paper);
  border-color: var(--edem-wtf-line);
}

:where(.help-card, .help-section, .help-zone-summary, .dt-account-card,
       .edem-menu-group, .help-chat-message, .workspace .panel,
       #record-dialog .change-comparison) {
  background-color: var(--edem-wtf-paper);
  border-color: var(--edem-wtf-line);
  border-radius: var(--edem-wtf-radius-card);
  box-shadow: var(--edem-wtf-shadow-control);
}

:where(.help-muted, .form-hint, .help-chat-meta, .workspace .page-footer,
       .edem-menu-identity span) {
  color: var(--edem-wtf-muted);
}

:where(.help-badge, .workspace .badge, #record-dialog .badge) {
  background-color: var(--edem-wtf-soft);
  color: var(--edem-wtf-ink);
  border-color: var(--edem-wtf-line);
  border-radius: var(--edem-radius-control);
}

:where(.help-summary-saved, .workspace .badge.good, #record-dialog .badge.good) {
  background-color: var(--edem-wtf-green-soft);
  color: var(--edem-wtf-green);
}

:where(.help-summary-attention, .workspace .badge.warn,
       #record-dialog .badge.warn, .workspace .note.warning,
       #record-dialog .note.warning) {
  background-color: var(--edem-wtf-warning-soft);
  color: var(--edem-wtf-warning);
}

:where(.help-message, .dt-account-dialog [role="status"], #notice) {
  color: var(--edem-wtf-muted);
}

:where(.help-message[role="alert"], .dt-account-dialog .form-error,
       .dt-account-dialog [role="alert"], #error, #record-error,
       .workspace .badge.bad, #record-dialog .badge.bad) {
  background-color: var(--edem-wtf-danger-soft);
  color: var(--edem-wtf-danger);
  border-color: var(--edem-wtf-danger);
}

/* Preserve the owning system/native focus indicator. Never suppress outlines. */

/* Only non-map actions receive the shared press transition. */
:where(.edem071-action, .edem071-quick button, .edem071-bottom button,
       .edem-menu-row, .edem-resource, .help-footer .help-btn,
       .dt-account-dialog .btn, .workspace button, #record-dialog button) {
  transition: transform var(--edem-press-duration) ease;
}

:where(.edem071-action, .edem071-quick button, .edem071-bottom button,
       .edem-menu-row, .edem-resource, .help-footer .help-btn,
       .dt-account-dialog .btn, .workspace button, #record-dialog button):active:not(:disabled):not([aria-disabled="true"]) {
  transform: translateY(2px) scale(.97);
}

/* Respect user motion preference; this adapter adds no motion-driven state. */
@media (prefers-reduced-motion: reduce) {
  :where(.edem-help-page, .help-dialog, .edem-profile-menu, .dt-account-dialog,
         #sidebar, .workspace, #record-dialog, .edem071-bottom) :where(button, a, input, select, textarea) {
    transition: none;
  }
}
