:where(body) {
  --shc-ui-accent: var(--ry-palette-primary, var(--sh-primary, #5a36ca));
  --shc-ui-on-accent: var(--ry-palette-on-primary, var(--sh-on-primary, #fff));
  --shc-ui-surface: var(--ry-palette-surface, var(--sh-surface, var(--paper, #fff)));
  --shc-ui-ink: var(--ry-palette-ink, var(--sh-ink, var(--ink, #1e192c)));
  --shc-ui-muted: var(--ry-palette-muted, var(--sh-muted, var(--muted, #5d556a)));
  --shc-ui-border: var(--ry-palette-border, var(--sh-border, var(--line, #ded6e7)));
  --shc-ui-soft: var(--ry-palette-soft, var(--sh-soft, #eee8fc));
  --shc-ui-control-border: color-mix(in srgb, var(--shc-ui-border) 64%, var(--shc-ui-ink));
}
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 2px solid var(--shc-ui-accent, #5a36ca);
  outline-offset: 3px;
}
:where(.sh-skip, .skip):focus-visible {
  color: var(--shc-ui-on-accent);
  background: var(--shc-ui-accent);
}
:where(button, a, input, select, textarea):where([aria-disabled="true"], :disabled) {
  cursor: not-allowed;
}
:where(.table-wrap, .rd-table-wrap) {
  overscroll-behavior-inline: contain;
}
:where(.sh-button, .btn, .shc-primary, .shc-secondary) {
  text-underline-offset: .2em;
}
:where(.topbar #logout, .topbar .ab-visit-shop, .brand-editor-panel button:not(.primary), .sh-button-outline) {
  background-color: var(--shc-ui-surface);
  color: var(--shc-ui-ink);
  border-color: var(--shc-ui-control-border);
}
:where(.topbar #logout, .topbar .ab-visit-shop, .brand-editor-panel button:not(.primary), .sh-button-outline):hover:not(:disabled) {
  background-color: var(--shc-ui-soft);
}
.shc-error {
  --shc-primary: var(--shc-ui-accent);
  --shc-soft: var(--shc-ui-soft);
  --shc-ink: var(--shc-ui-ink);
  --shc-muted: var(--shc-ui-muted);
}
.shc-error .shc-primary { color: var(--shc-ui-on-accent); }
.shc-error :is(.shc-secondary, .shc-links a, .shc-tag) {
  color: var(--shc-ui-ink);
  background: var(--shc-ui-surface);
  border-color: var(--shc-ui-control-border);
}
.shc-error .shc-scene {
  background: linear-gradient(145deg, var(--shc-ui-soft), var(--shc-ui-surface));
  border-color: var(--shc-ui-border);
}
.shc-error .shc-description { color: var(--shc-ui-ink); }
.shc-error :is(.shc-primary, .shc-secondary, .shc-links a) { min-block-size: 44px; }
@media (pointer: coarse) {
  :where(.topbar button, .sh-menu-toggle, .sh-button, .shc-error button) {
    min-block-size: 44px;
  }
}
@media (forced-colors: active) {
  :where(.shc-primary,.shc-secondary,.shc-links a,.sh-button,.btn) {
    border: 1px solid ButtonText;
  }
}

