.appearance-dialog {
  padding: 22px; max-height: calc(100dvh - 32px); overflow: auto;
  width: min(600px, calc(100vw - 32px)); min-width: 0;
  background: var(--ps-color-panel); color: var(--ps-color-foreground);
  border: 1px solid var(--ps-color-border); border-radius: var(--shape-radius-dialog);
}
.appearance-heading { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 18px; }
.appearance-heading h2 { margin: 0; font-size: calc(20px * var(--ps-font-scale)); }
.appearance-heading button { color: var(--ps-color-muted-foreground); background: transparent; border: 0; font-size: var(--ps-font-body); }
.appearance-dialog .ps-appearance-controls label { margin: 0; font-size: var(--ps-font-support); }
.appearance-dialog .ps-appearance-controls select { margin-top: 0; line-height: var(--ps-line-height); }
.appearance-dialog .ps-appearance-note { color: var(--ps-color-muted-foreground); font-size: var(--ps-font-support); line-height: 1.7; margin: 0; }
.appearance-dialog::backdrop { background: rgb(0 0 0 / .48); }
.source-note, .thread-snippet, .topbar p, .candidate-area>p, .list-foot { font-size: var(--ps-font-support); }
/* Primary is an accent fill, not a guaranteed AA text-on-panel color. */
.nav-button.active, .tab.active, .text-button, .more-button, .skip { color: var(--ps-color-foreground); }
.nav-button.active { box-shadow: inset 3px 0 var(--ps-color-primary); }
.text-button { text-decoration: underline; text-underline-offset: 3px; }
.search input:focus-visible { outline: 3px solid var(--ps-color-focus-ring); outline-offset: 3px; }
html[data-motion-mode='reduced'] *, html[data-motion-mode='none'] * {
  transition-duration: 0s !important; animation: none !important; scroll-behavior: auto !important;
}

