/* The approval replay (OVREL case). Uses the case tokens (--pp ground, --ik ink, --dm quiet, --ln rule, --ac accent). */
.rp13{ --ok:#1B5E3B; --bad:#A3260F; --hold:#7A5200; --card:#FBFAF7; margin:clamp(24px, 3vw, 44px) var(--m) 0; border:1px solid var(--ik); background:var(--card); }
.rp13:not(.is-ready) .rp13-cols{ display:none; }
.rp13 .ns{ margin:0; padding:14px 16px; font:400 13.5px/1.5 var(--sans); color:var(--dm); }
.rp13.is-ready .ns{ display:none; }
.rp13-bar{ display:flex; flex-wrap:wrap; gap:10px 18px; align-items:center; padding:12px 16px; border-bottom:1px solid var(--ik); background:var(--pp);
  font:400 11.5px/1.5 var(--mono); letter-spacing:0.05em; }
.rp13-tag{ font:500 11px/1 var(--mono); letter-spacing:0.16em; text-transform:uppercase; background:var(--ik); color:var(--pp); padding:6px 9px; }
.rp13-sc{ margin:0 0 0 auto; padding:0; border:0; display:flex; gap:6px; flex-wrap:wrap; }
.rp13-sc legend{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
.rp13-sc label{ position:relative; display:inline-flex; align-items:center; min-height:44px; padding:0 12px; border:1px solid var(--ln); cursor:pointer; background:var(--card); }
.rp13-sc input{ position:absolute; opacity:0; inset:0; }
.rp13-sc label:has(input:checked){ background:var(--ik); color:var(--pp); border-color:var(--ik); }
.rp13-sc label:has(input:focus-visible){ outline:2px solid var(--ac); outline-offset:2px; }
.rp13-cols{ display:grid; grid-template-columns:minmax(0, 7fr) minmax(0, 5fr); min-height:440px; }
@media (max-width:899px){ .rp13-cols{ grid-template-columns:1fr; min-height:900px; } }
.rp-stages{ list-style:none; margin:0; padding:0; }
.rp-st{ border-bottom:1px solid var(--ln); padding:14px 16px; }
.rp-st:last-child{ border-bottom:0; }
.rp-st h3{ margin:0; display:flex; gap:12px; align-items:baseline; font:500 1.15rem/1.3 var(--sans); letter-spacing:-0.015em; }
.rp-st h3 .n{ font:400 11px/1 var(--mono); color:var(--dm); letter-spacing:0.06em; min-width:1.6em; }
.rp-pill{ margin-left:auto; font:500 10.5px/1 var(--mono); letter-spacing:0.12em; text-transform:uppercase; padding:5px 8px; border:1px solid currentColor; white-space:nowrap; }
.rp-pill[data-t="ok"]{ color:var(--ok); } .rp-pill[data-t="bad"]{ color:var(--bad); } .rp-pill[data-t="hold"]{ color:var(--hold); }
.rp-pill[data-t="wait"],.rp-pill[data-t="na"]{ color:var(--dm); border-style:dashed; }
.rp-st[data-s="future"] h3,.rp-st[data-s="na"] h3{ color:var(--dm); }
.rp-body{ margin:10px 0 0 calc(1.6em + 12px); }
.rp-st[data-s="future"] .rp-body,.rp-st[data-s="na"] .rp-body{ display:none; }
.rp-does{ margin:0; max-width:56ch; }
.rp-acts{ display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.rp-b{ font:500 14px/1 var(--sans); min-height:44px; padding:0 16px; background:var(--ik); color:var(--pp); border:1px solid var(--ik); cursor:pointer; }
.rp-b.alt{ background:transparent; color:var(--ik); border-color:var(--ln); }
.rp-b:hover{ background:var(--ac); border-color:var(--ac); color:#fff; }
.rp-res{ margin:12px 0 0; padding:10px 12px; border-left:3px solid var(--ik); background:var(--pp); font:400 13px/1.55 var(--mono); white-space:pre-wrap; overflow-wrap:anywhere; }
.rp-res[data-t="bad"]{ border-color:var(--bad); } .rp-res[data-t="ok"]{ border-color:var(--ok); } .rp-res[data-t="hold"]{ border-color:var(--hold); }
.rp13-rec{ border-left:1px solid var(--ik); background:var(--pp); padding:14px 16px; }
@media (max-width:899px){ .rp13-rec{ border-left:0; border-top:1px solid var(--ik); } }
.rp13-rec h3{ margin:0 0 8px; font:500 11px/1 var(--mono); letter-spacing:0.16em; text-transform:uppercase; color:var(--dm); }
.rp-card{ margin:0 0 16px; display:grid; grid-template-columns:auto 1fr; gap:6px 14px; font:400 13px/1.45 var(--mono); }
.rp-card dt{ color:var(--dm); } .rp-card dd{ margin:0; overflow-wrap:anywhere; }
.rp-log{ list-style:none; margin:0; padding:0; font:400 12px/1.5 var(--mono); max-height:340px; overflow:auto; border-top:1px solid var(--ln); }
.rp-log li{ padding:7px 0; border-bottom:1px solid var(--ln); overflow-wrap:anywhere; }
.rp-log .who{ color:var(--dm); }
.rp-log li.new{ background:linear-gradient(90deg, rgba(31, 58, 198, 0.10), transparent); }
.rp-log .empty{ color:var(--dm); }
.rp13 .rp-reset{ margin-top:12px; }
.rp13-note{ margin:12px var(--m) 0; font:400 13px/1.55 var(--sans); color:var(--dm); max-width:74ch; }
.rp13-note b{ color:var(--ik); font-weight:500; }
.rp13-ev{ margin:clamp(20px, 2.4vw, 32px) var(--m) 0; }
.rp13-ev h3{ margin:0 0 10px; font:500 11px/1 var(--mono); letter-spacing:0.16em; text-transform:uppercase; color:var(--dm); }
.rp13-ev table{ width:100%; border-collapse:collapse; font:400 13px/1.45 var(--sans); }
.rp13-ev th{ font:500 10.5px/1.3 var(--mono); letter-spacing:0.12em; text-transform:uppercase; color:var(--dm); text-align:left; padding:8px 10px 8px 0; border-bottom:1px solid var(--ik); }
.rp13-ev td{ padding:9px 10px 9px 0; border-bottom:1px solid var(--ln); vertical-align:top; }
.rp13-ev td:first-child{ white-space:nowrap; }
.rp13-ev code{ font:400 12px/1.4 var(--mono); overflow-wrap:break-word; }
@media (max-width:640px){ .rp13-ev table,.rp13-ev tbody,.rp13-ev tr,.rp13-ev td{ display:block; } .rp13-ev thead{ display:none; } .rp13-ev tr{ padding:10px 0; border-bottom:1px solid var(--ln); } .rp13-ev td{ border:0; padding:2px 0; } .rp13-ev td:first-child{ font-weight:600; } }
@media (prefers-reduced-motion:reduce){ .rp13 *{ transition:none !important; animation:none !important; } }
