/* BB rails: streaming-style library layout shared by Simulations, Drills and Arsenal.
   Same look as the Intel library (free/intel/): full-bleed featured hero, filter chips + search,
   one horizontal rail per lane, and a details panel that opens beneath the row.
   Markup is generated by bbtechtools-internal/dev/rails/build_rails.py; behavior lives in js/bb-rails.js. */
.bb-rails {
  --rl-bg: var(--theme-component-page-3); --rl-ink: var(--theme-component-ink-2); --rl-muted: var(--theme-component-muted-1); --rl-dim: var(--theme-component-muted-2);
  --rl-line: var(--theme-component-ink-8); --rl-panel: var(--theme-component-surface-13); --rl-panel-2: var(--theme-component-surface-14);
  --rl-green: var(--theme-component-primary-1); --rl-green-soft: var(--theme-component-primary-22); --rl-amber: var(--theme-component-ink-9);
  --rl-mono: "JetBrains Mono", Consolas, ui-monospace, monospace;
  --rl-gutter: clamp(16px, 4vw, 56px);
  --hue: var(--rl-green);
  background: var(--rl-bg); color: var(--rl-ink);
  display: block; overflow: hidden; color-scheme: dark;
}
.bb-rails *, .bb-rails *::before, .bb-rails *::after { box-sizing: border-box; }

