/* Scoped canonical semantic tokens: legacy editorial shells do not expose them. */
.preferred-source {
  --color-text: var(--brand-text);
  --color-action-text: var(--brand-background);
  --color-focus: var(--brand-primary);
  --color-action-hover: color-mix(in srgb, var(--color-text) 88%, black);
  --radius-md: 10px;
  --space-3: 12px;
  --space-4: 16px;
  --motion-fast: 140ms;
  display: block;
  max-width: 100%;
  min-width: 0;
}
.preferred-source__button {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  width: 100%;
  max-width: 100%;
  min-height: 48px;
  padding: var(--space-4);
  border: 0;
  border-radius: var(--radius-md);
  background: var(--color-text);
  color: var(--color-action-text);
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  text-align: left;
  cursor: pointer;
  transition: transform var(--motion-fast), background-color var(--motion-fast);
}
.preferred-source__brand { width: 40px; height: 40px; object-fit: contain; flex: 0 0 40px; }
.preferred-source__label { flex: 1; min-width: 0; overflow-wrap: anywhere; text-wrap: pretty; }
.preferred-source__chevron { flex: 0 0 20px; transition: transform var(--motion-fast); }
.preferred-source__button:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 4px; }
@media (hover: hover) {
  .preferred-source__button:not(:disabled):hover { background: var(--color-action-hover); transform: translateY(-2px); }
  .preferred-source__button:not(:disabled):hover .preferred-source__chevron { transform: translateX(2px); }
}
.preferred-source__button:not(:disabled):active { transform: scale(.98); }
.preferred-source__button:disabled { cursor: wait; }
.preferred-source__status { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.preferred-source--section { width: fit-content; margin-inline: auto; }
.preferred-source--footer { width: fit-content; }
.preferred-source--footer .preferred-source__button { padding: var(--space-3); }
@media (min-width: 992px) {
  .blog-content_column > .preferred-source--article { position: sticky; top: 8rem; flex: none; }
}
/* The legacy sidebar is hidden on mobile. Keep only its requested CTA there. */
@media (max-width: 991px) {
  .blog-content_wrap:has(> .blog-content_column > .preferred-source) { display: flex; flex-direction: column; }
  .blog-content_wrap:has(> .blog-content_column > .preferred-source) > .blog-content_wrap-inner { width: 100%; max-width: 100%; }
  .blog-content_column:has(> .preferred-source) { display: block; width: 100%; max-width: 100%; }
  .blog-content_column:has(> .preferred-source) > :not(.preferred-source) { display: none; }
}
@media (max-width: 420px) {
  .preferred-source { width: 100%; }
  .preferred-source__button { padding: var(--space-3); font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .preferred-source__button, .preferred-source__chevron { transition: none; transform: none !important; }
}
