@font-face { font-family: "Source Han Sans SC Web"; src: url("assets/fonts/rss-source-han-sc-vf.woff2") format("woff2"); font-style: normal; font-weight: 400 900; font-display: swap; unicode-range: U+5668, U+5740, U+5C1A, U+7A0D, U+8BFB; }
@font-face { font-family: "Source Han Sans JP Web"; src: url("assets/fonts/rss-source-han-jp-vf.woff2") format("woff2"); font-style: normal; font-weight: 400 900; font-display: swap; unicode-range: U+518D, U+5229, U+52D5, U+629E; }
@font-face { font-family: "Source Han Sans KR Web"; src: url("assets/fonts/rss-source-han-kr-vf.woff2") format("woff2"); font-style: normal; font-weight: 400 900; font-display: swap; unicode-range: U+B8CC, U+BABB, U+C7A0, U+C811; }
/* Fixed desktop width; mobile retains the same composition in the viewport. */
[data-rss-subscribe] { appearance: none; margin: 0; padding: 0; border: 0; background: transparent; color: inherit; cursor: pointer; }
.rss-dialog {
  position: fixed;
  inset: auto;
  width: 240px;
  max-width: calc(100vw - 24px);
  max-height: calc(100dvh - 24px);
  margin: 0;
  padding: 0;
  border: 0;
  background: var(--cream);
  color: var(--ink);
  overflow: auto;
  overscroll-behavior: contain;
  font: 400 13px/1.4 var(--ui-font);
}
.rss-dialog::backdrop { background: rgb(0 0 0 / 76%); }
body.rss-feed-open { overflow: hidden; }
.rss-panel__cover { display: block; width: 100%; height: auto; background: #000; }
.rss-panel__content { padding: 16px 20px 14px; }
.rss-panel__title {
  margin: 0;
  padding: 3px 5px;
  background: var(--ink);
  color: var(--cream);
  font: 600 14px/1.3 var(--ui-font);
  text-align: center;
}
.rss-panel__title:not(:lang(en)) { font-size: 13px; }
.rss-panel__help { text-align: center; margin: 6px 0 16px; font-size: 11px; line-height: 1.45; opacity: .72; }
.rss-panel__help:lang(en) { font-size: 12px; }
.rss-panel__languages { margin: 0; padding: 0; list-style: none; }
.rss-panel__row { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0 0 12px; }
.rss-panel__row:last-child { margin-bottom: 0; }
.rss-panel__name { display: inline-flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 600; white-space: nowrap; }
.rss-panel__name::before { content: ''; width: 10px; height: 10px; flex: 0 0 10px; border-radius: 50%; background: currentColor; }
.rss-panel__copy { appearance: none; padding: 0; border: 0; background: transparent; color: inherit; font: 400 13px/1.5 var(--ui-font); text-decoration: underline; text-underline-offset: 2px; cursor: pointer; white-space: nowrap; }
.rss-panel__row:lang(zh), .rss-panel__feedback:lang(zh), .rss-panel__address:lang(zh), .rss-panel__title:lang(zh), .rss-panel__help:lang(zh) { font-family: "Source Han Sans SC Web", "Source Han Sans SC", sans-serif; }
.rss-panel__row:lang(ja), .rss-panel__feedback:lang(ja), .rss-panel__address:lang(ja), .rss-panel__title:lang(ja), .rss-panel__help:lang(ja) { font-family: "Source Han Sans JP Web", "Source Han Sans JP", sans-serif; }
.rss-panel__row:lang(ko), .rss-panel__feedback:lang(ko), .rss-panel__address:lang(ko), .rss-panel__title:lang(ko), .rss-panel__help:lang(ko) { font-family: "Source Han Sans KR Web", "Source Han Sans K", sans-serif; }
.rss-panel__row:not(:lang(en)) :is(.rss-panel__name, .rss-panel__copy) { font-family: inherit; font-size: 12px; }
.rss-panel__feedback { text-align: right; font-size: 12px; }
.rss-panel__message { margin: 12px 0 0; font-size: 11px; line-height: 1.5; text-align: left; overflow-wrap: anywhere; }
.rss-panel__address { width: 100%; min-width: 0; margin-top: 6px; padding: 5px; border: 1px solid currentColor; border-radius: 0; background: transparent; color: inherit; font: 400 11px/1.4 var(--ui-font); }
.rss-dialog [hidden] { display: none; }
.rss-panel__footer { display: flex; justify-content: flex-end; margin-top: 16px; }
@media (max-width: 1199px) {
  .rss-dialog { inset: 0; margin: auto; }
}