/* hero */
.rl-hero { position: relative; isolation: isolate; min-height: clamp(460px, 56vw, 640px); display: grid; align-content: end; padding: clamp(110px, 12vw, 150px) var(--rl-gutter) 34px; overflow: hidden; }
.rl-hero-img { position: absolute; inset: 0; z-index: -2; background: var(--rl-panel) var(--rl-img, none) center / cover no-repeat; transform: scale(1.06); animation: rl-drift 24s ease-in-out infinite alternate; }
.rl-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, var(--theme-component-page-4) 0%, var(--theme-component-page-5) 40%, var(--theme-component-page-6) 75%), linear-gradient(0deg, var(--rl-bg) 0%, transparent 45%); }
@keyframes rl-drift { to { transform: scale(1.12) translate(-1.5%, -1%); } }
.rl-hero-body { max-width: 660px; display: grid; gap: 14px; }
.rl-eyebrow { font: 800 14px var(--rl-mono); letter-spacing: 0.14em; text-transform: uppercase; color: var(--rl-green); }
.rl-hero h1 { margin: 0; font-size: clamp(2rem, 4.8vw, 3.5rem); font-weight: 900; line-height: 1; letter-spacing: -0.025em; color: var(--rl-ink); text-wrap: balance; }
.rl-hero-lead { margin: 0; color: var(--theme-component-ink-1); font-size: 1.06rem; max-width: 58ch; }
.rl-feature { display: grid; gap: 10px; margin-top: 6px; padding: 14px 16px; border-left: 3px solid var(--hue); background: var(--theme-component-page-7); border-radius: 0 8px 8px 0; max-width: 560px; }
.rl-feature-k { font: 800 14px var(--rl-mono); letter-spacing: 0.12em; text-transform: uppercase; color: var(--rl-dim); display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.rl-feature b { font-size: 1.15rem; font-weight: 900; }
.rl-feature p { margin: 0; color: var(--rl-muted); font-size: 15px; }
.rl-actions { display: flex; gap: 10px; flex-wrap: wrap; }

.rl-btn { font-family: inherit; font-weight: 800; font-size: max(14px, 0.9rem); border-radius: 6px; padding: 11px 18px; min-height: 44px; cursor: pointer; border: 1px solid var(--theme-component-border-4); background: var(--theme-component-ink-10); color: var(--rl-ink); text-decoration: none; display: inline-flex; align-items: center; gap: 8px; transition: transform 0.15s, background 0.15s, border-color 0.15s; }
.rl-btn:hover { transform: translateY(-2px); border-color: var(--theme-component-primary-23); background: var(--rl-green-soft); color: var(--rl-ink); }
.rl-btn.primary { background: var(--rl-green); color: var(--theme-component-on-primary-2); border-color: var(--rl-green); }
.rl-btn.primary:hover { background: var(--theme-component-primary-24); color: var(--theme-component-on-primary-2); }

/* tools: chips + search */
.rl-tools { display: flex; gap: 10px 14px; align-items: center; flex-wrap: wrap; margin-top: 24px; padding: 12px 14px; border: 1px solid var(--rl-line); border-radius: 10px; background: var(--theme-component-page-8); backdrop-filter: blur(8px); max-width: 1000px; }
.rl-tools .rl-tl { font: 800 14px var(--rl-mono); color: var(--rl-dim); letter-spacing: 0.14em; text-transform: uppercase; }
.rl-chips { display: flex; gap: 6px; flex-wrap: wrap; flex: 1; }
.rl-chip { font: 700 14px var(--rl-mono); color: var(--rl-muted); border: 1px solid var(--rl-line); border-radius: 999px; padding: 6px 12px; background: none; cursor: pointer; display: inline-flex; gap: 6px; align-items: center; text-decoration: none; transition: border-color 0.2s, color 0.2s, background 0.2s; }
.rl-chip:hover { color: var(--rl-ink); border-color: var(--theme-component-primary-25); }
.rl-chip[aria-pressed="true"], .rl-chip[aria-current="page"] { color: var(--rl-ink); border-color: var(--rl-green); background: var(--rl-green-soft); }
.rl-chip i { width: 8px; height: 8px; border-radius: 50%; background: var(--hue); }
.rl-search { flex: 0 1 280px; min-width: 0; font-family: inherit; font-size: max(14px, 0.9rem); background: var(--rl-panel); color: var(--rl-ink); border: 1px solid var(--rl-line); border-radius: 6px; padding: 9px 12px; }
.rl-search::placeholder { color: var(--rl-dim); }

/* rows */
.rl-rows { display: grid; gap: clamp(26px, 4vw, 42px); padding: 8px 0 clamp(40px, 6vw, 72px); }
.rl-row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 4px; min-width: 0; }
.rl-row[hidden] { display: none; }
.rl-row-head { display: flex; align-items: baseline; gap: 6px 12px; padding: 0 var(--rl-gutter); flex-wrap: wrap; }
.rl-row-head .rl-kicker { font: 800 14px var(--rl-mono); letter-spacing: 0.12em; text-transform: uppercase; color: var(--hue); }
.rl-row-head h2 { margin: 0; font-size: clamp(1.15rem, 2.2vw, 1.5rem); font-weight: 900; letter-spacing: -0.01em; color: var(--rl-ink); }
.rl-row-head .rl-meta { font: 600 14px var(--rl-mono); color: var(--rl-dim); }
.rl-row-head .rl-more { margin-left: auto; font: 700 14px var(--rl-mono); color: var(--rl-muted); text-decoration: none; }
.rl-row-head .rl-more:hover { color: var(--hue); }
.rl-row-sub { margin: 2px 0 0; padding: 0 var(--rl-gutter); color: var(--rl-muted); font-size: max(14px, 0.9rem); max-width: 90ch; }
.rl-rail-wrap { position: relative; min-width: 0; }
.rl-rail { display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--rl-gutter); padding: 14px var(--rl-gutter) 18px; scrollbar-width: none; }
.rl-rail::-webkit-scrollbar { display: none; }
.rl-arrow { position: absolute; top: 14px; bottom: 18px; width: calc(var(--rl-gutter) - 4px); min-width: 36px; z-index: 4; border: 0; background: var(--theme-component-page-8); color: var(--rl-ink); font-size: 1.7rem; cursor: pointer; opacity: 0; transition: opacity 0.2s, background 0.2s; }
.rl-arrow.l { left: 0; } .rl-arrow.r { right: 0; }
.rl-rail-wrap:hover .rl-arrow, .rl-arrow:focus-visible { opacity: 1; }
.rl-arrow:hover { background: var(--theme-component-page-9); color: var(--hue); }
.rl-arrow[hidden] { display: none; }

