.tsrr-box {
    box-sizing: border-box;
    margin: 2rem 0;
    padding: 1.25rem;
    border: 1px solid #d9dee5;
    border-radius: 10px;
    background: #f8fafc;
}
.tsrr-box *, .tsrr-box *::before, .tsrr-box *::after { box-sizing: border-box; }
.tsrr-box__header { margin-bottom: 1rem; }
.tsrr-box__heading { margin: 0 0 .35rem; font-size: 1.2rem; line-height: 1.45; }
.tsrr-box__intro { margin: 0; color: #4b5563; font-size: .95rem; }
.tsrr-grid { display: grid; gap: .85rem; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.tsrr-card { padding: 1rem; border: 1px solid #d7dee8; border-radius: 8px; background: #fff; }
.tsrr-meta { display: flex; flex-wrap: wrap; align-items: center; gap: .45rem; margin-bottom: .55rem; font-size: .78rem; }
.tsrr-badge, .tsrr-label { display: inline-block; font-weight: 700; }
.tsrr-badge--new { padding: .14rem .42rem; border-radius: 999px; background: #174a7e; color: #fff; }
.tsrr-label { color: #174a7e; }
.tsrr-title { margin: 0 0 .55rem; font-size: 1rem; line-height: 1.55; }
.tsrr-title a { color: inherit; text-decoration: none; }
.tsrr-title a:hover, .tsrr-title a:focus { text-decoration: underline; }
.tsrr-note { margin-bottom: .7rem; color: #6b7280; font-size: .84rem; }
.tsrr-cta { display: inline-block; font-weight: 700; color: #174a7e; text-decoration: none; }
.tsrr-cta:hover, .tsrr-cta:focus { text-decoration: underline; }
@media (max-width: 600px) {
    .tsrr-box { padding: 1rem; }
    .tsrr-grid { grid-template-columns: 1fr; }
}
