/* D theme: semantic colors inherited by cards, forms, messages and admin. */
:root {accent-color:var(--primary)}
:root[data-theme="dark"] {
  --menu-shadow:0 16px 48px rgb(0 0 0 / .42);
  --dialog-shadow:0 24px 72px rgb(0 0 0 / .56);
}
:root[data-theme="dark"] input:autofill {
  -webkit-text-fill-color:var(--ink);
  caret-color:var(--primary);
  box-shadow:0 0 0 1000px var(--surface) inset;
}

/* Dark controls keep their state readable without fading an entire group. */
:root[data-theme="dark"] {
  --disabled-ink:#a0a0a0;
  --disabled-surface:#2b2b2b;
  --disabled-border:#787878;
}
:root[data-theme="dark"] :is(.inbox-search,.admin-pagination select) {
  border-color:var(--control-border);
}
:root[data-theme="dark"] .preference-section fieldset:disabled {
  opacity:1;
}
:root[data-theme="dark"] :is(button,input,textarea,select):disabled {
  opacity:1;
  cursor:not-allowed;
}
:root[data-theme="dark"] button:disabled {
  color:var(--disabled-ink);
}
:root[data-theme="dark"] :is(.primary,.secondary):disabled,
:root[data-theme="dark"] :is(input,textarea,select):disabled:not([type="checkbox"]):not([type="radio"]) {
  color:var(--disabled-ink);
  background:var(--disabled-surface);
  border-color:var(--disabled-border);
}
:root[data-theme="dark"] .preference-section fieldset:disabled :is(strong,small,.form-label) {
  color:var(--disabled-ink);
}
:root[data-theme="dark"] .preference-switch:disabled {
  background:var(--disabled-surface);
  border:1px solid var(--disabled-border);
}
:root[data-theme="dark"] .preference-switch:disabled::before {
  left:2px;top:2px;
  background:var(--disabled-ink);
}
:root[data-theme="dark"] .preference-switch:disabled:checked {
  background:var(--selected);
}
:root[data-theme="dark"] .browse-pagination a[aria-disabled="true"] {
  opacity:1;
  color:var(--disabled-ink);
  background:transparent;
  cursor:default;
}
:root[data-theme="dark"] :is(input,textarea)[readonly] {
  background:var(--soft);
  color:var(--ink);
}
:root[data-theme="dark"] input:disabled:autofill {
  -webkit-text-fill-color:var(--disabled-ink);
}
:root[data-theme="dark"] select :is(option,optgroup) {
  color:var(--ink);
  background:var(--surface);
}
:root[data-theme="dark"] select option:disabled {
  color:var(--disabled-ink);
}
:root[data-theme="dark"] :is(.message-threads,.fixed-threads) a:hover:not([aria-current="page"]) {
  background:var(--soft);
}
:root[data-theme="dark"] .inbox-more>div {
  box-shadow:var(--menu-shadow);
}
:root[data-theme="dark"] .search-result:hover {
  background:var(--soft);
}
:root[data-theme="dark"] .search-result:focus-visible {
  background:var(--soft);
  outline:2px solid var(--primary);
  outline-offset:-2px;
}
:root[data-theme="dark"] summary:focus-visible {
  outline:2px solid var(--primary);
  outline-offset:3px;
}
