:root{ --mg-rss-red:#da251c; }

.mg-rss-widget{ margin:1rem 0; border:1px solid #eee; border-radius:12px; overflow:hidden; box-shadow:0 1px 6px rgba(0,0,0,.06); background:#fff; }

/* details/summary toggle */
.mg-rss-details{ display:block; }
.mg-rss-summary{ list-style:none; cursor:pointer; }
.mg-rss-summary::-webkit-details-marker{ display:none; }
.mg-rss-summary::marker{ content:''; }

.mg-rss-image{ display:block; width:100%; height:auto; }
.mg-rss-photo-placeholder{ display:block; width:100%; text-align:center; background:var(--mg-rss-red); color:#fff; font-weight:700; padding:1rem; border-radius:8px; }

/* panel */
.mg-rss-panel{ padding:.5rem 0 1rem; }
.mg-rss-heading{ margin: .5rem 1rem 0; font-size:1.1rem; font-weight:700; }

.mg-rss-list{ list-style:none; margin:.5rem 0 0; padding:0; }
.mg-rss-item{ border-top:1px solid #f0f0f0; padding:.75rem 1rem; }
.mg-rss-row{ display:grid; grid-template-columns: 1fr auto auto; gap:.75rem; align-items:center; }
.mg-rss-title a{ text-decoration:none; color:#111; }
.mg-rss-title a:hover{ text-decoration:underline; }
.mg-rss-date{ color:#666; font-size:.9rem; white-space:nowrap; }
.mg-rss-play{ padding:.35rem .75rem; border-radius:999px; border:1px solid var(--mg-rss-red); color:var(--mg-rss-red); background:#fff; font-weight:700; cursor:pointer; }
.mg-rss-play[aria-pressed="true"]{ background:var(--mg-rss-red); color:#fff; }

.mg-rss-error{ color:#a00; padding:1rem; }
.mg-rss-empty{ padding:1rem; }