.subscription-control{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;max-width:100%;--subscription-accent:#d80b24}
.subscription-button{min-width:112px;min-height:44px;padding:10px 18px;border:1px solid var(--subscription-accent);border-radius:99px;background:var(--subscription-accent);color:#fff;font:700 13px/1.5 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;cursor:pointer;touch-action:manipulation}
.subscription-button.is-subscribed{border-color:#dedbd7;background:#f4f3f0;color:#47423d}
.subscription-button:disabled{cursor:wait;opacity:.65}
.subscription-button[hidden]{display:none}
.subscription-button[aria-busy="true"]::after{display:inline-block;width:10px;height:10px;margin-left:7px;border:1.5px solid currentColor;border-right-color:transparent;border-radius:50%;content:"";animation:subscription-spin .7s linear infinite}
.subscription-button:focus-visible{outline:3px solid var(--subscription-accent);outline-offset:3px}
.subscription-error{max-width:260px;color:#b42132;font:12px/1.5 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}
.subscription-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px}
.subscription-control-compact{gap:0;width:78.4px}
.subscription-control-compact .subscription-button{min-width:78.4px;min-height:30.8px;padding:7px 12.6px;font-size:9.1px;white-space:nowrap}
.subscription-control-compact .subscription-button[aria-busy="true"]::after{width:7px;height:7px;margin-left:4.9px;border-width:1.05px}
.subscription-control-compact .subscription-error:not(:empty){flex-basis:100%;margin-top:4px}
.episode-cover-column{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0}
.episode-cover-subscription{width:100%}
.episode-cover-subscription:empty{display:none}
.episode-cover-subscription .subscription-control{width:100%;gap:4px}
.episode-cover-subscription .subscription-button{width:100%;min-width:0;min-height:32px;padding:6px 3px;font-size:11px;line-height:1.4}
.episode-cover-subscription .subscription-button[aria-busy="true"]::after{width:8px;height:8px;margin-left:3px;border-width:1px}
.episode-cover-subscription .subscription-error{overflow-wrap:anywhere}
@keyframes subscription-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.subscription-button[aria-busy="true"]::after{animation:none}}
