/* SPDX-License-Identifier: Apache-2.0 */
/* /roadmap-issues — the roadmap impact map (staff). Ported from tools/roadmap-issues/reference-artifact.html onto the
   site tokens (--sheet --sheet-2 --ink --ink-2 --line --grid --layer-*). Only the kind/status colours are new; they are
   defined for paper and model space below. Sizes in rem; px only for pens and breakpoints. Classes are rm-* so nothing
   here touches the rest of the site. */

:root {
  --rm-accent: #2F5D50;  --rm-heat: #2F5D50;
  --rm-fix: #B5482A;     --rm-fix-bg: #F6DCD2;
  --rm-feat: #2F5D50;    --rm-feat-bg: #D9E9E2;
  --rm-spike: #6C5AA8;   --rm-spike-bg: #E3DEF3;
  --rm-plat: #2F62A8;    --rm-plat-bg: #D8E4F4;
  --rm-ops: #5C6B73;     --rm-ops-bg: #E1E6E8;
  --rm-warn: #9A5B00;    --rm-warn-bg: #FBECD2;
  --rm-mono: ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-space="paper"]) {
    --rm-accent: #7FB9A6;  --rm-heat: #7FB9A6;
    --rm-fix: #E47A5A;     --rm-fix-bg: #3D2119;
    --rm-feat: #7FB9A6;    --rm-feat-bg: #1B302A;
    --rm-spike: #A796E0;   --rm-spike-bg: #2A2440;
    --rm-plat: #6F9FE0;    --rm-plat-bg: #182A42;
    --rm-ops: #95A5AD;     --rm-ops-bg: #233036;
    --rm-warn: #F0B25A;    --rm-warn-bg: #3B2C12;
  }
}
:root[data-space="model"] {
  --rm-accent: #7FB9A6;  --rm-heat: #7FB9A6;
  --rm-fix: #E47A5A;     --rm-fix-bg: #3D2119;
  --rm-feat: #7FB9A6;    --rm-feat-bg: #1B302A;
  --rm-spike: #A796E0;   --rm-spike-bg: #2A2440;
  --rm-plat: #6F9FE0;    --rm-plat-bg: #182A42;
  --rm-ops: #95A5AD;     --rm-ops-bg: #233036;
  --rm-warn: #F0B25A;    --rm-warn-bg: #3B2C12;
}

.rm-wrap { max-width: 110rem; margin: 0 auto; padding: 2rem 1rem 4rem; display: grid; min-width: 0; }
@media (min-width: 768px) { .rm-wrap { padding-inline: 1.5rem; } }
.rm h1, .rm h2 { margin: 0; line-height: 1.15; text-wrap: balance; }
.rm h1 { font-size: clamp(2rem, 1.4rem + 2.6vw, 3.2rem); font-stretch: 112%; font-weight: 800; letter-spacing: -0.01em; }
.rm h2 { font-size: clamp(1.3rem, 1.1rem + 0.9vw, 1.8rem); font-stretch: 108%; font-weight: 750; }
.rm p { margin: 0; }
.rm code { font-family: var(--rm-mono); font-size: 0.86em; color: inherit; }
.rm-eyebrow { font-family: var(--rm-mono); font-size: 0.85rem; letter-spacing: 0.02em; color: var(--ink-2); }
.rm-lede { font-size: 1.1rem; color: var(--ink-2); }
.rm-sec { display: grid; gap: 1.1rem; padding-block: 2.25rem; border-top: var(--pen-2) solid var(--ink); min-width: 0; }
.rm-sec-facts { border-top: 0; padding-top: 1rem; }
.rm-sec-head { display: grid; gap: 0.45rem; }
.rm-sec-head p:not(.rm-eyebrow) { color: var(--ink-2); }

