.tr-title { display: flex; align-items: center; gap: .5rem; min-width: 0; }
.tr-q { position: relative; display: inline-flex; }
.cab .tr-again { width: 1.625rem; min-height: 1.625rem; height: 1.625rem; padding: 0; border-radius: 50%; background: transparent; border: 1px solid var(--field); color: var(--muted); font-size: .8125rem; font-weight: 750; line-height: 1; }
.cab .tr-again:hover, .cab .tr-q.on .tr-again { color: var(--accent); border-color: var(--brass-line); }
.tr-tip { display: none; position: absolute; top: calc(100% + .5rem); left: -.5rem; z-index: 5; padding: .3125rem .625rem; background: var(--raise); border: 1px solid var(--line2); border-radius: .375rem; color: var(--text); font-size: .875rem; font-weight: 600; white-space: nowrap; box-shadow: var(--lift); }
.tr-q:hover .tr-tip, .tr-q.on .tr-tip, .tr-again:focus-visible + .tr-tip { display: block; }
.is-dca .tr-q, .nb-panel:has(#new-form[hidden]) .tr-q { display: none; }

:root { --tr-dim: rgba(5, 7, 9, .72); }
:root[data-theme="light"] { --tr-dim: rgba(21, 26, 33, .6); }
.tr { position: fixed; inset: 0; z-index: 80; pointer-events: none; }
.tr-layer { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.tr-shade { fill: var(--tr-dim); fill-rule: evenodd; pointer-events: auto; }
.tr-halo { fill: none; stroke: var(--brass-t); stroke-width: 7; }
.tr-ring { fill: none; stroke: var(--brass-line); stroke-width: 2; }
.tr-ring.chart { stroke-dasharray: 6 4; }
.tr-span { fill: none; stroke: var(--brass-line); stroke-width: 2; stroke-linecap: round; }
.tr-gap-bg { fill: var(--brass); }
.tr-gap-text { fill: var(--brass-ink); font-size: .875rem; font-weight: 700; font-variant-numeric: tabular-nums; }
.tr-arrow { fill: var(--panel); stroke: var(--line2); stroke-width: 1; stroke-linejoin: round; }
body.tr-on.bp-acts-open::after { display: none; }

.tr-place { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.tr-pad { display: block; flex: none; }
.tr-row { display: flex; align-items: flex-start; }

.tr-pop { position: relative; flex: none; width: min(22.5rem, calc(100vw - 1.5rem)); padding: .875rem 1rem 1rem; background: var(--panel); border: 1px solid var(--line2); border-radius: .875rem; box-shadow: var(--lift); color: var(--text); pointer-events: auto; }
.tr-rail { display: flex; align-items: center; gap: .75rem; }
.tr-ticks { display: flex; flex: 1 1 auto; gap: .1875rem; }
.tr-ticks i { flex: 1 1 0; height: .1875rem; border-radius: 1px; background: var(--line2); }
.tr-ticks i.done { background: var(--brass-line); opacity: .45; }
.tr-ticks i.now { background: var(--brass-line); }
.tr-count { flex: none; color: var(--muted); font-size: .8125rem; font-weight: 600; font-variant-numeric: tabular-nums; }
.tr-pop h2 { margin: .625rem 0 .3125rem; font-size: 1.1875rem; font-weight: 720; font-stretch: 112%; line-height: 1.25; }
.tr-pop h2:focus { outline: none; }
.tr-text { margin: 0; color: var(--text); font-size: .9375rem; line-height: 1.5; }
.tr-text b { font-weight: 680; font-variant-numeric: tabular-nums; white-space: nowrap; }
.tr-key { display: flex; flex-wrap: wrap; align-items: center; gap: .25rem 1rem; margin: .625rem 0 0; color: var(--muted); font-size: .875rem; }
.tr-key span.k { display: inline-flex; align-items: center; }
.tr-key .key { margin-right: .5rem; }
.tr-key .key-sale { border-top-width: 2px; }
.tr-foot { display: flex; align-items: center; gap: .5rem; margin-top: 1rem; }
.tr-pop .tr-foot button { min-height: 2.5rem; padding: .375rem 1rem; font-size: .9375rem; }
.tr-pop .tr-foot .tr-skip { margin-right: auto; padding-left: 0; background: transparent; border-color: transparent; color: var(--muted); font-weight: 600; }
.tr-pop .tr-foot .tr-skip:hover { color: var(--text); }
.tr-pop .tr-foot .tr-next { min-width: 5.5rem; margin-left: auto; }
.tr-pop .tr-foot .tr-back:not([hidden]) + .tr-next { margin-left: 0; }
@media (prefers-reduced-motion: no-preference) {
  .tr-pop.moved { animation: tr-in .18s ease-out; }
  @keyframes tr-in { from { opacity: 0; transform: translateY(.25rem); } }
}
@media (max-width: 600px) {
  .tr-pop { padding: .75rem .875rem .875rem; }
  .tr-pop .tr-foot button { min-height: 2.75rem; }
}
