/* Design switcher, shared by the Astro designs and the mirrored original site. */
  .ds {
    position: fixed; z-index: 90; left: 50%; bottom: max(14px, env(safe-area-inset-bottom));
    transform: translateX(-50%);
    display: flex; align-items: center; gap: 6px;
    max-width: calc(100vw - 20px);
    padding: 6px; border-radius: 999px;
    background: rgba(18, 17, 22, .86); color: #f4f2f7;
    backdrop-filter: blur(14px) saturate(1.4); -webkit-backdrop-filter: blur(14px) saturate(1.4);
    box-shadow: 0 10px 30px -10px rgba(0,0,0,.45), inset 0 0 0 1px rgba(255,255,255,.08);
    font: 500 13px/1 system-ui, -apple-system, 'Segoe UI', sans-serif; letter-spacing: 0;
  }
  .ds-label { padding: 0 6px 0 10px; font-size: 11px; text-transform: uppercase; letter-spacing: .12em; opacity: .55; }
  .ds-list { display: flex; gap: 2px; margin: 0; padding: 0; list-style: none; overflow-x: auto; scrollbar-width: none; }
  .ds-list::-webkit-scrollbar { display: none; }
  @media (max-width: 860px) { .ds-list { -webkit-mask-image: linear-gradient(90deg, transparent, #000 18px, #000 calc(100% - 18px), transparent); mask-image: linear-gradient(90deg, transparent, #000 18px, #000 calc(100% - 18px), transparent); padding: 0 10px; } }
  .ds-link {
    display: flex; align-items: center; gap: 6px; white-space: nowrap;
    padding: 9px 12px; border-radius: 999px; text-decoration: none; color: inherit; opacity: .72;
    transition: background .25s, opacity .25s, color .25s;
  }
  .ds-link:hover { opacity: 1; background: rgba(255,255,255,.08); }
  .ds-link[aria-current='page'] { opacity: 1; background: #fff; color: #141317; }
  .ds-link:focus-visible { outline: 2px solid #9db0ff; outline-offset: 2px; }
  .ds-num { font-size: 11px; opacity: .5; font-variant-numeric: tabular-nums; }
  .ds-star { font-size: 10px; color: #e9c22b; }
  .ds-note { padding: 0 12px 0 6px; font-size: 12px; opacity: .55; white-space: nowrap; }
  @media (max-width: 860px) { .ds-note, .ds-label { display: none; } }
  @media (max-width: 560px) { .ds-num { display: none; } .ds-link { padding: 9px 10px; } }
  @media print { .ds { display: none; } }
  .ds-list li:has(.ds-orig) { display: flex; align-items: center; padding-right: 4px; margin-right: 2px; border-right: 1px solid rgba(255,255,255,.16); }
  .ds-orig .ds-name { font-style: italic; }