/* title block */
.rm-titleblock { display: grid; grid-template-columns: 1fr auto; gap: 1.5rem; align-items: end; padding-bottom: 1.5rem; }
.rm-tb-text { display: grid; gap: 0.7rem; }
.rm-tb-strip { display: grid; grid-template-columns: repeat(4, minmax(0, auto)); border: var(--pen-2) solid var(--ink); font-size: 0.95rem; }
.rm-tb-strip > div { padding: 0.35rem 0.7rem; border-left: var(--pen-1) solid var(--ink); }
.rm-tb-strip > div:first-child { border-left: 0; }
.rm-tb-strip b { display: block; font-family: var(--rm-mono); font-weight: 400; font-size: 0.85rem; color: var(--ink-2); }
@media (max-width: 760px) {
  .rm-titleblock { grid-template-columns: 1fr; }
  .rm-tb-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rm-tb-strip > div:nth-child(3) { border-left: 0; }
  .rm-tb-strip > div:nth-child(n+3) { border-top: var(--pen-1) solid var(--ink); }
}

/* key numbers */
.rm-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr)); border: var(--pen-1) solid var(--line); }
.rm-fact { padding: 0.85rem 1rem; border-right: var(--pen-1) solid var(--line); border-bottom: var(--pen-1) solid var(--line); display: grid; gap: 0.15rem; align-content: start; }
.rm-fact .n { font-stretch: 115%; font-weight: 750; font-size: 1.6rem; font-variant-numeric: tabular-nums; }
.rm-fact .d { font-size: 0.95rem; color: var(--ink-2); }
.rm-legend { display: flex; flex-wrap: wrap; gap: 0.5rem 1.4rem; font-size: 0.95rem; color: var(--ink-2); align-items: center; list-style: none; margin: 0; padding: 0; }
.rm-legend li { display: inline-flex; gap: 0.4rem; align-items: center; flex-wrap: wrap; }
.rm-legend b { color: var(--ink); }

/* chips */
.rm-chip { display: inline-flex; align-items: center; gap: 0.3rem; font-family: var(--rm-mono); font-size: 0.85rem; line-height: 1.2; padding: 0.12rem 0.4rem; border: var(--pen-1) solid var(--line); border-radius: var(--radius); white-space: nowrap; color: var(--ink); background: var(--sheet); }
.rm-chip.rm-app { border-color: var(--c); color: var(--c); }
.rm-chip.rm-app i { width: 0.55rem; height: 0.55rem; background: var(--c); border-radius: 1px; display: inline-block; }
.rm-chip.rm-lyr { background: var(--sheet-2); color: var(--ink-2); }
.rm-c-red { --c: var(--layer-red); } .rm-c-blue { --c: var(--layer-blue); } .rm-c-orange { --c: var(--layer-orange); }
.rm-c-magenta { --c: var(--layer-magenta); } .rm-c-ochre { --c: var(--layer-ochre); } .rm-c-green { --c: var(--layer-green); }
.rm-c-violet { --c: var(--layer-violet); } .rm-c-cyan { --c: var(--layer-cyan); } .rm-c-ink { --c: var(--ink); }

.rm-kind { display: inline-block; font-family: var(--rm-mono); font-size: 0.85rem; padding: 0.05rem 0.35rem; border-radius: var(--radius); border: var(--pen-1) solid var(--k); color: var(--k); background: var(--kb); white-space: nowrap; }
.rm-k-fix { --k: var(--rm-fix); --kb: var(--rm-fix-bg); } .rm-k-feature { --k: var(--rm-feat); --kb: var(--rm-feat-bg); }
.rm-k-spike { --k: var(--rm-spike); --kb: var(--rm-spike-bg); } .rm-k-platform { --k: var(--rm-plat); --kb: var(--rm-plat-bg); }
.rm-k-ops { --k: var(--rm-ops); --kb: var(--rm-ops-bg); } .rm-k-owner { --k: var(--rm-warn); --kb: var(--rm-warn-bg); }
.rm-k-check { --k: var(--ink-2); --kb: var(--sheet-2); }

