
/* RN scoped blocks */
.rn-wrap{max-width:1100px;margin:0 auto;padding:0 16px}
.rn-section{margin:24px 0}
.rn-h2{font-size:28px;margin:10px 0 6px}
.rn-h3{font-size:22px;margin:0 0 10px}

.rn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media (max-width:900px){.rn-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.rn-grid{grid-template-columns:1fr}}

.rn-card a{display:block;text-decoration:none}
.rn-card-thumb{position:relative;overflow:hidden;border-radius:12px;background:#f2f2f2}
/* Force consistent aspect ratio (16:10), no jank */
.rn-card-thumb::before{content:"";display:block;aspect-ratio:16/10;width:100%}
.rn-card-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.rn-card h4{font-size:16px;line-height:1.3;margin:8px 0 0;color:inherit}
.rn-card:hover .rn-card-thumb img{transform:scale(1.03)}
.rn-card-thumb img{transition:transform .25s ease}

/* Optional small category badge */
.rn-badge{position:absolute;left:8px;top:8px;background:rgba(0,0,0,.7);color:#fff;font-size:11px;padding:3px 8px;border-radius:999px}

/* Breaking banner (unchanged) */
.rn-breaking{margin:12px 0 24px}
.rn-breaking-card{display:grid;grid-template-columns:48% 52%;gap:16px;text-decoration:none;background:#111;color:#fff;border-radius:14px;overflow:hidden}
.rn-breaking-media img{width:100%;height:100%;object-fit:cover;display:block}
.rn-breaking-meta{padding:18px;display:flex;flex-direction:column;justify-content:center}
.rn-breaking-badge{background:#d60000;color:#fff;font-weight:700;padding:4px 10px;border-radius:999px;font-size:12px;width:max-content;margin-bottom:10px;letter-spacing:.02em}
.rn-breaking-title{font-size:28px;line-height:1.15;margin:0 0 8px;color:#fff}
.rn-breaking-excerpt{margin:0;color:#f1f1f1}
@media (max-width:900px){.rn-breaking-card{grid-template-columns:1fr}}

/* Weather box */
.rn-weather{background:#fff;border:1px solid #eee;border-radius:14px;padding:14px 16px}
.rn-weather-top{display:flex;align-items:baseline;justify-content:space-between}
.rn-weather-place{font-weight:700}
.rn-weather-temp{font-size:28px;font-weight:800}
.rn-weather-desc{color:#555;margin-top:6px}


/* --- v1.09 additions --- */
.rn-breaking-plain{background:#ffeb3b;color:#111;border-radius:14px;padding:18px;margin:12px 0 24px}
.rn-breaking-plain .rn-breaking-badge{background:#111;color:#ffeb3b;border-radius:999px;padding:4px 10px;font-weight:700;font-size:12px;margin-right:8px}
.rn-breaking-plain h2{margin:10px 0 6px;font-size:28px;line-height:1.15}
.rn-breaking-plain p{margin:0}

.rn-list{list-style:none;padding:0;margin:0}
.rn-list li{padding:8px 0;border-bottom:1px solid #eee}
.rn-list li a{text-decoration:none}

.rn-loadmore-wrap{text-align:center;margin-top:16px}
.rn-loadmore{display:inline-block;padding:10px 16px;border-radius:999px;border:1px solid #ddd;background:#fff;cursor:pointer}
.rn-loadmore[disabled]{opacity:.5;cursor:not-allowed}

.rn-trending li{counter-increment:item}
.rn-trending li::before{content:counter(item) "."; margin-right:8px; color:#888}


/* v1.09a: force-breaking-plain fallback */
.rn-breaking.rn-force-plain .rn-breaking-media{display:none !important}
.rn-breaking.rn-force-plain .rn-breaking-card{background:#ffeb3b !important;color:#111 !important}
.rn-breaking.rn-force-plain .rn-breaking-title{color:#111 !important}
.rn-breaking.rn-force-plain .rn-breaking-excerpt{color:#222 !important}

/* RN homepage ad slots */
.rn-home-ad-wrap {
    margin: 25px auto;
    text-align: center;
}

.rn-home-ad {
    display: inline-block;
    max-width: 336px;
    width: 100%;
}

.rn-home-ad img {
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* Affiliate banner */
.rn-affiliate{margin:14px 0;padding:10px;border:1px solid rgba(0,0,0,.08);border-radius:10px;background:#fff;text-align:center}
.rn-affiliate-label{font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;opacity:.75;margin-bottom:4px}
.rn-affiliate-sub{font-size:12px;opacity:.8;margin-bottom:8px}
.rn-affiliate-img{max-width:100%;height:auto;display:block;margin:0 auto;border-radius:8px}

/* Most read */
.rn-most-read-list{margin:0;padding-left:18px}
.rn-most-read-list li{margin:6px 0}
.rn-most-read-list a{text-decoration:none}
.rn-most-read-list a:hover{text-decoration:underline}
