/* RacersReunion Archive — main styles. Matches the approved home page mockup. */

:root {
	--rr-ink: #16181B;
	--rr-ink-2: #2A2D31;
	--rr-line-dark: #33373C;
	--rr-paper: #F2EEE5;
	--rr-paper-2: #D9D3C6;
	--rr-rule: #CFC8B9;
	--rr-muted: #5E5A52;
	--rr-muted-dark: #A9A49A;
	--rr-body-dark: #CFCAC0;
	--rr-gold: #E0A93A;
	--rr-accent: #B3261E; /* overridden by the Customizer */
	--rr-display: Oswald, "Arial Narrow", sans-serif;
	--rr-sans: "Libre Franklin", system-ui, sans-serif;
	--rr-mono: "IBM Plex Mono", ui-monospace, monospace;
	--rr-max: 1280px;
}

*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: var(--rr-paper); color: var(--rr-ink); font-family: var(--rr-sans); font-size: 17px; line-height: 1.55; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--rr-ink); text-decoration: none; }
a:hover { color: var(--rr-accent); }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid var(--rr-gold); outline-offset: 2px; }

.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
.skip-link:focus { position: fixed !important; top: 8px; left: 8px; width: auto; height: auto; clip: auto; z-index: 100; background: var(--rr-paper); padding: 10px 14px; }

.rr-wrap { max-width: var(--rr-max); margin: 0 auto; padding-left: 24px; padding-right: 24px; }
.rr-mono { font-family: var(--rr-mono); font-size: 13px; color: var(--rr-muted); }

/* Placeholder stripe, shown behind images and when an image is missing */
.rr-ph { background-color: var(--rr-ink-2); background-image: repeating-linear-gradient(135deg, rgba(255,255,255,.05) 0 12px, rgba(255,255,255,0) 12px 24px); }
.rr-ph--light { background-color: var(--rr-paper-2); background-image: repeating-linear-gradient(135deg, rgba(0,0,0,.05) 0 12px, rgba(0,0,0,0) 12px 24px); }
.rr-check { background-image: conic-gradient(var(--rr-ink) 25%, var(--rr-paper) 0 50%, var(--rr-ink) 0 75%, var(--rr-paper) 0); background-size: 10px 10px; }

/* Type */
.rr-kicker { font-family: var(--rr-mono); font-size: 13px; letter-spacing: 2px; text-transform: uppercase; color: var(--rr-accent); }
.rr-kicker--gold { color: var(--rr-gold); }
.rr-h2 { margin: 4px 0 0; font-family: var(--rr-display); font-weight: 700; font-size: clamp(30px, 4vw, 40px); line-height: 1.05; text-transform: uppercase; }
.rr-h3 { margin: 0 0 12px; font-family: var(--rr-display); font-weight: 600; font-size: 22px; text-transform: uppercase; }
.rr-more { font-family: var(--rr-display); font-weight: 500; font-size: 15px; letter-spacing: 1px; text-transform: uppercase; color: var(--rr-accent); }
.rr-more--gold { color: var(--rr-gold); }
.rr-btn { display: inline-block; background: var(--rr-ink); color: var(--rr-paper); padding: 14px 22px; font-family: var(--rr-display); font-weight: 600; font-size: 15px; letter-spacing: 1px; text-transform: uppercase; }
.rr-btn:hover { color: #fff; background: var(--rr-accent); }

/* Header */
.rr-header { background: var(--rr-ink); color: var(--rr-paper); }
.rr-header__inner { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; padding-top: 14px; padding-bottom: 14px; }
.rr-logo { display: flex; align-items: center; gap: 12px; color: var(--rr-paper); margin-right: auto; }
.rr-logo:hover { color: var(--rr-paper); }
.rr-logo__mark { width: 34px; height: 34px; border: 2px solid var(--rr-paper); }
.rr-logo__text { font-family: var(--rr-display); font-weight: 700; font-size: 26px; letter-spacing: .5px; text-transform: uppercase; }
.rr-logo__text sup { font-size: 13px; }
.rr-nav__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0 22px; }
.rr-nav a { display: block; padding: 10px 0; color: var(--rr-paper); font-family: var(--rr-display); font-weight: 500; font-size: 15px; letter-spacing: 1px; text-transform: uppercase; }
.rr-nav a:hover, .rr-header__search:hover { color: var(--rr-gold); }
.rr-header__search { color: var(--rr-paper); display: inline-flex; padding: 11px; }
@media (max-width: 760px) {
	.rr-nav { order: 3; width: 100%; overflow-x: auto; }
	.rr-nav__list { flex-wrap: nowrap; gap: 0 18px; }
	.rr-nav a { white-space: nowrap; }
}