.rm-status { font-size: 0.9rem; font-weight: 650; display: inline-flex; align-items: center; gap: 0.35rem; white-space: nowrap; }
.rm-status::before { content: ""; width: 0.6rem; height: 0.6rem; border: var(--pen-2) solid currentColor; border-radius: 50%; flex: none; }
.rm-s-planned { color: var(--rm-accent); } .rm-s-planned::before { background: currentColor; }
.rm-s-done { color: var(--rm-accent); } .rm-s-done::before { background: currentColor; clip-path: polygon(0 55%, 15% 40%, 40% 65%, 85% 10%, 100% 25%, 40% 95%); border: 0; width: 0.75rem; height: 0.75rem; }
.rm-s-partial { color: var(--rm-accent); } .rm-s-partial::before { background: linear-gradient(90deg, currentColor 50%, transparent 50%); }
.rm-s-promised { color: var(--rm-plat); } .rm-s-promised::before { background: currentColor; border-radius: 1px; }
.rm-s-moved { color: var(--rm-accent); }
.rm-s-found { color: var(--rm-fix); } .rm-s-found::before { background: currentColor; transform: rotate(45deg); border-radius: 1px; }
.rm-s-candidate { color: var(--ink-2); } .rm-s-candidate::before { border-style: dashed; }
.rm-s-community { color: var(--rm-plat); } .rm-s-community::before { background: transparent; border-style: dotted; }
.rm-s-owner { color: var(--rm-warn); } .rm-s-owner::before { background: var(--rm-warn-bg); border-radius: 1px; }
.rm-flag { font-family: var(--rm-mono); font-size: 0.85rem; padding: 0.02rem 0.3rem; border: var(--pen-1) dashed var(--rm-warn); color: var(--rm-warn); background: var(--rm-warn-bg); border-radius: var(--radius); vertical-align: 0.1em; white-space: nowrap; }

/* count sheet */
.rm-scroll { position: relative; overflow-x: auto; border: var(--pen-2) solid var(--ink); background: var(--sheet); max-width: 100%; }
.rm-mx { border-collapse: collapse; width: 100%; min-width: 38rem; font-size: 0.95rem; }
.rm-mx th, .rm-mx td { padding: 0.32rem 0.6rem; border-top: var(--pen-1) solid var(--grid); text-align: left; }
.rm-mx thead th { background: var(--sheet-2); font-weight: 750; border-top: 0; border-bottom: var(--pen-1) solid var(--ink); }
.rm-mx thead th:not(:first-child) { text-align: center; width: 7.5rem; }
.rm-mx .rm-mx-sep th { background: var(--sheet-2); font-family: var(--rm-mono); font-size: 0.85rem; color: var(--ink-2); font-weight: 400; }
.rm-mx td.n { text-align: center; font-variant-numeric: tabular-nums; position: relative; border-left: var(--pen-1) solid var(--grid); }
.rm-mx td.n::before { content: ""; position: absolute; inset: 3px; background: var(--rm-heat); opacity: calc(0.08 + var(--w, 0) * 0.55); border-radius: 1px; }
.rm-mx td.n span { position: relative; font-weight: 650; }
.rm-mx td.n.z { color: var(--line); } .rm-mx td.n.z::before { display: none; }
.rm-mx td.n.z span { font-weight: 400; }
.rm-mx td.tot { font-weight: 750; } .rm-mx td.tot::before { display: none; }
.rm-mx-pick { display: inline-flex; border-radius: var(--radius); text-decoration: none; }
.rm-mx-pick:focus-visible { outline: var(--pen-3) solid var(--rm-accent); outline-offset: 2px; }
.rm-mx tr.on th { background: var(--sheet-2); }
.rm-mx tr.on .rm-chip { border-width: var(--pen-3); }

/* actions, sync line */
.rm-actions { display: flex; flex-wrap: wrap; gap: 0.75rem 1.25rem; align-items: center; }
.rm-sync { font-size: 0.95rem; color: var(--ink-2); }