/* tiles */
.rl-tile { flex: none; width: clamp(220px, 23vw, 280px); aspect-ratio: 16 / 10; scroll-snap-align: start; position: relative; border-radius: 8px; overflow: hidden; border: 1px solid var(--rl-line); background: var(--rl-panel); color: var(--rl-ink); text-decoration: none; display: block; transition: transform 0.25s cubic-bezier(.2,.8,.2,1), box-shadow 0.25s, border-color 0.25s; }
.rl-tile[hidden] { display: none; }
.rl-tile:hover, .rl-tile:focus-visible { transform: translateY(-6px) scale(1.04); z-index: 3; border-color: var(--hue); box-shadow: 0 18px 40px -16px var(--hue); color: var(--rl-ink); }
.rl-tile[aria-expanded="true"] { border-color: var(--hue); box-shadow: 0 0 0 2px var(--hue), 0 18px 40px -18px var(--hue); }
.rl-tile img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: top center; }
.rl-tile .rl-shade { position: absolute; inset: 0; background: linear-gradient(0deg, var(--theme-component-page-4) 12%, var(--theme-component-page-10) 58%, var(--theme-component-page-11)); }
.rl-tile .rl-tx { position: absolute; left: 14px; right: 14px; bottom: 12px; display: grid; gap: 4px; }
.rl-tile .rl-code { font: 800 14px var(--rl-mono); color: var(--hue); letter-spacing: 0.08em; text-transform: uppercase; }
.rl-tile b { font-weight: 900; font-size: 1.02rem; line-height: 1.15; }
.rl-tile .rl-sub { font: 600 14px var(--rl-mono); color: var(--rl-muted); }
.rl-tag { position: absolute; top: 10px; right: 10px; font: 800 14px var(--rl-mono); letter-spacing: 0.08em; text-transform: uppercase; border-radius: 3px; padding: 3px 7px; }
.rl-tag.free { background: var(--rl-green); color: var(--theme-component-on-primary-2); }
.rl-tag.pro { background: var(--theme-component-page-12); color: var(--rl-amber); border: 1px solid var(--theme-component-border-5); }
.rl-tile.lane { aspect-ratio: 16 / 10; }
.rl-tile.lane b { font-size: 1.2rem; }

