body, table, input, textarea {
  background-color: #111916;
  color: #e8f0ec;
  margin: 0;
  font-family: "IBM Plex Sans", Tahoma, Arial, sans-serif;
}

.rss-body, .rss-header {
  background: #111916;
  color: #e8f0ec;
}

.rss-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 120px;
  gap: 1rem;
  padding: 0.75rem;
}

.rss-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.rss-item {
  padding: 0.85rem 0;
  border-bottom: 1px solid rgba(232, 240, 236, 0.12);
}

.rss-title {
  color: #7dd4c6;
  font-size: 1.25rem;
  font-weight: 600;
  text-decoration: none;
}

.rss-title:hover { color: #e08a55; }

.rss-date {
  color: #a8b9b2;
  font-size: 0.8rem;
  margin: 0.25rem 0;
}

.rss-desc {
  color: #a8b9b2;
  font-size: 0.9rem;
  line-height: 1.45;
  margin-top: 0.35rem;
}

.rss-desc img {
  display: block;
  width: min(100%, 560px);
  max-width: 100%;
  height: auto !important;
  min-height: 200px;
  border-radius: 6px;
  margin: 0.75rem 0;
  clear: both;
}

.online-articles .rss-desc img {
  width: min(100%, 640px);
  min-height: 220px;
}

.rss-error {
  color: #e08a55;
  padding: 1rem;
}

.rss-error code { color: #7dd4c6; }

.rss-ad {
  position: sticky;
  top: 0.5rem;
}

.rss-head-table {
  width: 100%;
  border-collapse: collapse;
}

.rss-head-table td {
  vertical-align: top;
  padding: 0.5rem 0.75rem;
}

.rss-head-main h3 {
  margin: 0 0 0.25rem;
  font-size: 1.35rem;
}

.rss-head-main a { color: #7dd4c6; }

.rss-url {
  color: #a8b9b2;
  font-size: 0.8rem;
  word-break: break-all;
}

.rss-note {
  width: 42%;
  font-size: 0.75rem;
  color: #a8b9b2;
}

.rss-note p { margin: 0.25rem 0 0; }

a:link, a:visited { color: #7dd4c6; }
a:hover { color: #e08a55; }

@media (max-width: 700px) {
  .rss-layout { grid-template-columns: 1fr; }
  .rss-ad { display: none; }
}