/* filters */
.rm-filters { display: grid; gap: 0.55rem; padding: 0.9rem; border: var(--pen-1) solid var(--line); background: var(--sheet-2); min-width: 0; }
.rm-frow { display: flex; flex-wrap: wrap; gap: 0.35rem; align-items: center; margin: 0; }
.rm-flabel { width: 7.5rem; flex: none; font-family: var(--rm-mono); font-size: 0.85rem; color: var(--ink-2); }
.rm-fbtn { font: inherit; font-size: 0.9rem; padding: 0.22rem 0.6rem; border: var(--pen-1) solid var(--line); background: var(--sheet); color: var(--ink); border-radius: var(--radius); cursor: pointer; text-decoration: none; line-height: 1.4; }
.rm-fbtn:hover { border-color: var(--ink); color: var(--ink); }
.rm-fbtn[aria-pressed="true"] { background: var(--ink); color: var(--sheet); border-color: var(--ink); }
.rm-fbtn:focus-visible, .rm-search:focus-visible, .rm-clear:focus-visible { outline: var(--pen-3) solid var(--rm-accent); outline-offset: 2px; }
.rm-search { font: inherit; font-size: 1rem; padding: 0.35rem 0.6rem; border: var(--pen-1) solid var(--line); background: var(--sheet); color: var(--ink); border-radius: var(--radius); min-width: 0; flex: 1 1 14rem; max-width: 24rem; }
.rm-search::placeholder { color: var(--placeholder); opacity: 1; }
.rm-js .rm-go { display: none; }
.rm-shown { font-family: var(--rm-mono); font-size: 0.85rem; color: var(--ink-2); margin-left: auto; }
.rm-clear { font-size: 0.95rem; color: var(--rm-accent); padding: 0.2rem; }
@media (max-width: 560px) { .rm-flabel { width: 100%; } .rm-shown { margin-left: 0; width: 100%; } }

/* schedule */
.rm-sched { border-collapse: collapse; width: 100%; min-width: 70rem; font-size: 0.95rem; }
.rm-sched thead th { position: sticky; top: 0; background: var(--sheet-2); text-align: left; font-weight: 750; padding: 0.55rem 0.55rem; border-bottom: var(--pen-2) solid var(--ink); z-index: 1; }
.rm-sched td { padding: 0.6rem 0.55rem; vertical-align: top; border-top: var(--pen-1) solid var(--grid); }
.rm-sched tr.rm-grp th { text-align: left; padding: 0.9rem 0.7rem 0.45rem; font-size: 1rem; font-weight: 750; font-stretch: 108%; border-top: var(--pen-2) solid var(--ink); background: var(--sheet); }
.rm-grp-n { font-family: var(--rm-mono); font-size: 0.85rem; font-weight: 400; color: var(--ink-2); margin-left: 0.3rem; }
.rm-sched .id { width: 7rem; }
.rm-sched .id code { display: block; margin-top: 0.3rem; font-weight: 600; font-size: 0.9rem; }
.rm-sched .what { width: 30%; min-width: 20rem; }
.rm-sched .what b { font-weight: 700; }
.rm-sched .what p { color: var(--ink-2); font-size: 0.95rem; margin-top: 0.2rem; }
.rm-sched .chips { width: 11%; }
.rm-sched .chips .rm-chip { margin: 0 0.25rem 0.3rem 0; }
/* long labels wrap inside the schedule, so the table fits a 1280 px screen */
.rm-sched .chips .rm-chip.rm-lyr, .rm-sched .rm-status, .rm-sched .rm-issue { white-space: normal; }
.rm-sched .rm-issue { flex-wrap: wrap; }
.rm-sched .days { font-family: var(--rm-mono); font-size: 0.9rem; min-width: 4.5rem; max-width: 8rem; font-variant-numeric: tabular-nums; }
.rm-sched .wait { font-size: 0.95rem; min-width: 9rem; overflow-wrap: anywhere; }
.rm-sched .wait small, .rm-sched .iss small { display: block; margin-top: 0.3rem; font-family: var(--rm-mono); font-size: 0.85rem; color: var(--ink-2); }
.rm-sched .iss { min-width: 8rem; overflow-wrap: anywhere; }
.rm-none { color: var(--ink-2); font-size: 0.9rem; }
.rm-sched tr.rm-it:hover td { background: color-mix(in srgb, var(--sheet-2) 60%, transparent); }
.rm-sched tr.rm-it:target td { background: color-mix(in srgb, var(--rm-warn-bg) 70%, transparent); }
.rm-edit { display: inline-block; margin-top: 0.35rem; font-size: 0.95rem; font-weight: 600; color: var(--action); }
.rm-empty { padding: 1.5rem; text-align: center; color: var(--ink-2); }

