#accessibility-settings {
  width: min(540px, calc(100vw - 24px));
  max-width: none;
  max-height: calc(100dvh - 24px);
  overflow: auto;
  padding: 3px;
  background: silver;
  color: #172e2d;
}
#accessibility-settings .window-body {
  padding: 12px;
}
#accessibility-settings fieldset {
  margin: 10px 0;
  padding: 12px;
}
#accessibility-settings .preference {
  margin: 8px 0;
}
#accessibility-settings label {
  font: inherit;
}
#accessibility-settings .preference p {
  margin: 4px 0 0 24px;
  font-size: var(--text-small);
}
#accessibility-settings .window-body button {
  font: inherit;
  min-height: 32px;
}
#accessibility-status {
  min-height: 1.6em;
  margin: 12px 0;
}
.accessibility-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}
.readable-font body,
.readable-font body * {
  font-family: Arial, Helvetica, sans-serif !important;
}
.large-text {
  --text-body: 20px;
  --text-small: 18px;
  --text-heading: 24px;
  --text-ui: 18px;
}
.reduce-motion *,
.reduce-motion *::before,
.reduce-motion *::after {
  animation: none !important;
  transition: none !important;
  scroll-behavior: auto !important;
}
.large-controls button,
.large-controls summary,
.large-controls .task a,
.large-controls .start-items a {
  min-width: 44px;
  min-height: 44px;
}
.large-controls .title-bar {
  flex-wrap: wrap;
  gap: 4px;
}
.large-controls .title-bar-controls {
  margin-left: auto;
}
.large-controls .title-bar-controls button {
  width: 44px;
  height: 44px;
  min-width: 44px !important;
  min-height: 44px !important;
}
.high-contrast body,
.high-contrast #desktop-viewport[data-wallpaper],
.high-contrast #desktop-viewport header h1,
.high-contrast #desktop-viewport footer {
  background: #000 !important;
  color: #fff !important;
}
.high-contrast .window,
.high-contrast dialog,
.high-contrast .window-body,
.high-contrast .taskbar,
.high-contrast .start-panel,
.high-contrast .publication-list,
.high-contrast .publication,
.high-contrast .blog-list {
  background: #fff !important;
  color: #000 !important;
}
.high-contrast .title-bar {
  background: #000 !important;
  color: #fff !important;
}
.high-contrast a:focus-visible,
.high-contrast button:focus-visible,
.high-contrast summary:focus-visible,
.high-contrast [data-window]:focus {
  outline: 3px solid #000;
  box-shadow: 0 0 0 6px #fff;
}
.high-contrast footer a:focus-visible {
  outline-color: #fff;
  box-shadow: 0 0 0 6px #000;
}

#accessibility-settings legend {
  font: inherit;
}
.large-controls #accessibility-settings label {
  min-height: 44px;
  display: flex;
  align-items: center;
}
.high-contrast .publications,
.high-contrast .publications li,
.high-contrast .blog-entry,
.high-contrast #wallpaper-status,
.high-contrast #accessibility-status {
  background-color: #fff !important;
  color: #000 !important;
}
.high-contrast .featured-badge {
  background: #fff !important;
  color: #000 !important;
  border: 1px solid #000;
}
.high-contrast .start-brand {
  background: #000;
}

.large-text body:has(.system-name) {
  font-size: clamp(30px, 3.75vw, 40px);
}
.large-controls .recovery-button {
  min-height: 44px;
  min-width: 44px;
}

.large-controls .title-bar .title-bar-controls button[aria-label="Close"],
.large-controls .title-bar .title-bar-controls button.close {
  background-size: 24px 22px;
  background-position: center;
}
.large-controls .title-bar .title-bar-controls button[aria-label="Maximize"],
.large-controls .title-bar .title-bar-controls button[aria-label="Restore"],
.large-controls .title-bar .title-bar-controls button[data-maximize] {
  background-size: 24px 24px;
  background-position: center;
}
.large-controls .title-bar .title-bar-controls button[data-minimize] {
  background-size: 18px 6px;
  background-position: left 9px bottom 9px;
}
.large-controls #start-navigation a,
.large-controls #start-navigation button {
  min-height: 52px;
}
.large-controls #start-navigation .program-icon,
.large-controls .task .program-icon {
  width: 24px;
  height: 24px;
  image-rendering: pixelated;
}
.large-controls #accessibility-settings .window-body button {
  min-height: 44px;
}
.large-controls #accessibility-settings .preference {
  margin: 4px 0;
}
.large-controls #accessibility-settings fieldset {
  margin: 8px 0;
  padding: 8px 12px;
}
#accessibility-settings > .title-bar {
  position: sticky;
  top: 0;
  z-index: 1;
}

.large-text #start-navigation a,
.large-text #start-navigation button {
  font-size: var(--text-body);
}
.large-text .taskbar,
.large-text .task a,
.large-text #task-actions button {
  font-size: var(--text-ui);
}
.large-text #start-toggle {
  font-size: 22px;
}
.large-text [data-start-status] {
  font-size: 16px;
}
.large-text .transport-symbol,
.large-text .presentation-play {
  font-size: 20px;
}
.large-controls #media-controls button,
.large-controls #task-actions button {
  min-height: 44px;
}
.large-controls .transport-symbol {
  font-size: 24px;
}
.high-contrast #start-navigation a,
.high-contrast #start-navigation button {
  color: #000;
}
.high-contrast #start-navigation a:hover,
.high-contrast #start-navigation button:hover,
.high-contrast #start-navigation a:focus-visible,
.high-contrast #start-navigation button:focus-visible {
  background: #000;
  color: #fff;
}
.high-contrast .status-bar-field,
.high-contrast #media-controls,
.high-contrast #task-actions {
  background: #fff;
  color: #000;
}
.high-contrast .presentation-link,
.high-contrast .presentation-play {
  color: #000;
}
#accessibility-settings .accessibility-note {
  font-size: var(--text-small);
  margin: 8px 0 12px;
}
.high-contrast button,
.high-contrast select,
.high-contrast .task a,
.high-contrast #start-toggle,
.high-contrast .presentation-link {
  background-color: #fff;
  color: #000;
}
.high-contrast button:disabled {
  color: #595959;
  text-shadow: none;
}

.large-controls #start-toggle {
  min-height: 44px;
  padding: 4px 14px;
  gap: 8px;
}
.large-controls #start-toggle img {
  width: 32px;
  height: 32px;
  image-rendering: pixelated;
}

.high-contrast #crash .title-bar-text,
.high-contrast #boot h2,
.high-contrast #boot pre,
.high-contrast #boot .boot-wordmark,
.high-contrast #shutdown h2,
.high-contrast .system-name {
  color: #000;
}
.high-contrast #crash :focus-visible,
.high-contrast #boot :focus-visible,
.high-contrast #shutdown :focus-visible {
  outline-color: #000;
}
