.d2r-public { margin-block: 1.5rem 3rem; }
.d2r-filter-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)) auto; gap: 1rem; align-items: end; }
.d2r-filter-grid label { display: grid; gap: .4rem; }
.d2r-filter-grid .field { width: 100%; font-size: 1rem; min-height: 2.75rem; }
.d2r-table-scroll { overflow-x: auto; }
.d2r-rank-table { width: 100%; border-collapse: collapse; text-align: left; }
.d2r-rank-table th, .d2r-rank-table td { padding: .8rem; border-bottom: 1px solid #504332; }
.d2r-rank-table th { color: #ceb77c; }
.d2r-rank-table td { color: #e6e1d4; }
.d2r-paging { display: flex; gap: 1rem; align-items: center; justify-content: center; margin-top: 1.5rem; }
.d2r-status-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.d2r-status-card { padding: 1.25rem; border: 1px solid #504332; background: #0c1115a6; }
.d2r-status-card h2 { font-size: 1rem; margin: 0 0 1rem; }
.d2r-status-card strong { color: #8ac8ed; font-size: 1.9rem; }
.d2r-public[data-stale="true"] [data-d2r-stat] { opacity: .55; }
#d2rPublicNotice { margin-top: 1.25rem; }
.d2r-milestones { display: flex; flex-wrap: wrap; gap: .5rem; margin-block: 1rem; }
.d2r-milestones span { border: 1px solid #504332; padding: .5rem; color: #ceb77c; }
.d2r-achievement-detail { margin-top: 1.5rem; border-top: 1px solid #504332; padding-top: 1rem; }
.d2r-information { margin-block: 1.5rem 3rem; }
.d2r-information .panel-body { max-width: 58rem; margin-inline: auto; }
.d2r-information p, .d2r-information li { line-height: 1.8; }
.d2r-information a { color: #8ac8ed; text-underline-offset: .2em; }
.d2r-information a:focus-visible, .d2r-information summary:focus-visible { outline: 2px solid #8ac8ed; outline-offset: 4px; }
.d2r-information article + article { margin-top: 2rem; padding-top: 2rem; border-top: 1px solid #504332; }
.d2r-information time { color: #ceb77c; }
.d2r-information-note { border-left: 3px solid #8ac8ed; padding: .7rem 1rem; background: #0c1115a6; }
.d2r-information details { border-bottom: 1px solid #504332; padding: 1rem .25rem; }
.d2r-information summary { color: #ceb77c; cursor: pointer; font-size: 1.1rem; }
.d2r-information details p { margin-inline: 1rem; }
@media(max-width: 850px) { .d2r-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .d2r-status-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media(max-width: 480px) { .d2r-filter-grid, .d2r-status-grid { grid-template-columns: 1fr; } .d2r-paging { flex-wrap: wrap; } }
