/* t55u – eBay-style ratings: badge, overview, lists, rate form, public profile, admin. */
:root {
  --rtx-ink: var(--a-ink, var(--ink, #1c1915));
  --rtx-muted: var(--a-muted, var(--muted, #5f5a52));
  --rtx-card: var(--a-card, var(--card, #fffcf7));
  --rtx-line: var(--a-line-2, var(--line, rgba(28, 25, 21, .16)));
  --rtx-pos: #17653f;
  --rtx-neu: #5a5247;
  --rtx-neg: #a12f2f;
  --rtx-pos-bg: #e3f3ea;
  --rtx-neu-bg: #efebe4;
  --rtx-neg-bg: #f9e4e1;
  --rtx-focus: var(--a-accent, var(--gold, #9a7040));
}
html[data-theme="dark"] {
  --rtx-pos: #8fd7ae;
  --rtx-neu: #cfc8bc;
  --rtx-neg: #ffa59c;
  --rtx-pos-bg: rgba(143, 215, 174, .13);
  --rtx-neu-bg: rgba(207, 200, 188, .12);
  --rtx-neg-bg: rgba(255, 165, 156, .13);
}

/* ---------- badge next to usernames ---------- */
.rt-badge { display: inline-flex; align-items: center; gap: 0; white-space: nowrap; font-size: .84em; font-weight: 650; line-height: 1; color: inherit; vertical-align: baseline; font-variant-numeric: tabular-nums; }
.rt-badge > span[aria-hidden] { display: inline-flex; align-items: center; gap: .18em; opacity: .92; }
.rt-badge .rt-ico { color: var(--rt, #f5c400); font-size: 1.02em; filter: drop-shadow(0 0 .6px rgba(0, 0, 0, .55)); }
html[data-theme="dark"] .rt-badge .rt-ico { filter: drop-shadow(0 0 .6px rgba(0, 0, 0, .9)); }
.rt-badge.is-neg .rt-num { color: var(--rtx-neg); }
.rt-badge.is-lg { font-size: .52em; vertical-align: middle; margin-left: .15em; }
.rt-badge.is-lg .rt-ico { font-size: 1.15em; }
.rt-tier-name { display: inline-block; margin-left: .5em; padding: .28em .7em; border-radius: 999px; font-size: .38em; font-weight: 650; vertical-align: middle; letter-spacing: .01em; border: 1px solid var(--rtx-line); color: var(--rtx-ink); font-family: inherit; }
.mk-seller .rt-badge { font-size: .92em; }
.fx-user-name + .rt-badge { display: inline-flex; margin-top: 2px; }
.hb-member-name .rt-badge { font-size: .8em; }

/* ---------- kind chips ---------- */
.rt-kind { display: inline-flex; align-items: center; gap: .35em; padding: .22em .6em; border-radius: 999px; font-size: .84rem; font-weight: 650; line-height: 1.25; }
.rt-kind.is-positive { color: var(--rtx-pos); background: var(--rtx-pos-bg); }
.rt-kind.is-neutral { color: var(--rtx-neu); background: var(--rtx-neu-bg); }
.rt-kind.is-negative { color: var(--rtx-neg); background: var(--rtx-neg-bg); }

/* ---------- overview card ---------- */
.rt-over { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(0, 1.35fr); gap: 22px; align-items: center; margin: 0 0 18px; padding: 22px; border: 1px solid var(--rtx-line); border-radius: 20px; background: var(--rtx-card); color: var(--rtx-ink); }
.rt-over-h { margin: 0 0 6px; font-size: .82rem; text-transform: uppercase; letter-spacing: .08em; color: var(--rtx-muted); font-weight: 650; }
.rt-score-num { margin: 0; display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.rt-score-num strong { font-size: 2.4rem; line-height: 1; font-variant-numeric: tabular-nums; }
.rt-score-num span { color: var(--rtx-muted); }
.rt-tier { margin: 10px 0 0; display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 999px; border: 1px solid color-mix(in srgb, var(--rt) 55%, transparent); background: color-mix(in srgb, var(--rt) 12%, transparent); font-weight: 650; }
.rt-tier i { color: var(--rt); filter: drop-shadow(0 0 .6px rgba(0, 0, 0, .55)); }
.rt-next, .rt-pct { margin: 10px 0 0; color: var(--rtx-muted); font-size: .94rem; }
.rt-pct strong { color: var(--rtx-ink); }
.rt-grid-wrap { overflow-x: auto; }
.rt-grid { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.rt-grid th, .rt-grid td { padding: 9px 10px; border-bottom: 1px solid var(--rtx-line); text-align: center; }
.rt-grid thead th { font-size: .82rem; color: var(--rtx-muted); font-weight: 650; }
.rt-grid tbody th { text-align: left; }
.rt-grid tbody tr:last-child th, .rt-grid tbody tr:last-child td { border-bottom: 0; }
.rt-grid td { font-weight: 650; font-size: 1.05rem; }

/* ---------- view switch, filters, list ---------- */
.rt-views { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 14px; }
.rt-views a { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 8px 14px; border-radius: 999px; border: 1px solid var(--rtx-line); color: var(--rtx-ink); text-decoration: none; font-weight: 600; background: var(--rtx-card); transition: border-color .15s, background .15s; }
.rt-views a:hover { border-color: var(--rtx-focus); }
.rt-views a.is-on { background: var(--a-brand, var(--brand, #12352c)); border-color: transparent; color: var(--a-brand-ink, #f7f3ea); }
html[data-theme="dark"] .rt-views a.is-on { color: #10140f; }
.rt-views em { font-style: normal; font-size: .8rem; padding: 1px 8px; border-radius: 999px; background: rgba(127, 127, 127, .18); }
.rt-views em.is-hot { background: var(--rtx-neg); color: #fff; }
html[data-theme="dark"] .rt-views em.is-hot { color: #1a0f0e; }
.rt-filter { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: end; margin: 0 0 14px; }
.rt-filter label { display: grid; gap: 4px; font-size: .84rem; color: var(--rtx-muted); font-weight: 600; }
.rt-filter select { min-height: 40px; min-width: 150px; }
.rt-hint { display: flex; gap: 8px; align-items: center; color: var(--rtx-muted); margin: 0 0 12px; }
.rt-list { display: grid; gap: 10px; }
.rt-row { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: 14px; align-items: start; padding: 14px 16px; border: 1px solid var(--rtx-line); border-radius: 16px; background: var(--rtx-card); color: var(--rtx-ink); scroll-margin-top: 90px; }
.rt-row:target { border-color: var(--rtx-focus); box-shadow: 0 0 0 3px color-mix(in srgb, var(--rtx-focus) 30%, transparent); }
.rt-row-ico { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; font-size: 1.15rem; }
.rt-row.is-positive .rt-row-ico { color: var(--rtx-pos); background: var(--rtx-pos-bg); }
.rt-row.is-neutral .rt-row-ico { color: var(--rtx-neu); background: var(--rtx-neu-bg); }
.rt-row.is-negative .rt-row-ico { color: var(--rtx-neg); background: var(--rtx-neg-bg); }
.rt-row.is-pending .rt-row-ico { color: var(--rtx-focus); background: color-mix(in srgb, var(--rtx-focus) 14%, transparent); }
.rt-row-main { min-width: 0; }
.rt-row-top { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin: 0; }
.rt-row-user { font-weight: 650; }
.rt-row-user.is-gone { color: var(--rtx-muted); font-weight: 500; }
.rt-row-title { font-size: 1.02rem; overflow-wrap: anywhere; }
.rt-role { font-size: .84rem; color: var(--rtx-muted); }
.rt-row-top time { margin-left: auto; font-size: .84rem; color: var(--rtx-muted); }
.rt-comment { margin: 8px 0 0; overflow-wrap: anywhere; }
.rt-comment.is-empty { color: var(--rtx-muted); font-style: italic; }
.rt-article { margin: 6px 0 0; font-size: .9rem; color: var(--rtx-muted); overflow-wrap: anywhere; }
.rt-reply { margin: 10px 0 0; padding: 10px 12px; border-left: 3px solid var(--rtx-focus); border-radius: 0 10px 10px 0; background: rgba(127, 127, 127, .08); }
.rt-reply strong { font-size: .82rem; text-transform: uppercase; letter-spacing: .06em; color: var(--rtx-muted); }
.rt-reply p { margin: 4px 0 0; overflow-wrap: anywhere; }
.rt-reply-form { margin: 10px 0 0; }
.rt-reply-form summary { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; cursor: pointer; font-weight: 600; color: var(--a-link, var(--brand, #0b5d47)); }
html[data-theme="dark"] .rt-reply-form summary { color: var(--a-link, #e7d7bc); }
.rt-reply-form form { display: grid; gap: 8px; margin-top: 8px; max-width: 640px; }
.rt-reply-form label { font-size: .88rem; font-weight: 600; }
.rt-reply-form textarea { width: 100%; }
.rt-reply-form button { justify-self: start; }
.rt-row-cta { align-self: center; white-space: nowrap; }
.rt-pager { display: flex; flex-wrap: wrap; gap: 6px; margin: 16px 0 0; align-items: center; }
.rt-pager a, .rt-pager span { display: inline-grid; place-items: center; min-width: 40px; height: 40px; padding: 0 10px; border-radius: 12px; border: 1px solid var(--rtx-line); color: var(--rtx-ink); text-decoration: none; font-weight: 600; }
.rt-pager a:hover { border-color: var(--rtx-focus); }
.rt-pager .is-on { background: var(--a-brand, var(--brand, #12352c)); color: var(--a-brand-ink, #f7f3ea); border-color: transparent; }
html[data-theme="dark"] .rt-pager .is-on { color: #10140f; }
.rt-pager .is-gap { border: 0; }

/* ---------- rate form ---------- */
.rt-choice { border: 0; margin: 0 0 14px; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.rt-choice legend { font-weight: 650; margin: 0 0 8px; padding: 0; }
.rt-opt { position: relative; display: block; cursor: pointer; }
.rt-opt input { position: absolute; opacity: 0; inset: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.rt-opt-box { display: grid; gap: 4px; justify-items: start; height: 100%; padding: 14px; border: 2px solid var(--rtx-line); border-radius: 14px; transition: border-color .15s, background .15s, box-shadow .15s; }
.rt-opt-box i { font-size: 1.4rem; }
.rt-opt-box small { color: var(--rtx-muted); }
.rt-opt.is-positive i { color: var(--rtx-pos); }
.rt-opt.is-neutral i { color: var(--rtx-neu); }
.rt-opt.is-negative i { color: var(--rtx-neg); }
.rt-opt:hover .rt-opt-box { border-color: var(--rtx-focus); }
.rt-opt input:focus-visible + .rt-opt-box { box-shadow: 0 0 0 3px color-mix(in srgb, var(--rtx-focus) 45%, transparent); }
.rt-opt.is-positive input:checked + .rt-opt-box { border-color: var(--rtx-pos); background: var(--rtx-pos-bg); }
.rt-opt.is-neutral input:checked + .rt-opt-box { border-color: var(--rtx-neu); background: var(--rtx-neu-bg); }
.rt-opt.is-negative input:checked + .rt-opt-box { border-color: var(--rtx-neg); background: var(--rtx-neg-bg); }
.rt-rate h2 .rt-badge { font-size: .7em; }

/* ---------- public profile ---------- */
.up-wrap { margin: 18px 0 0; }
.up-head { display: flex; flex-wrap: wrap; gap: 18px; align-items: center; margin: 0 0 18px; padding: 22px; border: 1px solid var(--rtx-line); border-radius: 22px; background: var(--rtx-card); }
.up-avatar { width: 96px; height: 96px; border-radius: 50%; object-fit: cover; flex: none; }
.up-avatar.is-letter { display: grid; place-items: center; background: var(--brand, #12352c); color: var(--bg, #f4f1ea); font-size: 2.4rem; font-weight: 650; }
.up-id { flex: 1 1 260px; min-width: 0; }
.up-id h1 { margin: 2px 0 6px; overflow-wrap: anywhere; }
.up-id .kicker { margin: 0; }
.up-id .meta { margin: 0; }
.up-msg { margin-left: auto; }
.up-ratings { margin: 0 0 24px; }
.up-ratings h2 small { font-size: .7em; color: var(--rtx-muted); font-weight: 500; }
.rt-none { margin: 0; }

@media (max-width: 760px) {
  .rt-over { grid-template-columns: 1fr; padding: 16px; gap: 14px; }
  .rt-row { grid-template-columns: 34px minmax(0, 1fr); padding: 12px; gap: 10px; }
  .rt-row-ico { width: 34px; height: 34px; }
  .rt-row-cta { grid-column: 1 / -1; justify-self: start; }
  .rt-row-top time { margin-left: 0; }
  .rt-choice { grid-template-columns: 1fr; }
  .rt-filter select { min-width: 0; width: 100%; }
  .rt-filter label { flex: 1 1 130px; }
  .up-head { padding: 16px; }
  .up-avatar { width: 72px; height: 72px; }
  .up-msg { margin-left: 0; }
}

/* ---------- admin ---------- */
.ar-list { display: grid; gap: 12px; }
.ar-item { padding: 16px 18px; scroll-margin-top: 90px; }
.ar-item.is-hidden { opacity: .86; border-style: dashed; }
.ar-head { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; }
.ar-who { font-weight: 600; }
.ar-meta { font-size: .86rem; opacity: .85; }
.ar-flag { display: inline-flex; gap: 6px; align-items: center; font-size: .84rem; font-weight: 650; padding: .2em .6em; border-radius: 999px; background: rgba(127, 127, 127, .15); }
.ar-comment { margin: 10px 0 0; overflow-wrap: anywhere; }
.ar-sub { margin: 6px 0 0; font-size: .9rem; opacity: .9; }
.ar-mod { margin-top: 10px; }
.ar-mod summary { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; cursor: pointer; font-weight: 650; }
.ar-mod-form { display: grid; gap: 8px; margin-top: 8px; max-width: 720px; }
.ar-mod-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.ar-tiers td { vertical-align: middle; }
.ar-num { max-width: 120px; }
.ar-color { width: 56px; height: 40px; padding: 2px; }
.ar-prev { display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; font-weight: 600; padding: 6px 10px; border-radius: 10px; background: rgba(127, 127, 127, .1); }
.ar-prev .rt-badge { font-size: .95em; }
.ar-fs { border: 0; padding: 0; margin: 0 0 16px; display: grid; gap: 8px; }
.ar-fs legend { font-weight: 700; margin: 0 0 6px; padding: 0; }
.ar-grid { margin: 0 0 16px; }
.ar-act { font-weight: 650; }
.ar-act.is-delete { color: var(--danger, #a33b3b); }
@media (max-width: 640px) {
  .desk .ar-tiers table.stack td::before { flex: 0 0 auto; white-space: nowrap; }
  .desk .ar-tiers table.stack td > input:not([type=checkbox]):not([type=color]), .desk .ar-tiers table.stack td > select { flex: 1 1 auto; min-width: 0; max-width: 220px; }
}
.rt-pend-who a { text-decoration: underline; text-underline-offset: 2px; }
html[data-theme="dark"] .ar-act.is-delete { color: #ff8a9e; }
/* t56u item 2: breadcrumbs sit 22px below the sticky header on every page (article page = reference) */
html { scroll-padding-top: 154px; }
@media (max-width: 860px) { html { scroll-padding-top: 72px; } }
main.wrap:has(> nav.crumbs, > nav.mk-crumbs, > .fx > nav.fx-crumbs) { padding-top: 0; }
main.wrap > nav.crumbs { margin-top: 22px; }
main.wrap > nav.crumbs ol { margin-top: 0; }
main.wrap > nav.mk-crumbs { margin-top: 22px; }
main.wrap > .fx { padding-top: 8px; }
main.wrap > .fx > nav.fx-crumbs { margin-top: 14px; }
nav.rt-views a.is-on:hover, nav.rt-views a.is-on:focus-visible { background: var(--a-brand, var(--brand, #12352c)); color: var(--a-brand-ink, #f7f3ea); }
html[data-theme="dark"] nav.rt-views a.is-on:hover, html[data-theme="dark"] nav.rt-views a.is-on:focus-visible { color: #10140f; }
.ar-who a:hover, .ar-who a:focus-visible { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
