/* Phase 28.8.4 – High Contrast & Theme Integration */
:root[data-dwats-contrast="high"] {
  --dw-theme-border: color-mix(in srgb, var(--dw-theme-text) 62%, var(--dw-theme-background));
  --dw-theme-muted: color-mix(in srgb, var(--dw-theme-text) 80%, var(--dw-theme-background));
  --dw-theme-focus: #ffd800;
  --dwds-color-border: var(--dw-theme-border);
  --dwds-color-border-strong: var(--dw-theme-text);
  --dwds-color-text-muted: var(--dw-theme-muted);
  --dwds-color-primary: var(--dw-theme-primary);
  --dwds-focus-ring: 0 0 0 3px var(--dw-theme-background), 0 0 0 6px var(--dw-theme-focus);
}
:root[data-dwats-contrast="maximum"] {
  --dw-theme-background: #000;
  --dw-theme-surface: #000;
  --dw-theme-surface-elevated: #111;
  --dw-theme-border: #fff;
  --dw-theme-text: #fff;
  --dw-theme-muted: #fff;
  --dw-theme-primary: #00e5ff;
  --dw-theme-secondary: #fff;
  --dw-theme-success: #7dff7d;
  --dw-theme-warning: #ffe600;
  --dw-theme-danger: #ff8080;
  --dw-theme-focus: #ffe600;
  --dwds-color-bg: #000;
  --dwds-color-surface: #000;
  --dwds-color-surface-raised: #111;
  --dwds-color-surface-hover: #1a1a1a;
  --dwds-color-border: #fff;
  --dwds-color-border-strong: #fff;
  --dwds-color-text: #fff;
  --dwds-color-text-muted: #fff;
  --dwds-color-primary: #00e5ff;
  --dwds-color-info: #00e5ff;
  --dwds-color-success: #7dff7d;
  --dwds-color-warning: #ffe600;
  --dwds-color-danger: #ff8080;
  --dwds-shadow-raised: none;
  --dwds-focus-ring: 0 0 0 3px #000, 0 0 0 6px #ffe600;
}
:root[data-dwats-contrast="high"] *, :root[data-dwats-contrast="maximum"] * { text-shadow:none !important; }
:root[data-dwats-contrast="maximum"] :is(button,input,select,textarea,a,[role="button"],[role="tab"],[role="menuitem"],.dwats-theme-card,.dwats-a11y-toggle) { border-color:#fff !important; }
:root[data-dwats-contrast="high"] :is(button,input,select,textarea,a,[tabindex]):focus-visible,
:root[data-dwats-contrast="maximum"] :is(button,input,select,textarea,a,[tabindex]):focus-visible { outline:3px solid var(--dw-theme-focus) !important; outline-offset:3px !important; box-shadow:none !important; }
:root[data-dwats-contrast="maximum"] a { color:#00e5ff !important; text-decoration:underline !important; text-decoration-thickness:2px !important; }
:root[data-dwats-contrast="maximum"] :disabled { opacity:1 !important; color:#bdbdbd !important; border-style:dashed !important; }
:root[data-dwats-contrast="maximum"] img:not([src$=".svg"]) { filter:contrast(1.15); }
.dwats-a11y-segmented--four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.dwats-a11y-field-hint { display:block; margin-top:.55rem; color:var(--dw-theme-muted,var(--dw-color-text-muted,#94a3b8)); line-height:1.45; }
.dwats-contrast-audit { display:grid; gap:.55rem; margin:0; }
.dwats-contrast-audit div { display:grid; grid-template-columns:1fr auto; gap:.75rem; align-items:center; padding:.55rem 0; border-bottom:1px solid var(--dw-theme-border); }
.dwats-contrast-audit dt,.dwats-contrast-audit dd { margin:0; }
.dwats-contrast-audit dd { font-variant-numeric:tabular-nums; font-weight:700; }
.dwats-contrast-audit .is-pass { color:var(--dw-theme-success); }
.dwats-contrast-audit .is-fail { color:var(--dw-theme-danger); }
@media (max-width:620px){.dwats-a11y-segmented--four{grid-template-columns:repeat(2,1fr)}}
@media (forced-colors: active) {
  :root { --dw-theme-background:Canvas; --dw-theme-surface:Canvas; --dw-theme-surface-elevated:Canvas; --dw-theme-border:CanvasText; --dw-theme-text:CanvasText; --dw-theme-muted:CanvasText; --dw-theme-primary:LinkText; --dw-theme-focus:Highlight; }
  * { forced-color-adjust:auto; box-shadow:none !important; }
  :is(button,input,select,textarea,a,[tabindex]):focus-visible { outline:3px solid Highlight !important; outline-offset:3px !important; }
}