/* details panel */
.rl-fo { margin: 0 var(--rl-gutter); border: 1px solid var(--hue); border-radius: 10px; background: linear-gradient(180deg, var(--rl-panel-2), var(--rl-panel)); overflow: hidden; animation: rl-open 0.28s cubic-bezier(.2,.8,.2,1); }
.rl-fo[hidden] { display: none; }
@keyframes rl-open { from { opacity: 0; transform: translateY(-8px); } }
.rl-fo-in { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.4fr); gap: clamp(16px, 3vw, 32px); padding: clamp(16px, 2.4vw, 26px); }
.rl-fo-img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: top center; border-radius: 8px; border: 1px solid var(--rl-line); }
.rl-fo-body { display: grid; gap: 12px; align-content: start; min-width: 0; }
.rl-fo-k { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; font: 800 14px var(--rl-mono); letter-spacing: 0.1em; text-transform: uppercase; color: var(--hue); }
.rl-fo-k .rl-tag { position: static; }
.rl-fo h3 { margin: 0; font-size: clamp(1.25rem, 2.4vw, 1.6rem); font-weight: 900; color: var(--rl-ink); outline: none; }
.rl-fo p { margin: 0; color: var(--theme-component-ink-11); font-size: max(15px, 0.96rem); line-height: 1.6; }
.rl-skills { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.rl-skills li { font: 600 15px var(--rl-mono); color: var(--rl-muted); border: 1px solid var(--rl-line); border-radius: 4px; padding: 4px 8px; }
.rl-fo-x { justify-self: end; }

.rl-empty { margin: 0 var(--rl-gutter); padding: 28px; border: 1px dashed var(--rl-line); border-radius: 10px; color: var(--rl-muted); text-align: center; }
.rl-empty[hidden] { display: none; }

@media (max-width: 760px) {
  .rl-hero { min-height: 0; padding-top: 104px; }
  .rl-search { flex-basis: 100%; }
  .rl-tile { width: min(74vw, 300px); }
  .rl-arrow { display: none !important; }
  .rl-fo-in { grid-template-columns: 1fr; }
  .rl-row-head .rl-more { margin-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .rl-hero-img { animation: none; }
  .rl-tile, .rl-btn, .rl-fo { transition: none; animation: none; }
  .rl-tile:hover, .rl-tile:focus-visible, .rl-btn:hover { transform: none; }
}
.rl-feature .rl-tag, .rl-fo-k .rl-tag { position: static; }

/* generated episode art for items without a screenshot (drills, tools) */
.rl-art { position: absolute; inset: 0; display: block; overflow: hidden;
  background:
    radial-gradient(120% 90% at 85% 15%, color-mix(in srgb, var(--hue) 34%, transparent), transparent 60%),
    repeating-linear-gradient(0deg, var(--theme-component-ink-12) 0 1px, transparent 1px 22px),
    repeating-linear-gradient(90deg, var(--theme-component-ink-12) 0 1px, transparent 1px 22px),
    linear-gradient(160deg, var(--theme-component-surface-14), var(--theme-component-page-3)); }
.rl-num { position: absolute; right: 12px; top: 50%; transform: translateY(-62%); font: 900 clamp(4.2rem, 7vw, 5.6rem) / 1 var(--rl-mono); color: transparent; -webkit-text-stroke: 1.5px color-mix(in srgb, var(--hue) 80%, transparent); letter-spacing: -0.04em; }
.rl-art-k { position: absolute; left: 14px; top: 12px; font: 800 14px var(--rl-mono); letter-spacing: 0.12em; color: var(--hue); border: 1px solid color-mix(in srgb, var(--hue) 55%, transparent); border-radius: 3px; padding: 2px 6px; }
.rl-tile .rl-art + .rl-shade { background: linear-gradient(0deg, var(--theme-component-page-13) 10%, var(--theme-component-page-14) 60%, transparent); }
.rl-fo-art { position: relative; aspect-ratio: 16 / 10; border-radius: 8px; border: 1px solid var(--rl-line); overflow: hidden; }
.rl-fo-art .rl-num { font-size: clamp(5rem, 10vw, 8rem); }
.rl-ico { position: absolute; right: 18px; top: 50%; transform: translateY(-58%); font-size: clamp(3.2rem, 5vw, 4.2rem); color: color-mix(in srgb, var(--hue) 70%, transparent); filter: drop-shadow(0 0 18px color-mix(in srgb, var(--hue) 45%, transparent)); }
.rl-fo-art .rl-ico { font-size: clamp(4.5rem, 8vw, 6.5rem); right: 50%; transform: translate(50%, -50%); }
.rl-anchor { display: block; height: 0; scroll-margin-top: 90px; }
/* hero without a screenshot: generated art backdrop */
.rl-hero[style*="--rl-img:none"] .rl-hero-img {
  background:
    radial-gradient(70% 90% at 82% 30%, color-mix(in srgb, var(--hue) 30%, transparent), transparent 65%),
    repeating-linear-gradient(0deg, var(--theme-component-ink-12) 0 1px, transparent 1px 34px),
    repeating-linear-gradient(90deg, var(--theme-component-ink-12) 0 1px, transparent 1px 34px),
    var(--rl-panel); }
.rl-tile.lane img { object-position: center 38%; }

/* jump menu with cert artwork chips (Simulations) */
.rl-tools:has(.has-art) { max-width: 1180px; padding: 14px 16px; gap: 12px 16px; }
.rl-chip.has-art { padding: 5px 14px 5px 5px; border-radius: 10px; gap: 10px; text-align: left; font-family: inherit; }
.rl-chip.has-art img { width: 44px; height: 44px; border-radius: 7px; object-fit: cover; object-position: center 38%; flex: none; border: 1px solid var(--rl-line); }
.rl-chip-tx { display: grid; gap: 1px; line-height: 1.15; }
.rl-chip-tx b { font: 800 14px var(--rl-mono); color: var(--rl-ink); }
.rl-chip-tx small { font: 600 15px var(--rl-mono); color: var(--rl-dim); }
.rl-chip.has-art:hover img, .rl-chip.has-art[aria-current="page"] img, .rl-chip.has-art[aria-pressed="true"] img { border-color: var(--hue); }
.rl-chip.has-art[aria-current="page"], .rl-chip.has-art[aria-pressed="true"] { border-color: var(--hue); background: color-mix(in srgb, var(--hue) 14%, transparent); }
@media (max-width: 760px) { .rl-chip.has-art img { width: 36px; height: 36px; } }
/* vendor wordmark "tattooed" across generated art (text only, never a vendor logo) */
.rl-vendor { position: absolute; left: -6px; top: 34%; transform: rotate(-8deg); font: 900 clamp(2.4rem, 4.2vw, 3.2rem) / 1 var(--rl-mono); letter-spacing: -0.04em; color: color-mix(in srgb, var(--hue) 16%, transparent); white-space: nowrap; pointer-events: none; }

/* Study-track pages (track-*.html): exam facts, domain blueprint, numbered study path, membership band */
.tk-facts { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.tk-fact { border: 1px solid var(--rl-line); border-radius: 8px; padding: 8px 12px; background: var(--theme-component-page-7); display: grid; gap: 2px; }
.tk-fact span { font: 700 14px var(--rl-mono); letter-spacing: 0.12em; text-transform: uppercase; color: var(--rl-dim); }
.tk-fact b { font-weight: 800; font-size: 1rem; color: var(--rl-ink); font-variant-numeric: tabular-nums; }
.rl-chip.is-soon { opacity: 0.45; cursor: default; }
.rl-chip.is-soon:hover { border-color: var(--rl-line); color: var(--rl-muted); }
.tk-wrap { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 16px; padding: 8px var(--rl-gutter) 28px; }
@media (max-width: 900px) { .tk-wrap { grid-template-columns: minmax(0, 1fr); } }
.tk-panel { border: 1px solid var(--rl-line); border-radius: 12px; background: var(--rl-panel); padding: clamp(16px, 2.4vw, 24px); display: grid; gap: 14px; align-content: start; min-width: 0; }
.tk-panel-h { display: grid; gap: 4px; }
.tk-panel-h .rl-kicker { font: 800 14px var(--rl-mono); letter-spacing: 0.12em; text-transform: uppercase; color: var(--hue, var(--rl-green)); }
.tk-panel h2, .tk-cta h2 { margin: 0; font-size: clamp(1.2rem, 2.2vw, 1.45rem); font-weight: 900; color: var(--rl-ink); text-wrap: balance; }
.tk-doms { display: grid; gap: 14px; }
.tk-dom { display: grid; gap: 6px; }
.tk-dom-h { display: flex; align-items: baseline; gap: 10px; }
.tk-code { font: 800 14px var(--rl-mono); color: var(--rl-dim); }
.tk-dom-h b { font-weight: 800; color: var(--rl-ink); }
.tk-w { margin-left: auto; font: 800 max(14px, 0.95rem) var(--rl-mono); color: var(--rl-ink); font-variant-numeric: tabular-nums; }
.tk-bar { height: 10px; background: var(--rl-panel-2); border-radius: 2px; overflow: hidden; }
.tk-bar i { display: block; height: 100%; background: var(--hue, var(--rl-green)); border-radius: 0 4px 4px 0; }
.tk-cov { display: flex; flex-wrap: wrap; gap: 6px; }
.tk-cov a { font: 600 14px var(--rl-mono); color: var(--rl-muted); border: 1px solid var(--rl-line); border-radius: 999px; padding: 3px 10px; text-decoration: none; }
.tk-cov a:hover { color: var(--rl-ink); border-color: var(--hue, var(--rl-green)); }
.tk-all { font: 600 14px var(--rl-mono); color: var(--rl-dim); padding: 3px 4px; }
.tk-gap { margin: 0; font-size: 14px; color: var(--rl-muted); border-left: 3px solid var(--rl-amber); padding: 4px 0 4px 10px; }
.tk-gap b { font: 800 14px var(--rl-mono); letter-spacing: 0.1em; text-transform: uppercase; color: var(--rl-amber); margin-right: 6px; }
.tk-src { margin: 0; font-size: 14px; color: var(--rl-dim); }
.tk-steps { margin: 0; padding: 0; list-style: none; counter-reset: tk; display: grid; gap: 12px; }
.tk-steps li { counter-increment: tk; display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 12px; }
.tk-steps li::before { content: counter(tk); width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; font: 800 15px var(--rl-mono); color: var(--theme-component-on-primary-2); background: var(--hue, var(--rl-green)); }
.tk-steps b { color: var(--rl-ink); font-weight: 800; }
.tk-steps p { margin: 2px 0 4px; color: var(--rl-muted); font-size: 15px; }
.tk-steps a { font: 700 14px var(--rl-mono); color: var(--hue, var(--rl-green)); text-decoration: none; }
.tk-steps a:hover { text-decoration: underline; }
.tk-cta { margin: 0 var(--rl-gutter) clamp(36px, 5vw, 56px); border: 1px solid var(--hue, var(--rl-green)); border-radius: 12px; padding: clamp(18px, 3vw, 28px); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; background: linear-gradient(120deg, color-mix(in srgb, var(--hue, var(--theme-component-primary-1)) 12%, transparent), transparent 60%), var(--rl-panel); }
.tk-cta p { margin: 4px 0 0; color: var(--rl-muted); }
.tk-cta .rl-kicker { font: 800 14px var(--rl-mono); letter-spacing: 0.12em; text-transform: uppercase; color: var(--hue, var(--rl-green)); }
.bb-rails:has(.tk-hero) { --hue: inherit; }
/* Jump-to bar with art chips: keep it on one line on desktop (Brett, review 2026-10-12) */
@media (min-width: 900px) {
  .rl-tools:has(.has-art) { max-width: none; flex-wrap: nowrap; }
  .rl-tools:has(.has-art) .rl-chips { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; min-width: 0; }
  .rl-tools:has(.has-art) .rl-chips::-webkit-scrollbar { display: none; }
  .rl-tools:has(.has-art) .rl-chip { flex: none; }
  .rl-tools:has(.has-art) .rl-search { flex: 0 0 210px; }
  .rl-chip.has-art img { width: 36px; height: 36px; }
  .rl-chip.has-art { padding: 4px 12px 4px 4px; }
}
/* Tracks hub (tracks.html) */
.tkh-hero { min-height: 0; padding-bottom: 20px; }
.tkh-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 14px; padding: 8px var(--rl-gutter) 32px; }
.tkh-card { display: grid; grid-template-rows: auto 1fr; border: 1px solid var(--rl-line); border-radius: 12px; overflow: hidden; background: var(--rl-panel); color: var(--rl-ink); text-decoration: none; transition: transform 0.2s, border-color 0.2s, box-shadow 0.2s; }
.tkh-card:hover, .tkh-card:focus-visible { transform: translateY(-4px); border-color: var(--hue); box-shadow: 0 18px 40px -18px var(--hue); color: var(--rl-ink); }
.tkh-card img { width: 100%; aspect-ratio: 4 / 3; object-fit: contain; background: #000; display: block; }
.tkh-body { display: grid; gap: 6px; padding: 14px 16px 16px; }
.tkh-code { font: 800 14px var(--rl-mono); letter-spacing: 0.1em; text-transform: uppercase; color: var(--hue); }
.tkh-body b { font-size: 1.25rem; font-weight: 900; }
.tkh-facts { font-size: 14px; color: var(--rl-muted); }
.tkh-counts { display: flex; gap: 12px; font: 600 14px var(--rl-mono); color: var(--rl-muted); }
.tkh-counts b { color: var(--rl-ink); font-size: max(14px, 0.95rem); }
.tkh-go { margin-top: 4px; font: 800 14px var(--rl-mono); color: var(--hue); }
@media (prefers-reduced-motion: reduce) { .tkh-card { transition: none; } .tkh-card:hover { transform: none; } }
@media (min-width: 1000px) { .tkh-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
@media (min-width: 640px) and (max-width: 999px) { .tkh-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Field Manuals: Quick Sheets format badge (separate from membership). */
.rl-quick-sheet-badge { position: absolute; top: 12px; left: 12px; z-index: 2; padding: 4px 7px; border: 1px solid var(--theme-component-primary-26); border-radius: 4px; color: var(--theme-component-info-2); background: var(--theme-component-surface-15); font: 700 14px/1.2 var(--font-code, monospace); letter-spacing: .06em; }

/* T125: keep screenshot lettering behind a consistent phone scrim. */
@media (max-width: 760px) {
  .rl-hero-img { opacity: 0.25; }
  .rl-hero::before { background: linear-gradient(180deg, var(--theme-component-page-9), var(--theme-component-page-15)); }
}

/* Coverage tags remain inline, using the same FREE/MEMBERS rail styles. */
.tk-cov .rl-tag{position:static;display:inline-block;flex-shrink:0;white-space:nowrap}
.tk-cov a,.tk-cov .tk-all{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;max-width:100%;box-sizing:border-box}
/* Mouse drag-to-scroll (bb-rails.js): snapping and smooth scroll pause while dragging, then snap to the nearest card on release. */
.rl-rail.rl-dragging { scroll-snap-type: none; scroll-behavior: auto; user-select: none; }
.rl-rail.rl-dragging * { pointer-events: none; }