.rm-issue { display: inline-flex; align-items: center; gap: 0.3rem; margin: 0 0.25rem 0.3rem 0; font-family: var(--rm-mono); font-size: 0.85rem; line-height: 1.2; padding: 0.12rem 0.4rem; border: var(--pen-1) solid var(--line); border-radius: var(--radius); color: var(--ink); text-decoration: none; white-space: nowrap; background: var(--sheet); }
.rm-issue span { color: var(--ink-2); }
.rm-issue.is-open { border-color: var(--rm-accent); }
.rm-issue.is-open span { color: var(--rm-accent); }
.rm-issue.is-closed { border-color: var(--rm-spike); }
.rm-issue.is-closed span { color: var(--rm-spike); }
.rm-issue.is-new { border-style: dashed; }
.rm-issue.is-bad { border-color: var(--rm-fix); }
.rm-issue.is-bad span { color: var(--rm-fix); }
.rm-issue:hover { border-color: var(--ink); }

.rm-note { border: var(--pen-1) solid var(--rm-warn); background: var(--rm-warn-bg); padding: 0.75rem 0.9rem; font-size: 1rem; border-radius: var(--radius); }
.rm-foot { padding-top: 1.5rem; border-top: var(--pen-2) solid var(--ink); font-size: 0.95rem; color: var(--ink-2); display: grid; gap: 0.4rem; }
.rm-removed summary { cursor: pointer; font-weight: 650; color: var(--ink); }
.rm-removed ul { margin: 0.5rem 0 0.75rem; padding-left: 1.2rem; }

/* edit page */
.rm-edit-page { max-width: 62rem; }
.rm-edit-head { display: grid; gap: 0.6rem; padding-bottom: 1.25rem; }
.rm-back { font-size: 1rem; }
.rm-panel { display: grid; gap: 1rem; padding-block: 1.75rem; border-top: var(--pen-2) solid var(--ink); }
.rm-panel h2 { font-size: 1.35rem; }
.rm-swatch-app { display: inline-flex; align-items: center; gap: 0.45rem; }
.rm-swatch-app i { width: 0.75rem; height: 0.75rem; background: var(--c); border-radius: 1px; display: inline-block; flex: none; margin-top: 0.25rem; }
.rm-checks { display: grid; gap: 0.5rem; grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr)); }
.rm-checks .check { min-height: 2.5rem; padding: 0.5rem 0.7rem; }
.rm-checks .check:has(input:checked) { padding: calc(0.5rem - 1px) calc(0.7rem - 1px); }
.rm-warning { border: var(--pen-1) solid var(--rm-warn); background: var(--rm-warn-bg); padding: 0.75rem 0.9rem; border-radius: var(--radius); font-weight: 600; }
.rm-banner { border: var(--pen-1) dashed var(--ink); background: var(--sheet-2); padding: 0.75rem 0.9rem; border-radius: var(--radius); display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; justify-content: space-between; }
.rm-danger summary { cursor: pointer; color: var(--layer-red); font-weight: 650; }
.rm-danger .rm-danger-body { display: grid; gap: 0.75rem; padding-top: 0.75rem; }
.rm-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; border-top: var(--pen-1) solid var(--grid); }
.rm-list > li { display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; align-items: center; justify-content: space-between; padding: 0.6rem 0; border-bottom: var(--pen-1) solid var(--grid); }
.rm-list .rm-li-main { display: grid; gap: 0.2rem; min-width: 0; }
.rm-list .rm-li-sub { font-size: 0.95rem; color: var(--ink-2); overflow-wrap: anywhere; }
.rm-req-failed { color: var(--layer-red); }
.rm-history { list-style: none; margin: 0; padding: 0; border-left: var(--pen-2) solid var(--line); }
.rm-history > li { padding: 0.5rem 0 0.7rem 1rem; position: relative; }
.rm-history > li::before { content: ""; position: absolute; left: -0.36rem; top: 0.85rem; width: 0.6rem; height: 0.6rem; background: var(--sheet); border: var(--pen-2) solid var(--ink); border-radius: 50%; }
.rm-history .rm-h-head { font-weight: 650; }
.rm-history .rm-h-head span { font-weight: 400; color: var(--ink-2); }
.rm-history ul { margin: 0.25rem 0 0; padding-left: 1.1rem; font-size: 0.95rem; color: var(--ink-2); }
.rm-history del { color: var(--ink-2); }
.rm-history ins { text-decoration: none; color: var(--ink); font-weight: 600; }
.rm .inline-form { display: inline; margin: 0; }
.rm .btn-link-cc { background: none; border: 0; padding: 0; color: var(--action); text-decoration: underline; cursor: pointer; font: inherit; font-size: 1rem; }