/* Hero */
.rr-hero { background: var(--rr-ink); color: var(--rr-paper); border-top: 1px solid var(--rr-line-dark); }
.rr-hero__inner { display: flex; flex-wrap: wrap; gap: 48px; align-items: center; padding-top: 56px; padding-bottom: 64px; }
.rr-hero__copy { flex: 1 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 22px; }
.rr-hero__title { margin: 0; font-family: var(--rr-display); font-weight: 700; font-size: clamp(44px, 6vw, 72px); line-height: .98; text-transform: uppercase; }
.rr-hero__title span { color: var(--rr-accent); filter: brightness(1.25); }
.rr-hero__body { margin: 0; font-size: 19px; color: var(--rr-body-dark); max-width: 560px; }

.rr-search { display: flex; flex-wrap: wrap; max-width: 620px; margin-top: 6px; }
.rr-search input { flex: 1 1 260px; min-width: 0; height: 58px; padding: 0 18px; font: inherit; font-size: 17px; border: 0; border-radius: 0; background: var(--rr-paper); color: var(--rr-ink); }
.rr-search button, .rr-signup__form button { height: 58px; padding: 0 28px; border: 0; border-radius: 0; background: var(--rr-accent); color: #fff; font-family: var(--rr-display); font-weight: 600; font-size: 17px; letter-spacing: 1px; text-transform: uppercase; cursor: pointer; }
.rr-search--light input { border: 2px solid var(--rr-ink); border-right: 0; background: #fff; height: 54px; }
.rr-search--light button { height: 54px; }

.rr-tries { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 14px; }
.rr-tries span { color: var(--rr-muted-dark); }
.rr-tries a { color: var(--rr-paper); border: 1px solid #4A4E54; padding: 8px 12px; }
.rr-tries a:hover { border-color: var(--rr-gold); color: var(--rr-gold); }

.rr-mosaic { flex: 1 1 420px; min-width: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: 150px; gap: 8px; }
.rr-mosaic__item { position: relative; overflow: hidden; display: block; }
.rr-mosaic__item--big { grid-column: span 2; grid-row: span 2; }
.rr-mosaic__item img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.15) contrast(1.05); transition: transform .4s; }
.rr-mosaic__item:hover img { transform: scale(1.04); }
.rr-mosaic__cap { position: absolute; left: 8px; bottom: 8px; right: 8px; font-family: var(--rr-mono); font-size: 11px; color: #E9E4D9; background: rgba(22,24,27,.85); padding: 5px 8px; }
@media (max-width: 560px) { .rr-mosaic { grid-auto-rows: 110px; } }

.rr-stats { border-top: 1px solid var(--rr-line-dark); }
.rr-stats__inner { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 16px; padding-top: 22px; padding-bottom: 22px; }
.rr-stats strong { display: block; font-family: var(--rr-display); font-weight: 600; font-size: 34px; color: var(--rr-gold); }
.rr-stats span { font-size: 14px; color: var(--rr-muted-dark); }

/* Sections */
.rr-section { padding-top: 48px; padding-bottom: 24px; }
.rr-section__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 12px; margin-bottom: 24px; }

.rr-eras { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; }
.rr-era { display: block; background: var(--rr-ink); color: var(--rr-paper); padding: 22px 18px; }
.rr-era:hover { background: var(--rr-accent); color: #fff; }
.rr-era__name { display: block; font-family: var(--rr-display); font-weight: 700; font-size: 40px; line-height: 1.1; }
.rr-era__desc { display: block; font-size: 13px; color: var(--rr-muted-dark); margin-top: 4px; }
.rr-era:hover .rr-era__desc { color: #fff; }

.rr-legends { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 20px; }
.rr-legend { display: flex; flex-direction: column; gap: 8px; }
.rr-legend__img { aspect-ratio: 4 / 5; overflow: hidden; }
.rr-legend__img img { width: 100%; height: 100%; object-fit: cover; }
.rr-legend__name { font-family: var(--rr-display); font-weight: 600; font-size: 22px; text-transform: uppercase; line-height: 1.15; margin-top: 4px; }
.rr-legend__meta { font-size: 14px; color: var(--rr-muted); }

.rr-split { display: flex; flex-wrap: wrap; gap: 40px; }
.rr-split__intro { flex: 1 1 320px; min-width: 0; display: flex; flex-direction: column; gap: 14px; align-items: flex-start; }
.rr-split__intro p { margin: 0; color: #45423C; }
.rr-split__main { flex: 999 1 560px; min-width: 0; }

.rr-tracks { flex: 999 1 560px; min-width: 0; list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); column-gap: 24px; border-top: 2px solid var(--rr-ink); }
.rr-tracks a { display: flex; justify-content: space-between; gap: 12px; padding: 16px 4px; border-bottom: 1px solid var(--rr-rule); font-weight: 600; }

.rr-threads { list-style: none; margin: 0; padding: 0; border-top: 2px solid var(--rr-ink); }
.rr-threads a { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 16px; padding: 18px 4px; border-bottom: 1px solid var(--rr-rule); }
.rr-threads__title { font-family: var(--rr-display); font-weight: 600; font-size: 21px; line-height: 1.25; }

.rr-media { flex: 1 1 300px; min-width: 0; align-self: flex-start; background: var(--rr-ink); color: var(--rr-paper); padding: 28px; display: flex; flex-direction: column; gap: 14px; }
.rr-media__thumb { position: relative; aspect-ratio: 16 / 9; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.rr-media__thumb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.rr-media__thumb svg { position: relative; }
.rr-media__title { font-family: var(--rr-display); font-weight: 600; font-size: 22px; line-height: 1.2; }

.rr-signup { background: var(--rr-accent); color: #fff; padding: 40px; display: flex; flex-wrap: wrap; gap: 28px; align-items: center; justify-content: space-between; margin-bottom: 40px; }
.rr-signup__copy { flex: 1 1 380px; min-width: 0; }
.rr-signup__copy p { margin: 10px 0 0; }
.rr-signup__form { flex: 1 1 380px; min-width: 0; display: flex; flex-wrap: wrap; }
.rr-signup__form input { flex: 1 1 220px; min-width: 0; height: 54px; padding: 0 16px; border: 0; border-radius: 0; font: inherit; font-size: 16px; }
.rr-signup__form button { height: 54px; background: var(--rr-ink); color: var(--rr-paper); }
.rr-account .rr-signup__form input { border: 2px solid var(--rr-ink); border-right: 0; }
@media (max-width: 560px) { .rr-signup { padding: 28px 20px; } }

/* Archive pages */
.rr-pagehead { background: var(--rr-ink); color: var(--rr-paper); padding: 48px 0 40px; }
.rr-pagehead__title { margin: 8px 0 0; font-family: var(--rr-display); font-weight: 700; font-size: clamp(38px, 5vw, 60px); line-height: 1; text-transform: uppercase; }
.rr-pagehead__body { color: var(--rr-body-dark); max-width: 640px; margin: 14px 0 0; }
.rr-pagehead__count { color: var(--rr-muted-dark); margin: 14px 0 0; }
.rr-pagehead .rr-search { margin-top: 18px; }

.rr-filters { display: flex; flex-wrap: wrap; gap: 8px; padding-top: 24px; }
.rr-filters a { border: 1px solid var(--rr-rule); padding: 8px 14px; font-size: 14px; }
.rr-filters a[aria-current] { background: var(--rr-ink); color: var(--rr-paper); border-color: var(--rr-ink); }

.rr-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 24px 20px; }
.rr-card a { display: flex; flex-direction: column; gap: 8px; }
.rr-card__img { aspect-ratio: 4 / 3; overflow: hidden; }
.rr-card--rr_legend .rr-card__img { aspect-ratio: 4 / 5; }
.rr-card__img img { width: 100%; height: 100%; object-fit: cover; }
.rr-card__title { font-weight: 600; line-height: 1.3; }
.rr-card__meta { font-size: 13px; color: var(--rr-muted); }

.rr-pager { padding: 32px 0 16px; }
.rr-pager .nav-links { display: flex; flex-wrap: wrap; gap: 6px; }
.rr-pager .page-numbers { display: inline-flex; min-width: 44px; height: 44px; align-items: center; justify-content: center; padding: 0 12px; border: 1px solid var(--rr-rule); font-family: var(--rr-display); }
.rr-pager .current { background: var(--rr-ink); color: var(--rr-paper); border-color: var(--rr-ink); }

/* Single items */
.rr-single { padding-top: 48px; padding-bottom: 48px; max-width: 860px; }
.rr-single__title { margin: 8px 0 0; font-family: var(--rr-display); font-weight: 700; font-size: clamp(32px, 4.5vw, 52px); line-height: 1.05; text-transform: uppercase; }
.rr-single__by { margin: 12px 0 0; }
.rr-prose { margin-top: 28px; font-size: 18px; }
.rr-prose p { margin: 0 0 1.1em; }
.rr-prose a { color: var(--rr-accent); text-decoration: underline; }
.rr-embed { margin-top: 28px; aspect-ratio: 16 / 9; background: #000; }
.rr-embed iframe, .rr-embed video { width: 100%; height: 100%; border: 0; }

.rr-chips { list-style: none; margin: 28px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.rr-chips a { display: inline-block; border: 1px solid var(--rr-ink); padding: 6px 12px; font-size: 14px; font-weight: 600; }
.rr-chips a:hover { background: var(--rr-ink); color: var(--rr-paper); }
.rr-archived-note { margin-top: 28px; padding-top: 16px; border-top: 1px solid var(--rr-rule); font-size: 14px; color: var(--rr-muted); }
.rr-archived-note a { color: var(--rr-accent); text-decoration: underline; }

.rr-photo__stage { background: var(--rr-ink); display: flex; justify-content: center; padding: 32px 16px; }
.rr-photo__stage img { max-height: 78vh; width: auto; }
.rr-photo__missing { width: 100%; max-width: 900px; aspect-ratio: 4 / 3; display: flex; align-items: center; justify-content: center; color: var(--rr-muted-dark); font-family: var(--rr-mono); }
.rr-photo__body { max-width: 860px; padding-top: 32px; padding-bottom: 48px; }
.rr-photo__caption { font-size: 19px; margin: 16px 0 0; }
.rr-photo__pager { display: flex; justify-content: space-between; gap: 16px; margin-top: 32px; font-family: var(--rr-display); text-transform: uppercase; letter-spacing: 1px; }
.rr-transcript { margin-top: 36px; }

/* Forum transcript (markup written by the importer) */
.rr-thread { margin-top: 28px; border-top: 2px solid var(--rr-ink); }
.rr-post { padding: 20px 0; border-bottom: 1px solid var(--rr-rule); }
.rr-post__meta { font-family: var(--rr-mono); font-size: 13px; color: var(--rr-muted); margin-bottom: 8px; }
.rr-post__meta strong { font-family: var(--rr-sans); font-size: 15px; color: var(--rr-ink); }
.rr-single__by a, .rr-post__meta strong a { color: inherit; text-decoration: underline; text-decoration-color: var(--rr-accent); text-underline-offset: 3px; }
.rr-single__by a:hover, .rr-post__meta strong a:hover { color: var(--rr-accent); }
.rr-post__body p { margin: 0 0 .8em; }
.rr-post:first-child .rr-post__body { font-size: 19px; }

.rr-legendpage { padding-top: 48px; padding-bottom: 32px; }
.rr-legendpage__img { flex: 1 1 280px; max-width: 380px; aspect-ratio: 4 / 5; overflow: hidden; }
.rr-legendpage__img img { width: 100%; height: 100%; object-fit: cover; }

.rr-account { display: flex; flex-wrap: wrap; gap: 40px; padding-top: 40px; padding-bottom: 56px; }
.rr-account__copy { flex: 999 1 520px; min-width: 0; margin-top: 0; }
.rr-account__actions { flex: 1 1 320px; min-width: 0; display: flex; flex-direction: column; gap: 20px; }
.rr-account__box { background: #fff; border: 1px solid var(--rr-rule); padding: 24px; }

/* Footer */
.rr-footer { background: var(--rr-ink); color: var(--rr-muted-dark); font-size: 14px; }
.rr-footer__flag { height: 10px; }
.rr-footer__inner { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 24px; padding-top: 36px; padding-bottom: 20px; }
.rr-footer__about { max-width: 520px; }
.rr-footer__about a { color: var(--rr-paper); text-decoration: underline; }
.rr-footer__title { font-family: var(--rr-display); font-weight: 700; font-size: 20px; color: var(--rr-paper); text-transform: uppercase; }
.rr-footer__nav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0 22px; }
.rr-footer__nav a { display: inline-block; padding: 6px 0; color: var(--rr-paper); }
.rr-footer__copy { padding-bottom: 28px; font-size: 13px; }

/* Tightening */
.rr-tracks a span:first-child { flex: 1 1 auto; }
.rr-tracks .rr-mono { white-space: nowrap; }
@media (max-width: 640px) {
	.rr-legends, .rr-eras, .rr-stats__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
	.rr-legend__name { font-size: 18px; }
	.rr-era { padding: 16px 14px; }
	.rr-era__name { font-size: 30px; }
	.rr-stats strong { font-size: 28px; }
	.rr-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 14px; }
}
@media (max-width: 480px) { .rr-logo__text { font-size: 21px; } .rr-logo__mark { width: 28px; height: 28px; } .rr-header__inner { flex-wrap: wrap; } .rr-logo { flex: 1 1 0; min-width: 0; } }
.rr-account__box .rr-search, .rr-account__box .rr-signup__form { flex-direction: column; gap: 8px; }
.rr-account__box input { flex: 0 0 auto; width: 100%; border: 2px solid var(--rr-ink) !important; }
.rr-account__box button { width: 100%; }

/* Uploaded logo (Appearance → Customize → Site Identity) */
.rr-logo--image .custom-logo-link { display: block; }
.rr-logo--image img { display: block; width: auto; height: auto; max-height: 56px; max-width: 280px; }
@media (max-width: 480px) { .rr-logo--image img { max-height: 42px; max-width: 200px; } }

/* Radio player */
.rr-audio { margin-top: 28px; background: var(--rr-ink); padding: 18px; }
.rr-audio audio { width: 100%; display: block; }

/* Fit nine nav items on one line at desktop widths */
@media (min-width: 1320px) {
	.rr-header__inner { flex-wrap: nowrap; gap: 12px 20px; }
	.rr-nav__list { flex-wrap: nowrap; gap: 0 15px; }
	.rr-nav a { font-size: 14px; letter-spacing: .5px; white-space: nowrap; }
	.rr-nav .sub-menu a { letter-spacing: .8px; }
}
@media (min-width: 761px) and (max-width: 1319px) {
	.rr-nav { order: 3; width: 100%; }
	.rr-nav__list { gap: 0 20px; }
}
/* Missing images: hide alt text over the striped placeholder */
.rr-mosaic__item img, .rr-card__img img, .rr-legend__img img, .rr-media__thumb img { color: transparent; font-size: 0; }

/* Stock car / drag racing entry cards */
.rr-discs { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 16px; }
.rr-disc { position: relative; display: flex; flex-direction: column; gap: 8px; padding: 32px 28px; background: var(--rr-ink); color: var(--rr-paper); overflow: hidden; }
.rr-disc::after { content: ""; position: absolute; right: 0; top: 0; bottom: 0; width: 28px; background-image: conic-gradient(var(--rr-ink) 25%, var(--rr-paper) 0 50%, var(--rr-ink) 0 75%, var(--rr-paper) 0); background-size: 14px 14px; opacity: .9; }
.rr-disc--drag-racing { background: var(--rr-accent); }
.rr-disc--drag-racing .rr-kicker--gold { color: #FFE0A3; }
.rr-disc:hover { color: #fff; filter: brightness(1.12); }
.rr-disc__name { font-family: var(--rr-display); font-weight: 700; font-size: clamp(32px, 4vw, 46px); line-height: 1; text-transform: uppercase; padding-right: 36px; }
.rr-disc__desc { color: inherit; opacity: .85; max-width: 420px; padding-right: 36px; }
.rr-disc__go { margin-top: 6px; font-family: var(--rr-display); font-weight: 600; letter-spacing: 1px; text-transform: uppercase; font-size: 15px; }
.rr-filters--disc a { font-weight: 600; }

/* Main menu dropdowns */
.rr-nav .menu-item-has-children { position: relative; display: flex; align-items: center; }
.rr-nav__toggle { background: none; border: 0; color: var(--rr-paper); padding: 10px 0 10px 5px; cursor: pointer; line-height: 1; }
.rr-nav__toggle::before { content: ""; display: block; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); }
.rr-nav__toggle:hover { color: var(--rr-gold); }
.rr-nav .sub-menu { list-style: none; margin: 0; padding: 8px 0; position: absolute; top: 100%; left: -16px; z-index: 50; min-width: 230px; background: var(--rr-ink); border-top: 3px solid var(--rr-accent); box-shadow: 0 10px 24px rgba(0,0,0,.35); display: none; }
.rr-nav .sub-menu a { padding: 9px 16px; white-space: nowrap; }
.rr-nav .sub-menu a:hover { background: rgba(255,255,255,.06); }
.rr-nav .menu-item-has-children:hover > .sub-menu,
.rr-nav .menu-item-has-children:focus-within > .sub-menu,
.rr-nav .menu-item-has-children.is-open > .sub-menu { display: block; }
.rr-nav .menu-item-has-children.is-open > .rr-nav__toggle::before { transform: translateY(2px) rotate(-135deg); }
@media (max-width: 760px) {
	.rr-nav { overflow: visible; }
	.rr-nav__list { flex-wrap: wrap; }
	.rr-nav .menu-item-has-children { flex-wrap: wrap; }
	.rr-nav .menu-item-has-children:hover > .sub-menu { display: none; }
	.rr-nav .menu-item-has-children.is-open { flex-basis: 100%; }
	.rr-nav .menu-item-has-children.is-open > .sub-menu { display: block; position: static; flex-basis: 100%; min-width: 0; box-shadow: none; border-top: 0; border-left: 3px solid var(--rr-accent); padding: 0 0 6px; }
}

/* Contributors directory */
.rr-dir__find { display: block; max-width: 520px; margin-bottom: 36px; }
.rr-dir__find input { width: 100%; height: 54px; padding: 0 16px; font: inherit; font-size: 17px; border: 2px solid var(--rr-ink); border-radius: 0; background: var(--rr-paper); color: var(--rr-ink); }
.rr-dir__top { margin-bottom: 40px; }
.rr-dir__toplist { list-style: none; margin: 16px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 8px 24px; }
.rr-dir__toplist a { display: flex; align-items: baseline; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--rr-rule); color: var(--rr-ink); }
.rr-dir__toplist a:hover .rr-dir__name { color: var(--rr-accent); }
.rr-dir__rank { width: 24px; color: var(--rr-muted); }
.rr-dir__name { flex: 1 1 auto; min-width: 0; font-family: var(--rr-display); font-weight: 600; font-size: 18px; overflow-wrap: anywhere; }
.rr-dir__n { color: var(--rr-muted); }
.rr-dir__letters { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 28px; position: sticky; top: 0; z-index: 5; background: var(--rr-paper); padding: 10px 0; }
.rr-dir__letters a, .rr-dir__letters span { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; font-family: var(--rr-display); font-weight: 600; }
.rr-dir__letters a { background: var(--rr-ink); color: var(--rr-paper); }
.rr-dir__letters a:hover { background: var(--rr-accent); color: #fff; }
.rr-dir__letters span { color: var(--rr-muted); opacity: .5; }
.rr-dir__group { margin-bottom: 28px; scroll-margin-top: 64px; }
.rr-dir__letter { font-family: var(--rr-display); font-size: 30px; margin: 0 0 10px; border-bottom: 3px solid var(--rr-ink); }
.rr-dir__list { list-style: none; margin: 0; padding: 0; columns: 4 220px; column-gap: 28px; }
.rr-dir__list li { break-inside: avoid; padding: 4px 0; overflow-wrap: anywhere; }
.rr-dir__list a { color: var(--rr-ink); }
.rr-dir__list a:hover { color: var(--rr-accent); }
.rr-dir__list .rr-mono { color: var(--rr-muted); font-size: 12px; margin-left: 4px; }
[hidden] { display: none !important; }

/* Videos */
.rr-vgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 28px 20px; }
.rr-vgrid--row { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1000px) { .rr-vgrid--row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .rr-vgrid, .rr-vgrid--row { grid-template-columns: minmax(0, 1fr); } }
.rr-vcard a { display: flex; flex-direction: column; gap: 8px; color: var(--rr-ink); }
.rr-vcard__img { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background-color: var(--rr-ink); }
.rr-vcard__img img { width: 100%; height: 100%; object-fit: cover; display: block; color: transparent; font-size: 0; transition: transform .25s ease; }
.rr-vcard__play { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); transition: transform .2s ease; }
.rr-vcard a:hover .rr-vcard__play { transform: translate(-50%, -50%) scale(1.1); }
.rr-vcard a:hover .rr-vcard__img img { transform: scale(1.03); }
.rr-vcard a:hover .rr-vcard__title { color: var(--rr-accent); }
.rr-vcard__badge { position: absolute; left: 0; bottom: 0; background: var(--rr-ink); color: var(--rr-paper); font-size: 11px; letter-spacing: .5px; text-transform: uppercase; padding: 4px 8px; }
.rr-vcard--yt .rr-vcard__badge { background: var(--rr-accent); color: #fff; }
.rr-vcard__title { font-family: var(--rr-display); font-weight: 600; font-size: 19px; line-height: 1.2; overflow-wrap: anywhere; }
.rr-filters a .rr-mono { font-size: 12px; opacity: .7; }

/* Old member content: keep long links, wide tables, images and embeds inside the screen */
.rr-prose, .rr-thread, .rr-post__body { overflow-wrap: anywhere; min-width: 0; }
.rr-prose img, .rr-thread img { max-width: 100%; height: auto; }
.rr-prose iframe, .rr-thread iframe, .rr-prose embed, .rr-thread embed, .rr-prose object, .rr-thread object { max-width: 100%; }
.rr-prose table, .rr-thread table { display: block; max-width: 100%; overflow-x: auto; width: auto !important; }
.rr-prose td, .rr-thread td, .rr-prose th, .rr-thread th { width: auto !important; }
.rr-prose pre, .rr-thread pre { white-space: pre-wrap; }
.rr-single__title, .rr-pagehead__title, .rr-card__title, .rr-threads__title, .rr-media__title, .rr-h2 { overflow-wrap: anywhere; }

/* People browsing now */
.rr-online { display: inline-flex; align-items: center; gap: 8px; font-family: var(--rr-mono); font-size: 13px; color: var(--rr-muted-dark); }
.rr-online[hidden] { display: none; }
.rr-online__dot { width: 9px; height: 9px; border-radius: 50%; background: #3FB950; box-shadow: 0 0 0 0 rgba(63,185,80,.6); animation: rr-pulse 2s infinite; flex: none; }
@keyframes rr-pulse { 0% { box-shadow: 0 0 0 0 rgba(63,185,80,.55); } 70% { box-shadow: 0 0 0 8px rgba(63,185,80,0); } 100% { box-shadow: 0 0 0 0 rgba(63,185,80,0); } }
@media (prefers-reduced-motion: reduce) { .rr-online__dot { animation: none; } }
.rr-stats__online { padding-bottom: 18px; }
.rr-stats__online .rr-online { color: var(--rr-body-dark); font-size: 14px; }
.rr-online--footer { margin-left: 14px; }
@media (max-width: 560px) { .rr-online--footer { display: flex; margin: 8px 0 0; } .rr-online--footer[hidden] { display: none; } }