@media (prefers-reduced-motion: no-preference) { .rm-fbtn { transition: background-color 0.12s, color 0.12s; } }

/* Discord feedback reader (2026-10-16): the "To review" status, the "Bot obtained" tag, the inbox, messages and channels
   pages. Small text floor 0.85rem (owner: the small fonts were hard to read). */
.rm-s-review { color: var(--rm-spike); }
.rm-s-review::before { border: 0; border-radius: 0; background: currentColor; clip-path: polygon(50% 0, 100% 100%, 0 100%); }
.rm-bot { display: inline-block; margin-left: 0.3rem; font-family: var(--rm-mono); font-size: 0.85rem; line-height: 1.2; padding: 0.05rem 0.35rem; border: var(--pen-1) dashed var(--rm-spike); color: var(--rm-spike); background: var(--rm-spike-bg); border-radius: var(--radius); white-space: nowrap; vertical-align: 0.05em; }
.rm-sched .id .rm-bot { margin: 0.3rem 0 0; display: inline-block; }
.rm-cls { display: inline-block; font-family: var(--rm-mono); font-size: 0.85rem; padding: 0.05rem 0.35rem; border: var(--pen-1) solid var(--line); border-radius: var(--radius); white-space: nowrap; background: var(--sheet); }
.rm-cls-bug { border-color: var(--rm-fix); color: var(--rm-fix); }
.rm-cls-complaint { border-color: var(--rm-warn); color: var(--rm-warn); }
.rm-cls-suggestion { border-color: var(--rm-feat); color: var(--rm-feat); }
.rm-cls-question { border-color: var(--rm-plat); color: var(--rm-plat); }
.rm-cls-none { border-style: dashed; color: var(--ink-2); }
.rm-tabs { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0; padding: 0; list-style: none; }
.rm-tabs a { display: inline-block; padding: 0.3rem 0.75rem; border: var(--pen-1) solid var(--line); border-radius: var(--radius); text-decoration: none; color: var(--ink); font-size: 0.95rem; }
.rm-tabs a[aria-current="page"] { background: var(--ink); color: var(--sheet); border-color: var(--ink); }
.rm-counts { display: grid; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); border: var(--pen-1) solid var(--line); }
.rm-counts > div { padding: 0.8rem 1rem; border-right: var(--pen-1) solid var(--line); border-bottom: var(--pen-1) solid var(--line); display: grid; gap: 0.25rem; align-content: start; }
.rm-counts .n { font-stretch: 115%; font-weight: 750; font-size: 1.5rem; font-variant-numeric: tabular-nums; }
.rm-counts .d { font-size: 0.95rem; color: var(--ink-2); }
.rm-counts ul { list-style: none; margin: 0; padding: 0; font-size: 0.9rem; color: var(--ink-2); display: flex; flex-wrap: wrap; gap: 0.2rem 0.75rem; }
.rm-inbox { list-style: none; margin: 0; padding: 0; display: grid; gap: 1.25rem; }
.rm-card { border: var(--pen-2) solid var(--ink); background: var(--sheet); display: grid; min-width: 0; }
.rm-card:target { outline: var(--pen-3) solid var(--rm-accent); outline-offset: 2px; }
.rm-card-head { display: flex; flex-wrap: wrap; gap: 0.4rem 0.75rem; align-items: center; padding: 0.75rem 1rem; border-bottom: var(--pen-1) solid var(--line); background: var(--sheet-2); }
.rm-card-head h2 { font-size: 1.15rem; flex: 1 1 18rem; margin: 0; }
.rm-card-head code { font-weight: 650; }
.rm-card-body { display: grid; gap: 0.75rem; padding: 0.9rem 1rem; min-width: 0; }
.rm-card-body .rm-desc { color: var(--ink-2); }
.rm-msg { border-left: var(--pen-3) solid var(--line); padding: 0.4rem 0 0.4rem 0.85rem; display: grid; gap: 0.3rem; min-width: 0; }
.rm-msg-text { white-space: pre-wrap; overflow-wrap: anywhere; margin: 0; font-size: 1rem; }
.rm-msg-meta { font-size: 0.9rem; color: var(--ink-2); }
.rm-msg-meta.meta-items { margin: 0; }
.rm-msg.is-deleted .rm-msg-text { color: var(--ink-2); font-style: italic; }
.rm-match { border: var(--pen-1) dashed var(--rm-plat); background: var(--rm-plat-bg); padding: 0.5rem 0.75rem; border-radius: var(--radius); font-size: 0.95rem; }
.rm-acts { display: grid; gap: 0.75rem; grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)); padding: 0.9rem 1rem; border-top: var(--pen-1) solid var(--line); }
.rm-acts form { display: grid; gap: 0.45rem; align-content: start; margin: 0; padding: 0.7rem; border: var(--pen-1) solid var(--grid); }
.rm-acts h3 { font-size: 0.95rem; font-weight: 700; margin: 0; }
.rm-acts label { font-size: 0.9rem; color: var(--ink-2); }
.rm-acts input[type="text"], .rm-acts input[type="date"], .rm-acts select { width: 100%; }
.rm-bulk { display: grid; gap: 0.9rem; padding: 1rem; border: var(--pen-1) solid var(--rm-warn); background: var(--rm-warn-bg); }
.rm-bulk fieldset { display: grid; gap: 0.5rem; border: 0; padding: 0; margin: 0; }
.rm-bulk .rm-bulk-row { display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; align-items: center; }
.rm-bulk .rm-bulk-row > label { font-size: 0.95rem; }
.rm-bulk ul.rm-bulk-list { margin: 0; padding-left: 1.2rem; font-size: 0.95rem; max-height: 18rem; overflow: auto; }
.rm-msgs td { font-size: 0.95rem; vertical-align: top; }
.rm-msgs .rm-msg-text { font-size: 0.95rem; max-width: 40rem; }
.rm-msgs small { display: block; font-size: 0.85rem; color: var(--ink-2); margin-top: 0.2rem; }
.rm-pager { display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; font-size: 0.95rem; }
.rm-filters select.select-cc { width: auto; min-width: 10rem; }
.rm-filters input[type="search"], .rm-filters input[type="text"] { font: inherit; font-size: 1rem; padding: 0.35rem 0.6rem; border: var(--pen-1) solid var(--line); background: var(--sheet); color: var(--ink); border-radius: var(--radius); }
.rm-chan-off td { color: var(--ink-2); }
/* Deep links (#<key>, #g-<group>) */
.rm-link { display: inline-flex; align-items: center; gap: 0.15rem; margin-top: 0.3rem; font-size: 0.85rem; color: var(--ink-2); text-decoration: none; }
.rm-link:hover, .rm-link:focus-visible { color: var(--action); text-decoration: underline; }
.rm-link[data-copied]::after { content: "Copied"; margin-left: 0.3rem; color: var(--rm-accent); }
.rm-sched tbody[data-group]:target tr.rm-grp th { background: color-mix(in srgb, var(--rm-warn-bg) 70%, transparent); }
.rm-sched tr.rm-it { scroll-margin-top: 4rem; }

/* inbox: the line that says what an action did (assets/js/discord-inbox.js) */
.rm-dc-status { min-height: 1.4em; margin: 0.25rem 0 0.5rem; font-size: 0.95rem; color: var(--ink-2); }
.rm-dc-status:empty { margin: 0; min-height: 0; }

.rm-relsel { width: auto; min-width: 8rem; }
.rm-relnav { display: inline-flex; gap: 0.8rem; }
.rm-js [data-rm-relgo] { display: none; }
