/* ============================================================================
   Aura redesign - SCOPED design system (in-place SPA). GENERATED from
   redesign/aura-ds.css (do not hand-edit; regenerate from source).
   Prefix-scoped to #rd-root: every selector is a descendant of #rd-root, so
   it NEVER touches the live SPA, and the id-level specificity beats the app's
   global classes inside the overlay. Universally supported (no @scope).
   ============================================================================ */
#rd-root {
  box-sizing: border-box;
  --bg: #ffffff;            
  --bg-canvas: #eef0f4;     
  --ink: #17181c;           
  --ink-2: #3c3f46;         
  --label: #565d6c;         /* 2026-07-14 WCAG sweep: darkened from #6a7180 (4.42:1 on --fill,
                                4.50:1 on --teal-soft, both < 4.5 AA). New value clears >=5.6:1
                                against every real background this token renders on. */

  
  --line: #e7e8ec;          
  --line-soft: #f0f1f4;     
  --fill: #f2f3f6;          

  
  --accent: #2f44d4;        
  --accent-soft: #eef0fc;   
  --accent-hover: #2536bf;  
  --rail: #fafafb;
  --navy: #15233f;          /* INTENTIONAL — deep navy for org chip / dark avatars / callouts; NOT the brand navy (CR-20260619 #156, Richard: keep) */

  
  --ok: #1f7a52;  --ok-bg: #eaf6ef;  --ok-line: #bfe3cf;
  --amber: #d99a2b;
  --alert-bg: #fdf6ec;  --alert-line: #e9d4a9;  --alert-ink: #7a5710;   
  --red: #c0492f;  --red-bg: #fbeeeb;  --red-line: #eccabf;

  
  --s8: #6a2fae;  --s8-bg: #f3edfb;  --s8-line: #dcc9f1;

  
  --btn-hover-line: #cfd2da;
  --kbd-bg: #eceef3;  --kbd-line: #dcdfe6;
  --ring-track: #edeef1;    
  --paper: #fcfbf8;         
  --brand-stripe: linear-gradient(90deg, #f3d6e6, #e9d9f2, #f3d6e6);  

  
  --amber-strong: #9a6a0a;  
  --red-strong: #a3331c;    
  --dot-neutral: #8b909b;   
  --label-soft: #5c6370;    /* 2026-07-14 WCAG sweep: darkened from #9aa0ab (2.56:1 on
                                --surface-2, the "in Staff" nav sublabel). New value clears
                                >=4.9:1 against both real backgrounds this token renders on
                                (--surface-2 and --line). */

  
  --surface-2: #fcfcfd;     
  --urgent-surface: #fffdf8;
  --accent-line: #cdd4f6;   

  
  --radius: 10px;           
  --maxw: 1240px;           
  --rail-w: 218px;          
  --rail-col: 330px;        
  --grid-gap: 20px;
  --pad-x: 40px;            

  
  --font-sans: Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-serif: Newsreader, Georgia, "Times New Roman", serif;
  --font-mono: ui-monospace, Menlo, monospace;
  --h1: 32px;               

  
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, .06);              
  --shadow-overlay: 0 24px 60px -22px rgba(20, 24, 45, .32); 

  font-synthesis-weight: none;
  background: var(--bg); color: var(--ink); font-family: var(--font-sans); font-size: 15px; line-height: 1.5; -webkit-font-smoothing: antialiased; border-top: 3px solid; border-image: var(--brand-stripe) 1; min-height: 100vh;
}
#rd-root * { box-sizing: border-box; }
#rd-root .serif { font-family: var(--font-serif); }
#rd-root a { color: var(--accent); text-decoration: none; }
#rd-root a:hover { text-decoration: underline; }
#rd-root :focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 4px; }
#rd-root kbd {
  font-family: var(--font-mono); font-size: 11px;
  background: var(--kbd-bg); border: 1px solid var(--kbd-line);
  border-radius: 5px; padding: 1px 6px; color: var(--ink-2);
}
#rd-root .visually-hidden {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
@media (prefers-reduced-motion: reduce) {
#rd-root *, #rd-root *::before, #rd-root *::after { animation: none !important; transition: none !important; }
}
#rd-root .shell { display: flex; min-height: 100vh; }
#rd-root .apprail {
  width: var(--rail-w); flex: 0 0 var(--rail-w);
  background: var(--rail); border-right: 1px solid var(--line);
  padding: 18px 14px; position: sticky; top: 0; height: 100vh; overflow: auto;
  display: flex; flex-direction: column;
}
/* Account footer + Sign out — pinned to the bottom of the rail. */
#rd-root .rd-acct { margin-top: auto; padding-top: 12px; border-top: 1px solid var(--line); }
#rd-root .rd-signout { width: 100%; display: flex; align-items: center; gap: 9px; background: transparent; border: 1px solid var(--line); border-radius: 9px; padding: 8px 10px; cursor: pointer; font-family: inherit; text-align: left; }
#rd-root .rd-signout:hover { background: var(--fill); border-color: var(--btn-hover-line); }
#rd-root .rd-signout .ava { width: 26px; height: 26px; border-radius: 50%; background: var(--accent); color: #fff; display: grid; place-items: center; font-size: 11px; font-weight: 700; flex: 0 0 auto; }
#rd-root .rd-signout .who { display: flex; flex-direction: column; line-height: 1.2; min-width: 0; }
#rd-root .rd-signout .who .nm { font-size: 12.5px; font-weight: 600; color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 120px; }
#rd-root .rd-signout .who .act { font-size: 11px; color: var(--label); }
#rd-root .rd-signout .ico { margin-left: auto; color: var(--label); font-size: 14px; flex: 0 0 auto; }
#rd-root .apprail .brand { padding: 6px 8px 12px; }
#rd-root .apprail .brand .name { font-weight: 700; font-size: 15px; }
#rd-root .apprail .brand .by {
  font-size: 10px; letter-spacing: .16em; text-transform: uppercase;
  color: var(--label); margin-top: 2px;
}
#rd-root .apprail .grp {
  font-size: 9.5px; letter-spacing: .13em; text-transform: uppercase;
  color: var(--label); font-weight: 700; padding: 14px 8px 5px;
}
#rd-root .apprail a {
  color: var(--ink-2); font-size: 13.5px; padding: 7px 8px; border-radius: 7px;
  display: flex; align-items: center; gap: 9px;
}
#rd-root .apprail a:hover { background: var(--line-soft); text-decoration: none; }
#rd-root .apprail a.on { background: var(--ink); color: #fff; font-weight: 600; }
#rd-root .apprail a .ic { width: 14px; text-align: center; opacity: .65; font-size: 12px; }
#rd-root .apprail a.on .ic { opacity: 1; }
#rd-root .apprail a .b {                        
  margin-left: auto; font-size: 10px; font-weight: 700; color: var(--ink);
  background: var(--amber); border-radius: 999px; padding: 0 6px;
}
#rd-root .apprail a .b.red { background: var(--red); color: #fff; }
#rd-root .page { flex: 1; min-width: 0; }
#rd-root .page-inner { max-width: var(--maxw); margin: 0 auto; padding: 26px var(--pad-x) 80px; }
#rd-root .util {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding-bottom: 18px; border-bottom: 1px solid var(--line-soft);
}
#rd-root .util .crumb {
  font-size: 11px; letter-spacing: .14em; text-transform: uppercase;
  color: var(--label); font-weight: 600;
}
#rd-root .hdr-right { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
#rd-root .search {
  display: flex; align-items: center; gap: 10px; font-family: inherit; font-size: 13px;
  color: var(--label); background: var(--bg); border: 1px solid var(--line);
  border-radius: 9px; padding: 8px 12px; cursor: text; min-width: 230px;
}
#rd-root .search kbd { margin-left: auto; }
#rd-root .top { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
#rd-root h1.serif, #rd-root .page h1 { font-weight: 500; font-size: var(--h1); margin: 0; letter-spacing: -.01em; }
#rd-root .greet { color: var(--label); font-size: 14px; margin-top: 5px; }
#rd-root .btn {
  font-family: inherit; font-size: 13px; font-weight: 600; padding: 8px 14px;
  border-radius: 8px; border: 1px solid var(--line); background: var(--bg);
  color: var(--ink); cursor: pointer;
}
#rd-root .btn:hover { border-color: var(--btn-hover-line); }
#rd-root .btn.primary { background: var(--accent); border-color: var(--accent); color: #fff; }
#rd-root .btn.primary:hover { background: var(--accent-hover); }
#rd-root .btn.dark { background: var(--ink); border-color: var(--ink); color: #fff; }
#rd-root .chip { font-size: 12px; font-weight: 600; padding: 6px 11px; border-radius: 999px; }
#rd-root .chip.audit { background: var(--ok-bg); color: var(--ok); }
#rd-root .chip.org { background: var(--navy); color: #fff; }
/* 2026-07-14 WCAG sweep (mobile-375 tap targets): scoped to these two selectors, NOT the
   shared .chip rule above — .chip is reused across dozens of purely decorative status
   badges app-wide (severity/status pills with no click handler); only #rd-audit and
   .chip.org are the header indicators the sweep measured, and inflating the shared rule
   would balloon every unrelated badge to 44px for no accessibility benefit. Both already
   have width > 44px (131px / 230px); only height needed raising (was 30px). */
#rd-root #rd-audit, #rd-root .chip.org { min-height: 44px; display: inline-flex; align-items: center; }
#rd-root .chip.neutral { background: var(--fill); color: var(--ink-2); }
#rd-root .chip.warn { background: var(--alert-bg); color: var(--alert-ink); }
#rd-root .chip.bad { background: var(--red-bg); color: var(--red-strong); }
#rd-root .chip.s8 { background: var(--s8-bg); color: var(--s8); }
#rd-root .pill { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 600;
  padding: 3px 10px; border-radius: 999px; background: var(--accent-soft); color: var(--accent); }
#rd-root .pill.ok { background: var(--ok-bg); color: var(--ok); }
#rd-root .strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 16px; }
#rd-root .gauge { border: 1px solid var(--line); border-radius: 12px; padding: 13px 15px; }
#rd-root .gauge .l { font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--label); font-weight: 600; }
#rd-root .gauge .n { font-family: var(--font-serif); font-size: 24px; margin-top: 5px; line-height: 1; }
#rd-root .gauge .n.ok { color: var(--ok); }
#rd-root .gauge .n.warn { color: var(--amber-strong); }
#rd-root .gauge .n.bad { color: var(--red); }
#rd-root .gauge .bar { height: 6px; border-radius: 3px; background: var(--line); margin-top: 9px; overflow: hidden; }
#rd-root .gauge .bar i { display: block; height: 100%; border-radius: 3px; }
#rd-root .gauge .bar i.ok { background: var(--ok); }
#rd-root .gauge .bar i.acc { background: var(--accent); }
#rd-root .gauge .bar i.warn { background: var(--amber-strong); }
#rd-root .gauge .m { font-size: 11.5px; color: var(--label); margin-top: 7px; }
#rd-root .stat { border: 1px solid var(--line); border-radius: var(--radius); padding: 15px 16px; }
#rd-root .stat .l { font-size: 10.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--label); font-weight: 600; }
#rd-root .stat .n { font-family: var(--font-serif); font-size: 27px; margin-top: 7px; line-height: 1; }
#rd-root .stat .n.sm { font-size: 20px; }
#rd-root .stat .n.ok { color: var(--ok); }
#rd-root .stat .m { font-size: 12px; color: var(--label); margin-top: 6px; }
#rd-root .stat .bar { height: 6px; border-radius: 3px; background: var(--line); margin-top: 10px; overflow: hidden; }
#rd-root .stat .bar i { display: block; height: 100%; border-radius: 3px; }
#rd-root .stat .bar i.ok { background: var(--ok); }
#rd-root .ring {
  --p: 0;
  width: 96px; height: 96px; border-radius: 50%; flex: 0 0 auto;
  background: conic-gradient(var(--ok) calc(var(--p) * 1%), var(--ring-track) 0);
  display: grid; place-items: center;
}
#rd-root .ring::after { content: ""; width: 72px; height: 72px; border-radius: 50%; background: var(--bg); grid-area: 1/1; }
#rd-root .ring .v { grid-area: 1/1; z-index: 1; font-family: var(--font-serif); font-size: 24px; color: var(--ok); }
#rd-root .queue { border: 1px solid var(--line); border-radius: 14px; overflow: hidden; }
#rd-root .qhead { display: flex; align-items: center; gap: 10px; padding: 16px 20px 12px; flex-wrap: wrap; }
#rd-root .qhead h2 { font-family: var(--font-serif); font-weight: 500; font-size: 20px; margin: 0; }
#rd-root .qhead .ct { font-size: 11px; font-weight: 700; color: #fff; background: var(--ink); border-radius: 999px; padding: 1px 8px; }
#rd-root .filters { display: flex; gap: 6px; margin-left: auto; flex-wrap: wrap; }
#rd-root .filters button {
  font-family: inherit; font-size: 12px; font-weight: 600; color: var(--ink-2);
  background: var(--bg); border: 1px solid var(--line); border-radius: 999px;
  padding: 6px 12px; cursor: pointer;
  /* 2026-07-14 WCAG sweep (mobile-375 tap targets): the short "All" label (.on state)
     was 41x29px, the other filter labels 95-96x29px — height failed on all, width also
     failed on the short one. min-width is a no-op for the longer labels (Compliance/
     Participants/Team/Money already exceed 44px from padding+text alone). Both real
     usages of .filters button (Today queue filters + Incidents register) are actual
     onclick-wired controls, unlike .chip above. */
  min-height: 44px; min-width: 44px; display: inline-flex; align-items: center; justify-content: center;
}
#rd-root .filters button.on { background: var(--accent-soft); border-color: var(--accent-line); color: var(--accent); }
#rd-root .qgrp {
  font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--label);
  font-weight: 700; padding: 12px 20px 4px; background: var(--surface-2); border-top: 1px solid var(--line-soft);
}
#rd-root .qrow { display: flex; align-items: center; gap: 13px; padding: 13px 20px; border-top: 1px solid var(--line-soft); }
#rd-root .qrow .sev { width: 9px; height: 9px; border-radius: 50%; flex: 0 0 auto; }
#rd-root .sev.red { background: var(--red); }
#rd-root .sev.amber { background: var(--amber-strong); }
#rd-root .sev.grey { background: var(--dot-neutral); }
#rd-root .qrow .main { flex: 1; min-width: 0; }
#rd-root .qrow .main .t { font-size: 14px; }
#rd-root .qrow .main .t b { font-weight: 600; }
#rd-root .qrow .main .meta { font-size: 12px; color: var(--label); margin-top: 3px; display: flex; gap: 8px; flex-wrap: wrap; }
#rd-root .qrow .main .who { color: var(--accent); font-weight: 600; }
#rd-root .qrow .act {
  font-family: inherit; font-size: 12.5px; font-weight: 600; padding: 6px 12px;
  border-radius: 7px; border: 1px solid var(--line); background: var(--bg);
  color: var(--ink); cursor: pointer; white-space: nowrap;
}
#rd-root .qrow .act:hover { border-color: var(--accent); color: var(--accent); }
/* Touch target: the roster row action buttons compute ~20px tall, below the 44px
   minimum. Enlarge them at phone width so they are comfortably tappable. */
@media (max-width: 560px) { #rd-root .qrow .act { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; } }
#rd-root .qrow.blocked { border-left: 3px solid var(--red); }
#rd-root .qrow.flag { border-left: 3px solid var(--amber); }
#rd-root .side { display: flex; flex-direction: column; gap: 16px; }
#rd-root .panel { border: 1px solid var(--line); border-radius: 14px; padding: 16px 18px; }
#rd-root .panel h3 { font-family: var(--font-serif); font-weight: 500; font-size: 17px; margin: 0 0 2px; }
#rd-root .panel .sub { font-size: 12px; color: var(--label); margin: 0 0 10px; }
#rd-root .rrow { display: flex; align-items: center; gap: 10px; padding: 9px 0; border-top: 1px solid var(--line-soft); font-size: 13px; }
#rd-root .rrow:first-of-type { border-top: 0; }
#rd-root .rrow .st { width: 8px; height: 8px; border-radius: 50%; }
#rd-root .st.now { background: var(--ok); }
#rd-root .st.next { background: var(--dot-neutral); }
#rd-root .rrow .w { font-weight: 600; }
#rd-root .rrow .p { color: var(--ink-2); }
#rd-root .rrow .t { margin-left: auto; color: var(--label); font-size: 11.5px; text-align: right; }
#rd-root .connmini .cv { display: flex; align-items: center; gap: 10px; margin: 4px 0 8px; }
#rd-root .connmini .pct { font-family: var(--font-serif); font-size: 22px; }
#rd-root .connmini .bar { flex: 1; height: 7px; border-radius: 4px; background: var(--line); overflow: hidden; }
#rd-root .connmini .bar i { display: block; height: 100%; background: var(--accent); border-radius: 4px; }
#rd-root .connmini .row { font-size: 12.5px; display: flex; justify-content: space-between; padding: 6px 0; border-top: 1px solid var(--line-soft); }
#rd-root .connmini .row:first-of-type { border-top: 0; }
#rd-root .connmini a { font-weight: 600; }
#rd-root .team { border: 1px solid var(--line); border-radius: var(--radius); padding: 16px 18px; }
#rd-root .team .th { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 3px; gap: 10px; flex-wrap: wrap; }
#rd-root .team .th h3 { font-family: var(--font-serif); font-weight: 500; font-size: 18px; margin: 0; }
#rd-root .team .th .st { font-size: 12px; color: var(--label); }
#rd-root .team .note { font-size: 12px; color: var(--label); margin: 0 0 13px; }
#rd-root .team .members { display: flex; gap: 10px; flex-wrap: wrap; }
#rd-root .member {
  display: flex; align-items: center; gap: 11px; border: 1px solid var(--line);
  border-radius: 10px; padding: 10px 13px; min-width: 215px; flex: 1;
}
#rd-root .member.gap { border-style: dashed; background: var(--surface-2); }
#rd-root .av { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; font-size: 12px; font-weight: 700; color: #fff; flex: 0 0 auto; }
#rd-root .av.us { background: var(--navy); }
#rd-root .av.fam { background: var(--ok); }
#rd-root .av.coord { background: var(--accent); }
#rd-root .av.gapav { background: var(--line); color: var(--label-soft); }
#rd-root .member .mi { min-width: 0; flex: 1; }
#rd-root .member .nm { font-size: 13.5px; font-weight: 600; line-height: 1.2; }
#rd-root .member .rl { font-size: 11.5px; color: var(--label); margin-top: 2px; }
#rd-root .member .rl .prod { color: var(--accent); font-weight: 600; }
#rd-root .member .stt { font-size: 11px; font-weight: 600; color: var(--ok); white-space: nowrap; }
#rd-root .member .inv {
  font-family: inherit; font-size: 12px; font-weight: 600; padding: 5px 11px;
  border-radius: 7px; border: 1px solid var(--accent); background: var(--accent);
  color: #fff; cursor: pointer; white-space: nowrap;
}
#rd-root .urgent { border: 1px solid var(--alert-line); border-radius: var(--radius); overflow: hidden; background: var(--urgent-surface); }
#rd-root .urgent .cap { display: flex; align-items: center; gap: 10px; padding: 10px 16px; border-bottom: 1px solid var(--alert-line); background: var(--alert-bg); }
#rd-root .urgent .cap b { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--alert-ink); font-weight: 700; }
#rd-root .urgent .cap .ct { font-size: 11px; font-weight: 700; color: #fff; background: var(--red); border-radius: 999px; padding: 1px 8px; }
#rd-root .urgent ul { margin: 0; padding: 0; list-style: none; }
#rd-root .urgent li { display: flex; align-items: center; gap: 12px; padding: 11px 16px; border-top: 1px solid var(--line-soft); font-size: 13.5px; }
#rd-root .urgent li:first-child { border-top: 0; }
#rd-root .urgent li .sev { width: 8px; height: 8px; border-radius: 50%; flex: 0 0 auto; }
#rd-root .urgent li .txt { flex: 1; }
#rd-root .urgent li a { font-weight: 600; white-space: nowrap; }
#rd-root .alertbar { display: flex; align-items: center; gap: 10px; border: 1px solid var(--alert-line); background: var(--alert-bg); color: var(--alert-ink); border-radius: 11px; padding: 11px 14px; font-size: 13px; }
#rd-root .alertbar.red { border-color: var(--red-line); background: var(--red-bg); color: var(--red-strong); }
#rd-root .critical { border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; }
#rd-root .critical .cap { display: flex; align-items: center; gap: 10px; padding: 10px 16px; border-bottom: 1px solid var(--line-soft); background: var(--surface-2); flex-wrap: wrap; }
#rd-root .critical .cap b { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink); font-weight: 700; }
#rd-root .critical .cap .flow { font-size: 11px; font-weight: 600; color: var(--accent); background: var(--accent-soft); padding: 3px 9px; border-radius: 999px; }
#rd-root .critical .cap span { font-size: 11.5px; color: var(--label); }
#rd-root .crit-grid { display: grid; grid-template-columns: repeat(5, 1fr); }
#rd-root .crit { padding: 14px 16px; border-right: 1px solid var(--line-soft); }
#rd-root .crit:last-child { border-right: 0; }
#rd-root .crit .l { font-size: 10px; letter-spacing: .09em; text-transform: uppercase; color: var(--label); font-weight: 600; display: flex; align-items: center; gap: 6px; }
#rd-root .crit .v { margin-top: 6px; font-size: 13.5px; color: var(--ink); line-height: 1.4; }
#rd-root .crit.alert { background: var(--alert-bg); }
#rd-root .crit.alert .l { color: var(--alert-ink); }
#rd-root .dot { width: 7px; height: 7px; border-radius: 50%; display: inline-block; }
#rd-root .dot.amber { background: var(--amber-strong); }
#rd-root .dot.blue { background: var(--accent); }
#rd-root .dot.red { background: var(--red); }
#rd-root .pillars { display: flex; gap: 8px; flex-wrap: wrap; }
#rd-root .pl-chip { font-size: 12px; font-weight: 600; padding: 5px 11px; border-radius: 999px; background: var(--ok-bg); color: var(--ok); display: inline-flex; align-items: center; gap: 6px; }
#rd-root .pl-chip.gap { background: var(--alert-bg); color: var(--alert-ink); }
#rd-root .goal { display: flex; align-items: center; gap: 10px; margin: 7px 0; }
#rd-root .goal .gl { font-size: 12.5px; flex: 1; min-width: 0; }
#rd-root .gbar { width: 78px; height: 6px; border-radius: 3px; background: var(--line); overflow: hidden; flex: 0 0 auto; }
#rd-root .gbar i { display: block; height: 100%; border-radius: 3px; }
#rd-root .gbar i.ok { background: var(--ok); }
#rd-root .gbar i.warn { background: var(--amber-strong); }
#rd-root .palette-wrap { margin-top: 34px; border-top: 1px dashed var(--line); padding-top: 22px; }
#rd-root .palette-wrap .cap { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--label); font-weight: 700; margin-bottom: 12px; }
#rd-root .palette { max-width: 560px; margin: 0 auto; border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow-overlay); overflow: hidden; }
#rd-root .palette .pin { display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-bottom: 1px solid var(--line-soft); font-size: 15px; }
#rd-root .palette .pin .car { color: var(--accent); }
#rd-root .palette .pin .cur { width: 1.5px; height: 18px; background: var(--accent); display: inline-block; animation: blink 1s steps(2) infinite; }
@keyframes blink { 50% { opacity: 0; } }
#rd-root .palette .pgrp { font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--label); font-weight: 700; padding: 10px 16px 3px; }
#rd-root .palette .pr { display: flex; align-items: center; gap: 11px; padding: 9px 16px; font-size: 13.5px; }
#rd-root .palette .pr:hover, #rd-root .palette .pr.sel { background: var(--accent-soft); }
#rd-root .palette .pr .ico { width: 18px; text-align: center; color: var(--accent); }
#rd-root .palette .pr .sc { margin-left: auto; font-size: 11px; color: var(--ink-2); }
#rd-root .palette .pr .tag { font-size: 10px; font-weight: 600; color: var(--ink-2); background: var(--fill); border-radius: 5px; padding: 1px 6px; margin-left: auto; }
#rd-root .confidence { margin-top: 14px; font-size: 15px; color: var(--ink-2); }
#rd-root .confidence b { color: var(--ink); }

/* Today — cold-start (first-run): guided 3-step setup + queue preview (build-map Rule 17) */
#rd-root .hero { margin-top: 26px; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; }
#rd-root .hero .band { padding: 22px 26px; background: linear-gradient(180deg, var(--rail, #fbfcff), var(--bg)); border-bottom: 1px solid var(--line-soft); }
#rd-root .hero .band h2 { font-family: var(--font-serif); font-weight: 500; font-size: 23px; margin: 0 0 4px; }
#rd-root .hero .band p { margin: 0; color: var(--ink-2); font-size: 14px; }
#rd-root .hero .band .meter { display: flex; align-items: center; gap: 12px; margin-top: 16px; }
#rd-root .hero .band .meter .pct { font-family: var(--font-serif); font-size: 20px; color: var(--label); }
#rd-root .hero .band .meter .bar { flex: 1; max-width: 280px; height: 7px; border-radius: 4px; background: var(--line); overflow: hidden; }
#rd-root .hero .band .meter .bar i { display: block; height: 100%; width: 0; background: var(--ok); }
#rd-root .hero .band .meter .lab { font-size: 12px; color: var(--label); }
#rd-root .steps { padding: 8px 0; }
#rd-root .step { display: flex; align-items: center; gap: 16px; padding: 16px 26px; border-top: 1px solid var(--line-soft); }
#rd-root .step:first-child { border-top: 0; }
#rd-root .step .num { width: 30px; height: 30px; border-radius: 50%; border: 1.5px solid var(--accent); color: var(--accent); font-weight: 700; display: grid; place-items: center; font-size: 14px; flex: 0 0 auto; }
#rd-root .step.done .num { background: var(--ok); border-color: var(--ok); color: #fff; }
#rd-root .step .txt { flex: 1; }
#rd-root .step .txt .h { font-weight: 600; font-size: 15px; }
#rd-root .step .txt .s { font-size: 13px; color: var(--label); margin-top: 2px; }
#rd-root .step.done .txt .h { color: var(--label); }
#rd-root .step .done-tag { font-size: 12px; font-weight: 600; color: var(--ok); }
#rd-root .preview { margin-top: 24px; border: 1px dashed var(--line); border-radius: 14px; padding: 18px 20px; background: var(--rail, #fcfcfd); }
#rd-root .preview .l { font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--label); font-weight: 700; }
#rd-root .preview h3 { font-family: var(--font-serif); font-weight: 500; font-size: 17px; margin: 6px 0 4px; }
#rd-root .preview p { margin: 0; font-size: 13.5px; color: var(--ink-2); }
#rd-root .preview .ghostrows { margin-top: 12px; display: flex; flex-direction: column; gap: 8px; }
#rd-root .preview .gr { display: flex; align-items: center; gap: 10px; opacity: .55; }
#rd-root .preview .gr .d { width: 9px; height: 9px; border-radius: 50%; background: var(--dot-neutral, #c4c8d0); }
#rd-root .preview .gr .bar { height: 9px; border-radius: 5px; background: var(--line-soft); }
#rd-root .preview .gr .bar.w1 { width: 62%; } #rd-root .preview .gr .bar.w2 { width: 48%; } #rd-root .preview .gr .bar.w3 { width: 70%; }

/* PolicyDesk — policy↔evidence cards + practice-gap callouts + outcome areas (build-map Rule 11, the moat) */
#rd-root .pscope { margin-top: 14px; background: var(--accent-soft); border: 1px solid var(--accent-line, #d4daf6); border-radius: 11px; padding: 11px 15px; font-size: 13px; color: var(--ink-2); }
#rd-root .pscope .psub { color: var(--label); font-size: 11.5px; }
#rd-root .pcard { border: 1px solid var(--line); border-radius: 13px; padding: 15px 16px; margin-bottom: 12px; }
#rd-root .pcard.gap { border-left: 3px solid var(--amber); }
#rd-root .phead { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
#rd-root .phead .pt { font-weight: 600; font-size: 15px; }
#rd-root .phead .ptag { margin-left: auto; font-size: 11.5px; color: var(--label); }
#rd-root .evbox { margin-top: 11px; background: var(--fill); border: 1px solid var(--line-soft); border-radius: 10px; padding: 11px 13px; }
#rd-root .evbox .evh { font-size: 10px; letter-spacing: .07em; text-transform: uppercase; color: var(--accent); font-weight: 700; }
#rd-root .evbox .evm { display: flex; gap: 7px; flex-wrap: wrap; margin: 8px 0; }
#rd-root .mtr { font-size: 12px; font-weight: 600; padding: 3px 9px; border-radius: 7px; background: var(--fill); border: 1px solid var(--line); color: var(--ink-2); }
#rd-root .mtr.ok { background: var(--ok-bg); color: var(--ok); border-color: transparent; }
#rd-root .mtr.bad { background: var(--red-bg); color: var(--red-strong); border-color: transparent; }
#rd-root .evbox .evs { font-size: 11px; color: var(--label); }
#rd-root .evbox .evs a { font-weight: 600; }
#rd-root .gapcallout { display: flex; align-items: flex-start; gap: 9px; margin-top: 11px; background: var(--alert-bg); border: 1px solid var(--alert-line); border-radius: 10px; padding: 10px 13px; }
#rd-root .gapcallout .gi { color: var(--amber-strong); font-size: 12px; margin-top: 1px; flex: 0 0 auto; }
#rd-root .gapcallout .gt { flex: 1; font-size: 13px; color: var(--alert-ink); line-height: 1.45; }
#rd-root .gapcallout a { font-weight: 600; white-space: nowrap; font-size: 12.5px; align-self: center; }
/* PolicyDesk — NDIS policy template library, grouped by category (collapsible so 35+
   templates don't render as a wall of cards on first paint). Reuses .pcard/.evbox/.chip. */
#rd-root details.pdlib-cat { border: 1px solid var(--line); border-radius: 13px; margin-bottom: 12px; overflow: hidden; }
#rd-root details.pdlib-cat > summary.pdlib-cat-h {
  list-style: none; cursor: pointer; padding: 13px 16px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
  font-size: 14px; font-weight: 600; color: var(--ink); background: var(--surface-2);
}
#rd-root details.pdlib-cat > summary.pdlib-cat-h::-webkit-details-marker { display: none; }
#rd-root .pdlib-caret { font-size: 11px; color: var(--label); width: 12px; flex: 0 0 auto; display: inline-block; text-align: center; transition: transform .15s ease; }
#rd-root details.pdlib-cat[open] > summary.pdlib-cat-h .pdlib-caret { transform: rotate(90deg); }
#rd-root .pdlib-cat-name { margin-right: auto; }
#rd-root .pdlib-cat-count { font-size: 12px; font-weight: 500; color: var(--label); }
#rd-root .pdlib-cat-body { padding: 14px 16px 2px; border-top: 1px solid var(--line-soft); }
#rd-root .pdlib-cat-body .pcard:last-child { margin-bottom: 0; }
#rd-root details.pdlib-cat-muted > summary.pdlib-cat-h { background: var(--bg); color: var(--label); font-weight: 500; }
#rd-root .poutcomes { border: 1px solid var(--line); border-radius: 13px; padding: 2px 16px; }
#rd-root .orow { display: flex; align-items: center; gap: 10px; padding: 12px 0; border-top: 1px solid var(--line-soft); }
#rd-root .orow:first-child { border-top: 0; }
#rd-root .orow .om { flex: 1; min-width: 0; }
#rd-root .orow .on { font-weight: 600; font-size: 13.5px; }
#rd-root .orow .os { font-size: 12px; color: var(--label); margin-top: 1px; }
#rd-root .grow { display: flex; align-items: flex-start; gap: 10px; padding: 10px 0; border-top: 1px solid var(--line-soft); }
#rd-root .grow:first-of-type { border-top: 0; }
#rd-root .grow .sev { width: 9px; height: 9px; border-radius: 50%; margin-top: 4px; flex: 0 0 auto; }
#rd-root .grow .gm { flex: 1; min-width: 0; }
#rd-root .grow .gn { font-size: 13px; font-weight: 600; }
#rd-root .grow .gs { font-size: 11.5px; color: var(--label); }
#rd-root .grow a { font-weight: 600; font-size: 12px; white-space: nowrap; align-self: center; }
#rd-root .railnote { font-size: 11.5px; color: var(--label); margin-top: 10px; line-height: 1.5; }
#rd-root .railnote b { color: var(--ink-2); }

/* Incidents — Commission deadline clock + lifecycle stepper + category badges (faithful rebuild) */
#rd-root .iclock { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 14px; background: var(--alert-bg); border: 1px solid var(--alert-line); border-radius: 12px; padding: 14px 18px; }
#rd-root .iclock.over { background: var(--red-bg); border-color: var(--red-line); }
#rd-root .iclock .ic-time { font-family: var(--font-serif); font-size: 30px; color: var(--red); line-height: 1; }
#rd-root .iclock .ic-msg { flex: 1; min-width: 220px; font-size: 13.5px; color: var(--alert-ink); }
#rd-root .iclock.over .ic-msg { color: var(--red-strong); }
#rd-root .iclock .ic-msg b { color: var(--ink); }
#rd-root .iclock .ic-act { font-weight: 600; white-space: nowrap; }
#rd-root .icard { border: 1px solid var(--line); border-radius: 13px; padding: 15px 16px; margin-bottom: 12px; }
#rd-root .icard.rep { border-left: 3px solid var(--red); }
#rd-root .icard.opn { border-left: 3px solid var(--amber); }
#rd-root .icard.closed { opacity: .82; }
#rd-root .icard .ihead { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; }
#rd-root .icard .iwho { font-weight: 600; }
#rd-root .icard .itime { font-size: 11.5px; color: var(--label); margin-left: auto; }
#rd-root .icard .isrc { font-size: 11px; color: var(--accent); font-weight: 600; }
#rd-root .icard .idesc { font-size: 13px; color: var(--ink-2); margin: 9px 0; line-height: 1.5; }
#rd-root .icat { font-size: 10px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; padding: 2px 8px; border-radius: 6px; }
#rd-root .icat.med { background: var(--red-bg); color: var(--red-strong); }
#rd-root .icat.beh { background: #efe9fb; color: #6a3fb5; }
#rd-root .icat.env { background: var(--accent-soft); color: var(--accent); }
#rd-root .icat.safe { background: var(--red-bg); color: var(--red-strong); }
#rd-root .icat.other { background: var(--fill); color: var(--ink-2); }
#rd-root .irep { font-size: 11.5px; background: var(--alert-bg); color: var(--alert-ink); border-radius: 7px; padding: 5px 9px; margin: 6px 0; }
#rd-root .irep b { color: var(--red); }
#rd-root .istepper { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; margin: 11px 0; }
#rd-root .istep { display: flex; align-items: center; gap: 6px; }
#rd-root .istep .idot { width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; font-size: 11px; font-weight: 700; border: 1.5px solid var(--line); color: var(--label); background: var(--bg); }
#rd-root .istep.done .idot { background: var(--ok); border-color: var(--ok); color: #fff; }
#rd-root .istep.current .idot { border-color: var(--amber); color: var(--amber-strong); }
#rd-root .istep .ilabel { font-size: 11.5px; color: var(--label); }
#rd-root .istep.done .ilabel, #rd-root .istep.current .ilabel { color: var(--ink-2); }
#rd-root .iconn { width: 16px; height: 1.5px; background: var(--line); flex: 0 0 auto; }
#rd-root .iconn.done { background: var(--ok); }
#rd-root .ievidence { font-size: 11.5px; color: var(--label); background: var(--fill); border-radius: 8px; padding: 7px 10px; margin: 8px 0; }
#rd-root .ievidence a { font-weight: 600; }
#rd-root .iacts { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 10px; }

/* Roster — evidence-state week grid + coverage gaps (faithful rebuild of Aura · Roster) */
#rd-root .rtop { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-top: 20px; flex-wrap: wrap; }
#rd-root .wknav { display: flex; align-items: center; gap: 10px; margin-top: 8px; font-size: 14px; color: var(--ink-2); }
#rd-root .wknav button { font-family: inherit; border: 1px solid var(--line); background: var(--bg); border-radius: 7px; width: 28px; height: 28px; cursor: pointer; color: var(--ink-2); }
#rd-root .wknav button:hover { border-color: #cfd2da; }
#rd-root .wknav b { color: var(--ink); }
#rd-root .wknav a { font-size: 12.5px; font-weight: 600; }
#rd-root .rtools { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
#rd-root .rtoggle { display: flex; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
#rd-root .rtoggle button { font-family: inherit; font-size: 12.5px; font-weight: 600; padding: 8px 13px; border: 0; background: var(--bg); color: var(--ink-2); cursor: pointer; }
#rd-root .rtoggle button.on { background: var(--ink); color: #fff; }
#rd-root .rsummary { display: flex; gap: 22px; flex-wrap: wrap; margin-top: 16px; padding: 13px 18px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-2); }
#rd-root .rsummary .m { display: flex; flex-direction: column; }
#rd-root .rsummary .m .n { font-family: var(--font-serif); font-size: 20px; line-height: 1; }
#rd-root .rsummary .m .n.amber { color: var(--alert-ink); }
#rd-root .rsummary .m .n.red { color: var(--red); }
#rd-root .rsummary .m .n.ok { color: var(--ok); }
#rd-root .rsummary .m .l { font-size: 11px; color: var(--label); margin-top: 4px; }
#rd-root .rsummary .tieq { margin-left: auto; align-self: center; font-size: 12.5px; color: var(--ink-2); max-width: 320px; }
#rd-root .rsummary .tieq a { font-weight: 600; }
#rd-root .rfilters { display: flex; gap: 7px; margin: 18px 0 0; flex-wrap: wrap; }
#rd-root .rfilters button { font-family: inherit; font-size: 12.5px; font-weight: 600; color: var(--ink-2); background: var(--bg); border: 1px solid var(--line); border-radius: 999px; padding: 5px 13px; cursor: pointer; }
#rd-root .rfilters button.on { background: var(--ink); color: #fff; border-color: var(--ink); }
#rd-root .rlegend { display: flex; gap: 16px; flex-wrap: wrap; margin: 14px 2px 10px; font-size: 11.5px; color: var(--label); }
#rd-root .rlegend span { display: inline-flex; align-items: center; gap: 6px; }
#rd-root .rlegend i { width: 10px; height: 10px; border-radius: 3px; display: inline-block; }
#rd-root .lg.done { background: var(--ok); }
#rd-root .lg.sched { background: #9aa6c9; }
#rd-root .lg.evid { background: var(--amber); }
#rd-root .lg.flag { background: var(--red); }
#rd-root .lg.now { background: var(--accent); }
#rd-root .gridscroll { overflow-x: auto; border: 1px solid var(--line); border-radius: 14px; margin-top: 2px; }
#rd-root .rgrid { display: grid; grid-template-columns: 132px repeat(7, minmax(104px, 1fr)); min-width: 840px; }
#rd-root .rgrid .colh { padding: 10px; font-size: 11px; font-weight: 600; color: var(--label); border-bottom: 1px solid var(--line); border-right: 1px solid var(--line-soft); background: #fcfcfd; text-align: center; }
#rd-root .rgrid .colh.today { color: var(--accent); }
#rd-root .rgrid .colh b { display: block; font-size: 13px; color: var(--ink); }
#rd-root .rgrid .corner { background: #fcfcfd; border-bottom: 1px solid var(--line); border-right: 1px solid var(--line); position: sticky; left: 0; z-index: 2; }
#rd-root .rgrid .wname { position: sticky; left: 0; background: var(--bg); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line-soft); padding: 10px; z-index: 1; }
#rd-root .rgrid .wname .nm { font-size: 13px; font-weight: 600; }
#rd-root .rgrid .wname .hr { font-size: 11px; color: var(--label); margin-top: 2px; }
#rd-root .rgrid .cell { border-right: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); padding: 6px; min-height: 62px; }
#rd-root .rgrid .cell .add { color: var(--label); opacity: 0; font-size: 13px; background: none; border: 0; cursor: pointer; font-family: inherit; padding: 2px; }
#rd-root .rgrid .cell:hover .add { opacity: .5; }
#rd-root .sh { display: block; width: 100%; text-align: left; border: 0; border-left: 3px solid; border-radius: 6px; padding: 4px 7px; margin-bottom: 4px; font-size: 11.5px; cursor: pointer; background: var(--fill); color: var(--ink); font-family: inherit; }
#rd-root .sh .p { font-weight: 600; }
#rd-root .sh .t { color: var(--label); font-size: 10px; display: block; }
#rd-root .sh.done { border-color: var(--ok); background: var(--ok-bg); }
#rd-root .sh.sched { border-color: #9aa6c9; background: #f2f4fb; }
#rd-root .sh.evid { border-color: var(--amber); background: var(--alert-bg); }
#rd-root .sh.flag { border-color: var(--red); background: var(--red-bg); }
#rd-root .sh.now { border-color: var(--accent); background: var(--accent-soft); }
#rd-root .sh .tag { font-size: 9px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; display: block; margin-top: 2px; }
#rd-root .sh.evid .tag { color: var(--alert-ink); }
#rd-root .sh.flag .tag { color: var(--red); }
#rd-root .sh.now .tag { color: var(--accent); }
#rd-root .sh.fhide { display: none; }
#rd-root .rgap { margin-top: 14px; border: 1px dashed var(--alert-line); background: var(--alert-bg); border-radius: 12px; padding: 13px 16px; display: flex; align-items: center; gap: 12px; font-size: 13.5px; }
#rd-root .rgap .sev { width: 9px; height: 9px; border-radius: 50%; background: var(--amber); flex: 0 0 auto; }
#rd-root .rgap .txt { flex: 1; color: var(--ink-2); }
#rd-root .rgap a { font-weight: 600; white-space: nowrap; }

/* Medications — the live MAR round + S8 witness controls (faithful rebuild of Aura · Medications) */
#rd-root .mscope { display: flex; gap: 4px; background: #f2f3f6; border-radius: 9px; padding: 3px; }
#rd-root .mscope button { font-family: inherit; font-size: 12.5px; font-weight: 600; color: var(--ink-2); background: transparent; border: 0; border-radius: 7px; padding: 6px 13px; cursor: pointer; }
#rd-root .mscope button.on { background: var(--bg); color: var(--ink); box-shadow: 0 1px 2px rgba(0,0,0,.06); }
#rd-root .msafe { margin-top: 16px; display: flex; align-items: center; gap: 12px; background: var(--red-bg); border: 1px solid var(--red-line); border-radius: 11px; padding: 12px 16px; }
#rd-root .msafe .ico { color: var(--red); font-weight: 700; font-size: 15px; }
#rd-root .msafe .tx { font-size: 13.5px; color: var(--ink); flex: 1; }
#rd-root .msafe .tx b { color: var(--red); font-weight: 700; }
#rd-root .msafe a { font-weight: 600; font-size: 13px; white-space: nowrap; }
#rd-root .mstrip { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; margin-top: 14px; }
#rd-root .mstat { border: 1px solid var(--line); border-radius: 11px; padding: 12px 14px; background: var(--bg); }
#rd-root .mstat .n { font-family: var(--font-serif); font-size: 23px; font-weight: 500; line-height: 1; }
#rd-root .mstat .l { font-size: 11px; color: var(--label); margin-top: 5px; }
#rd-root .mstat.warn .n { color: var(--amber-strong); }
#rd-root .mstat.alert .n { color: var(--red); }
#rd-root .mstat.good .n { color: var(--ok); }
#rd-root .mgrid { display: grid; grid-template-columns: 1fr 322px; gap: 22px; margin-top: 22px; align-items: start; }
#rd-root .msec { margin-bottom: 24px; }
#rd-root .msech { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--label); font-weight: 700; margin: 0 2px 11px; display: flex; align-items: center; gap: 9px; }
#rd-root .msech .ct { color: var(--label); font-weight: 600; letter-spacing: 0; text-transform: none; }
#rd-root .dose { display: grid; grid-template-columns: 58px 1fr auto; gap: 14px; align-items: center; border: 1px solid var(--line); border-radius: 12px; background: var(--bg); padding: 13px 15px; margin-bottom: 10px; }
#rd-root .dose.over { border-left: 3px solid var(--red); background: #fffcfb; }
#rd-root .dose.due { border-left: 3px solid var(--amber); }
#rd-root .dose.done { opacity: .72; }
#rd-root .dose .dtime { font-size: 13px; font-weight: 700; color: var(--ink-2); text-align: center; }
#rd-root .dose .dtime small { display: block; font-size: 10px; color: var(--label); font-weight: 600; margin-top: 2px; }
#rd-root .dmeta .who { font-weight: 600; font-size: 14px; }
#rd-root .dmeta .med { font-size: 13.5px; color: var(--ink); margin-top: 2px; }
#rd-root .dmeta .med b { font-weight: 600; }
#rd-root .dmeta .dtags { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 6px; }
#rd-root .tg { font-size: 10.5px; font-weight: 700; letter-spacing: .02em; padding: 2px 7px; border-radius: 5px; background: #f2f3f6; color: var(--ink-2); }
#rd-root .tg.s8 { background: var(--s8-bg); color: var(--s8); border: 1px solid var(--s8-line); }
#rd-root .tg.miss { background: var(--red-bg); color: var(--red); }
#rd-root .tg.wit { background: var(--alert-bg); color: var(--alert-ink); }
#rd-root .tg.ok { background: var(--ok-bg); color: var(--ok); }
#rd-root .dact { display: flex; gap: 7px; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
#rd-root .da { font-family: inherit; font-size: 12.5px; font-weight: 600; padding: 7px 12px; border-radius: 8px; border: 1px solid var(--line); background: var(--bg); color: var(--ink); cursor: pointer; }
#rd-root .da.give { background: var(--accent); border-color: var(--accent); color: #fff; }
#rd-root .da.late { background: var(--bg); border-color: var(--alert-line); color: var(--alert-ink); }
#rd-root .da.ref { background: var(--bg); border-color: var(--red-line); color: var(--red); }
#rd-root .donetick { font-size: 12.5px; font-weight: 600; color: var(--ok); }
#rd-root .rxwrap { border: 1px solid var(--line); border-radius: 13px; background: var(--bg); padding: 6px 16px; }
#rd-root .rxrow { display: flex; align-items: center; gap: 12px; border-bottom: 1px solid var(--line-soft); padding: 12px 2px; }
#rd-root .rxrow:last-child { border-bottom: 0; }
#rd-root .rxrow .nm { font-weight: 600; font-size: 14px; }
#rd-root .rxrow .det { font-size: 12.5px; color: var(--label); margin-top: 1px; }
#rd-root .rxrow .sp { margin-left: auto; display: flex; gap: 7px; }
#rd-root .mbox { border: 1px solid var(--line); border-radius: 13px; background: var(--bg); padding: 15px 16px; margin-bottom: 16px; }
#rd-root .mbox .mbh { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--label); font-weight: 700; display: flex; align-items: center; justify-content: space-between; }
#rd-root .att { display: flex; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--line-soft); align-items: flex-start; }
#rd-root .att:last-child { border-bottom: 0; padding-bottom: 0; }
#rd-root .att .dot { width: 7px; height: 7px; border-radius: 50%; margin-top: 6px; flex: 0 0 auto; }
#rd-root .att .dot.a { background: var(--amber); } #rd-root .att .dot.r { background: var(--red); } #rd-root .att .dot.s8 { background: var(--s8); }
#rd-root .att .t { font-size: 13px; font-weight: 600; } #rd-root .att .s { font-size: 11.5px; color: var(--label); margin-top: 1px; }
#rd-root .att .go { margin-left: auto; font-size: 12px; font-weight: 600; white-space: nowrap; }
#rd-root .railnote { font-size: 11.5px; color: var(--label); margin-top: 10px; }
#rd-root .evrow { display: flex; align-items: baseline; justify-content: space-between; padding: 7px 0; border-bottom: 1px solid var(--line-soft); font-size: 13px; }
#rd-root .evrow:last-child { border-bottom: 0; }
#rd-root .evrow b { font-family: var(--font-serif); font-size: 17px; font-weight: 500; }
#rd-root .evrow b.bad { color: var(--red); } #rd-root .evrow b.good { color: var(--ok); }
#rd-root .evrow .l { color: var(--label); font-size: 12px; }
#rd-root .phonemini { border: 1px solid var(--s8-line); background: var(--s8-bg); border-radius: 13px; padding: 4px; margin-top: 4px; }
#rd-root .pm-in { background: var(--bg); border-radius: 10px; padding: 13px; }
#rd-root .pm-h { font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--s8); font-weight: 700; }
#rd-root .pm-med { font-weight: 600; font-size: 14px; margin-top: 8px; }
#rd-root .pm-med small { display: block; font-size: 11.5px; color: var(--label); font-weight: 500; margin-top: 1px; }
#rd-root .pm-opt { display: flex; justify-content: space-between; align-items: center; font-size: 12px; border: 1px solid var(--line); border-radius: 8px; padding: 8px 10px; color: var(--label); margin-top: 6px; }
#rd-root .pm-opt.on { border: 1.5px solid var(--s8); background: var(--s8-bg); color: var(--s8); font-weight: 700; }
#rd-root .pm-cap { font-size: 11px; color: var(--label); margin-top: 9px; line-height: 1.5; }
#rd-root .mfield { width: 100%; font-family: inherit; font-size: 13.5px; color: var(--ink); background: var(--bg); border: 1px solid var(--line); border-radius: 8px; padding: 9px 11px; margin-top: 8px; }
@media (max-width: 1080px) { #rd-root .mgrid { grid-template-columns: 1fr; } #rd-root .mstrip { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 560px) { #rd-root .mstrip { grid-template-columns: repeat(2, 1fr); } #rd-root .dose { grid-template-columns: 48px 1fr; } #rd-root .dact { grid-column: 1 / -1; justify-content: flex-start; } }

/* Staff — workforce compliance (clearances) + self-serve onboarding register (faithful rebuild) */
#rd-root .sstrip { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin-top: 14px; }
#rd-root .mgrid2 { display: grid; grid-template-columns: 1fr 330px; gap: 22px; margin-top: 24px; align-items: start; }
#rd-root .sech2 { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--label); font-weight: 700; margin: 2px 2px 12px; display: flex; align-items: center; gap: 9px; }
#rd-root .sech2 .ct { color: var(--label); font-weight: 600; letter-spacing: 0; text-transform: none; }
#rd-root .onb { border: 1px solid var(--line); border-left: 3px solid var(--accent); border-radius: 13px; background: var(--bg); padding: 16px 18px; margin-bottom: 14px; }
#rd-root .onb .oh { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
#rd-root .onb .nm { font-weight: 600; font-size: 15.5px; }
#rd-root .onb .role { font-size: 12.5px; color: var(--label); }
#rd-root .onb .since { margin-left: auto; font-size: 11.5px; color: var(--label); }
#rd-root .prog { display: flex; align-items: center; gap: 10px; margin: 11px 0 13px; }
#rd-root .prog .pbar { flex: 1; height: 7px; background: #eef0f3; border-radius: 99px; overflow: hidden; }
#rd-root .prog .pbar i { display: block; height: 100%; background: var(--accent); border-radius: 99px; }
#rd-root .prog .pc { font-size: 12px; font-weight: 700; color: var(--accent); white-space: nowrap; }
#rd-root .steps2 { display: grid; grid-template-columns: 1fr 1fr; gap: 7px 18px; }
#rd-root .stp { display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--ink-2); }
#rd-root .stp .c { width: 16px; height: 16px; border-radius: 50%; display: grid; place-items: center; font-size: 9px; flex: 0 0 auto; border: 1.5px solid var(--line); background: var(--bg); color: var(--label); }
#rd-root .stp.done .c { background: var(--ok); border-color: var(--ok); color: #fff; }
#rd-root .stp.done { color: var(--ink); }
#rd-root .onb .oact { display: flex; gap: 8px; margin-top: 13px; padding-top: 12px; border-top: 1px solid var(--line-soft); align-items: center; flex-wrap: wrap; }
#rd-root .onb .oact .vf { margin-left: auto; font-size: 12px; color: var(--label); max-width: 260px; }
#rd-root .team { border: 1px solid var(--line); border-radius: 13px; background: var(--bg); overflow: hidden; }
#rd-root .tc { display: flex; align-items: center; gap: 14px; padding: 14px 18px; border-bottom: 1px solid var(--line-soft); }
#rd-root .tc:last-child { border-bottom: 0; }
#rd-root .tc.flag { background: #fffdf8; }
#rd-root .tc .av { width: 38px; height: 38px; border-radius: 50%; background: #e7eaf6; color: var(--accent); display: grid; place-items: center; font-weight: 700; font-size: 13px; flex: 0 0 auto; }
#rd-root .tc .ti { min-width: 0; }
#rd-root .tc .ti .nm { font-weight: 600; font-size: 14.5px; }
#rd-root .tc .ti .role { font-size: 12px; color: var(--label); }
#rd-root .tc .ti .parts { font-size: 11.5px; color: var(--label); margin-top: 2px; }
#rd-root .tc .cl { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; margin-left: auto; flex: 0 0 auto; }
#rd-root .tc .acts { display: flex; gap: 6px; margin-left: 14px; flex: 0 0 auto; }
#rd-root .smini { font-family: inherit; font-size: 12px; font-weight: 600; padding: 6px 10px; border-radius: 7px; border: 1px solid var(--line); background: var(--bg); color: var(--ink-2); cursor: pointer; }
#rd-root .smini:hover { border-color: var(--btn-hover-line); }
#rd-root .how { counter-reset: s; margin-top: 4px; }
#rd-root .how .h { display: flex; gap: 11px; padding: 9px 0; border-bottom: 1px solid var(--line-soft); align-items: flex-start; }
#rd-root .how .h:last-child { border-bottom: 0; }
#rd-root .how .h .hn { counter-increment: s; width: 20px; height: 20px; border-radius: 50%; background: var(--ink); color: #fff; display: grid; place-items: center; font-size: 11px; font-weight: 700; flex: 0 0 auto; }
#rd-root .how .h .hn::before { content: counter(s); }
#rd-root .how .h .t { font-size: 13px; font-weight: 600; }
#rd-root .how .h .s { font-size: 11.5px; color: var(--label); margin-top: 1px; }
@media (max-width: 1080px) { #rd-root .mgrid2 { grid-template-columns: 1fr; } #rd-root .sstrip { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 760px) { #rd-root .tc .acts { display: none; } }
@media (max-width: 560px) { #rd-root .sstrip { grid-template-columns: repeat(2, 1fr); } #rd-root .steps2 { grid-template-columns: 1fr; } }

/* Handover — AI day digest + per-participant handover feed (faithful rebuild of Aura · Handover) */
#rd-root .digest { margin-top: 18px; border: 1px solid var(--line); border-radius: 14px; background: linear-gradient(180deg,#fcfcfe,var(--bg)); padding: 18px 20px; }
#rd-root .digest .dh { font-size: 10.5px; letter-spacing: .13em; text-transform: uppercase; color: var(--accent); font-weight: 700; display: flex; align-items: center; gap: 7px; }
#rd-root .digest .dline { font-family: var(--font-serif); font-size: 20px; line-height: 1.4; margin-top: 8px; color: var(--ink); }
#rd-root .digest .dline b { font-weight: 600; }
#rd-root .digest .dconf { font-size: 12px; color: var(--label); margin-top: 8px; }
#rd-root .feed-h { font-size: 11px; letter-spacing: .13em; text-transform: uppercase; color: var(--label); font-weight: 700; margin: 2px 0 12px; }
#rd-root .hcard { border: 1px solid var(--line); border-radius: 13px; background: var(--bg); padding: 16px 18px; margin-bottom: 14px; }
#rd-root .hcard.flag { border-left: 3px solid var(--amber); }
#rd-root .hcard.alert { border-left: 3px solid var(--red); }
#rd-root .hcard.miss { border: 1px dashed var(--alert-line); background: #fffdf8; }
#rd-root .hcard .ch { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
#rd-root .hcard .hnm { font-family: var(--font-serif); font-size: 19px; font-weight: 600; }
#rd-root .hcard .hshift { font-size: 12px; color: var(--label); }
#rd-root .hcard .hstate { margin-left: auto; font-size: 11px; font-weight: 700; letter-spacing: .03em; padding: 2px 9px; border-radius: 6px; }
#rd-root .hstate.done { background: var(--ok-bg); color: var(--ok); }
#rd-root .hstate.draft { background: var(--accent-soft); color: var(--accent); }
#rd-root .hstate.none { background: var(--alert-bg); color: var(--alert-ink); }
#rd-root .hcard .hbody { font-size: 14px; color: var(--ink-2); line-height: 1.55; margin: 10px 0 12px; }
#rd-root .hchips { display: flex; gap: 7px; flex-wrap: wrap; }
#rd-root .hchips .pill.bad { background: var(--red-bg); color: var(--red); }
#rd-root .hchips .pill.warn { background: var(--alert-bg); color: var(--alert-ink); }
#rd-root .exc { font-size: 12.5px; color: var(--ink); background: var(--alert-bg); border: 1px solid var(--alert-line); border-radius: 8px; padding: 8px 11px; margin-top: 10px; display: flex; align-items: center; gap: 8px; }
#rd-root .exc.bad { background: var(--red-bg); border-color: var(--red-line); }
#rd-root .exc .x { font-weight: 700; white-space: nowrap; }
#rd-root .exc a { margin-left: auto; font-weight: 600; white-space: nowrap; }
#rd-root .hfoot { display: flex; align-items: center; gap: 10px; margin-top: 13px; padding-top: 11px; border-top: 1px solid var(--line-soft); flex-wrap: wrap; }
#rd-root .hprov { font-size: 11.5px; color: var(--label); }
#rd-root .hprov b { color: var(--ink-2); font-weight: 600; }
#rd-root .hfoot .sp { margin-left: auto; display: flex; gap: 8px; }
#rd-root .hfoot a { font-size: 12.5px; font-weight: 600; }
#rd-root .cov { display: flex; align-items: center; gap: 12px; margin-top: 12px; }
#rd-root .cov .covring { width: 54px; height: 54px; border-radius: 50%; flex: 0 0 auto; background: conic-gradient(var(--ok) calc(var(--p,0)*1%), var(--ring-track) 0); display: grid; place-items: center; }
#rd-root .cov .covring i { width: 40px; height: 40px; border-radius: 50%; background: var(--bg); display: grid; place-items: center; font-style: normal; font-weight: 700; font-size: 13px; }
#rd-root .cov .covct { font-size: 12.5px; color: var(--ink-2); }
#rd-root .cov .covct b { font-family: var(--font-serif); font-size: 16px; }

/* Journal — day-grouped note stream (the classifier .rd-jcx chip engine is preserved) */
#rd-root .jlead { font-size: 13px; color: var(--ink-2); margin-top: 6px; max-width: 580px; }
#rd-root .jlead b { color: var(--ink); font-weight: 600; }
#rd-root .jnew { border: 1.5px solid var(--accent); border-radius: 13px; background: var(--bg); padding: 14px 16px; margin-top: 14px; }
#rd-root .jnew[hidden] { display: none; }
#rd-root #rd-jrn-stream .dayhd { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--label); font-weight: 700; margin: 16px 2px 12px; display: flex; align-items: center; gap: 10px; }
#rd-root #rd-jrn-stream .dayhd .ct { color: var(--label); font-weight: 600; letter-spacing: 0; text-transform: none; font-size: 11.5px; }
#rd-root #rd-jrn-stream .jentry { display: grid; grid-template-columns: 62px 1fr; gap: 14px; border: 1px solid var(--line); border-radius: 13px; background: var(--bg); padding: 14px 16px; margin-bottom: 11px; }
#rd-root #rd-jrn-stream .jentry.flag { border-left: 3px solid var(--amber); }
#rd-root #rd-jrn-stream .jentry.alert { border-left: 3px solid var(--red); }
#rd-root #rd-jrn-stream .jentry.fhide { display: none; }
#rd-root #rd-jrn-stream .jtime { font-size: 12.5px; font-weight: 700; color: var(--ink-2); }
#rd-root #rd-jrn-stream .jtime .src { display: block; margin-top: 5px; font-size: 10px; font-weight: 700; color: var(--accent); }
#rd-root #rd-jrn-stream .jtime .src.typed { color: var(--label); }
#rd-root #rd-jrn-stream .jmeta { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
#rd-root #rd-jrn-stream .jmeta .who { font-weight: 600; font-size: 14.5px; }
#rd-root #rd-jrn-stream .jmeta .by { font-size: 12px; color: var(--label); }
#rd-root #rd-jrn-stream .jmeta .shift { font-size: 11.5px; color: var(--label); margin-left: auto; }
#rd-root #rd-jrn-stream .jbody { font-size: 14px; color: var(--ink); line-height: 1.55; margin: 8px 0 0; }
#rd-root #rd-jrn-stream .jconf { font-size: 11px; color: var(--label); margin-top: 9px; }
#rd-root #rd-jrn-stream .jconf b { color: var(--accent); font-weight: 600; }
/* WPK1 - Acknowledge & close (kai-inbox 2026-07-11): the open action + the closed, append-only record */
#rd-root #rd-jrn-stream .rd-jack:empty { display: none; }
#rd-root #rd-jrn-stream .rd-jack { margin-top: 10px; }
#rd-root #rd-jrn-stream .jack-done { font-size: 12px; color: var(--ink-2); background: var(--ok-bg); border: 1px solid var(--ok-line); border-radius: 8px; padding: 8px 11px; }
#rd-root #rd-jrn-stream .jack-tick { font-weight: 600; color: var(--ok); }
#rd-root #rd-jrn-stream .jack-note { margin: 4px 0 0; color: var(--ink); }

/* Participants — list/index (avatar + care-team connection + record completeness + needs-you) */
#rd-root .ptop { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 12px; }
#rd-root .ptop .psearch { flex: 1; min-width: 180px; }
#rd-root .ptop input.psearch { font-family: inherit; font-size: 13.5px; color: var(--ink); background: var(--bg); border: 1px solid var(--line); border-radius: 10px; padding: 9px 12px; }
#rd-root .psum { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 14px; }
#rd-root .psc { border: 1px solid var(--line); border-radius: 12px; padding: 13px 15px; background: var(--bg); }
#rd-root .psc .v { font-family: var(--font-serif); font-size: 24px; font-weight: 600; line-height: 1; }
#rd-root .psc .k { font-size: 11.5px; color: var(--label); margin-top: 5px; }
#rd-root .psc.teal { background: var(--teal-soft, #e3faf6); border-color: #cdeee8; }
#rd-root .psc.teal .v { color: var(--teal-ink, #067e70); }
#rd-root .psc.flag { background: var(--alert-bg); border-color: var(--alert-line); }
#rd-root .psc.flag .v { color: var(--alert-ink); }
#rd-root .pfilt { display: flex; gap: 7px; margin: 16px 0 0; flex-wrap: wrap; }
#rd-root .pfilt button { font-family: inherit; font-size: 12.5px; font-weight: 600; color: var(--ink-2); background: var(--bg); border: 1px solid var(--line); border-radius: 999px; padding: 5px 13px; cursor: pointer; }
#rd-root .pfilt button .c { color: var(--label); margin-left: 5px; }
#rd-root .pfilt button.on { background: var(--accent-soft); border-color: var(--accent-line); color: var(--accent); }
#rd-root .pfilt button.on .c { color: var(--accent); }
#rd-root .ptbl { border: 1px solid var(--line); border-radius: 13px; overflow: hidden; margin-top: 14px; }
#rd-root .pthead, #rd-root .prow { display: grid; grid-template-columns: 2.2fr 1.6fr 1.6fr 1fr 1.8fr; gap: 14px; align-items: center; }
#rd-root .pthead { background: var(--surface-2); padding: 10px 16px; font-size: 11px; letter-spacing: .04em; text-transform: uppercase; color: var(--label); font-weight: 700; }
#rd-root .prow { padding: 13px 16px; border-top: 1px solid var(--line-soft); cursor: pointer; }
#rd-root .prow:hover { background: var(--surface-2); }
#rd-root .prow.fhide { display: none; }
#rd-root .pwho { display: flex; align-items: center; gap: 11px; min-width: 0; }
#rd-root .pwho .pav { width: 36px; height: 36px; border-radius: 50%; background: var(--accent-soft); color: var(--accent); display: grid; place-items: center; font-family: var(--font-serif); font-weight: 600; font-size: 14px; flex: 0 0 auto; }
#rd-root .pwho .pnm { font-weight: 600; font-size: 14.5px; }
#rd-root .pwho .ploc { font-size: 12px; color: var(--label); margin-top: 1px; }
#rd-root .psup { font-size: 12.5px; color: var(--ink-2); }
#rd-root .pteam { display: flex; gap: 6px; flex-wrap: wrap; }
#rd-root .pdot { font-size: 11.5px; font-weight: 600; padding: 3px 9px; border-radius: 999px; }
#rd-root .pdot.on { background: var(--teal-soft, #e3faf6); color: var(--teal-ink, #067e70); border: 1px solid #cdeee8; }
#rd-root .pdot.pend { background: var(--alert-bg); color: var(--alert-ink); border: 1px solid var(--alert-line); }
#rd-root .pdot.off { background: var(--fill); color: var(--label); border: 1px solid var(--line); }
#rd-root .pready { display: flex; align-items: center; gap: 8px; }
#rd-root .pready .pct { font-size: 13.5px; font-weight: 700; }
#rd-root .pready .pbar { width: 54px; height: 6px; background: var(--ring-track); border-radius: 99px; overflow: hidden; }
#rd-root .pready .pbar i { display: block; height: 100%; border-radius: 99px; }
#rd-root .pneed .t { font-size: 12.5px; font-weight: 600; display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
#rd-root .pneed .src { font-size: 11.5px; color: var(--label); margin-top: 2px; }
#rd-root .pneed .muted2 { font-size: 12.5px; color: var(--label); }
#rd-root .pneed .pill.risk { background: var(--red-bg); color: var(--red-strong); }
#rd-root .pneed .pill.flag { background: var(--alert-bg); color: var(--alert-ink); }
@media (max-width: 1080px) { #rd-root .psum { grid-template-columns: repeat(2, 1fr); } #rd-root .pthead { display: none; } #rd-root .prow { grid-template-columns: 1fr 1fr; gap: 8px 14px; } #rd-root .prow .pready, #rd-root .prow .psup { display: none; } }

#rd-root .cols { display: grid; grid-template-columns: 1.7fr 1fr; gap: var(--grid-gap); margin-top: 20px; align-items: start; }
#rd-root .body-grid { display: grid; grid-template-columns: 1fr var(--rail-col); gap: 24px; align-items: start; }
@media (max-width: 1080px) {
#rd-root .strip { grid-template-columns: 1fr 1fr; }
#rd-root .cols, #rd-root .body-grid { grid-template-columns: 1fr; }
}
/* P1 fix (2026-07-08): hamburger + slide-in drawer replacement nav for <1000px, where .apprail
   (the ONLY navigation in the redesign shell) is hidden below with nothing standing in for it —
   an iPad-portrait (768px) or half-snapped-laptop user previously lost all module navigation.
   Reuses the existing .apprail markup/links as the drawer content instead of duplicating nav. */
#rd-root .rd-menu-btn {
  /* 2026-07-14 WCAG sweep (mobile-375 tap targets): 34x34 -> 44x44. */
  display: none; flex: 0 0 auto; width: 44px; height: 44px; margin-right: 4px;
  border: 1px solid var(--line); border-radius: 8px; background: var(--surface-2);
  color: var(--ink); font-size: 16px; line-height: 1; cursor: pointer;
}
#rd-root .rd-menu-btn:hover { background: var(--fill); }
#rd-root .rd-nav-backdrop {
  display: none; position: fixed; inset: 0; background: rgba(10,14,26,.45); z-index: 10000;
}
@media (max-width: 1000px) {
#rd-root .apprail { display: none; }
#rd-root .page-inner { padding: 20px 16px 60px; }
#rd-root .hdr-right { justify-content: flex-start; }
#rd-root .search { min-width: 0; flex: 1; }
#rd-root .crit-grid { grid-template-columns: 1fr 1fr; }
#rd-root .crit:nth-child(2n) { border-right: 0; }
#rd-root .rd-menu-btn { display: inline-flex; align-items: center; justify-content: center; }
/* Drawer: only .apprail itself needs a position change to become the slide-in panel — its
   existing width/padding/link styles are unchanged, so nav content never has to be duplicated. */
#rd-root.rd-nav-open .apprail {
  display: flex; position: fixed; top: 0; left: 0; height: 100vh; z-index: 10001;
  box-shadow: 12px 0 32px -8px rgba(10,14,26,.35);
}
#rd-root.rd-nav-open .rd-nav-backdrop { display: block; }
}
@media (max-width: 560px) {
#rd-root .strip { grid-template-columns: 1fr; }
#rd-root .crit-grid { grid-template-columns: 1fr; }
#rd-root .crit { border-right: 0; border-bottom: 1px solid var(--line-soft); }
#rd-root .crit:last-child { border-bottom: 0; }
}

/* ============================================================================
   Stage 9-11 faithful rebuilds (2026-06-18): Compliance, Audit Evidence,
   Reports, Settings. Namespaced to avoid the existing .st/.hero/.dose/.pillars.
   Mockup navy #142774 -> locked --accent #2f44d4 (the redesign re-skin rule).
   ============================================================================ */

/* --- KPI tiles (Compliance) --- */
#rd-root .rtiles { display: grid; grid-template-columns: repeat(5, 1fr); gap: 13px; margin-top: 20px; }
#rd-root .rtile { border: 1px solid var(--line); border-radius: 13px; padding: 14px 15px; background: var(--surface-2); }
#rd-root .rtile .n { font-family: var(--font-serif); font-size: 26px; line-height: 1; }
#rd-root .rtile .n.ok { color: var(--ok); } #rd-root .rtile .n.amber { color: var(--alert-ink); } #rd-root .rtile .n.red { color: var(--red); } #rd-root .rtile .n.teal { color: var(--teal-ink); }
#rd-root .rtile .l { font-size: 11.5px; color: var(--label); margin-top: 6px; }
#rd-root .rtile.lead { background: var(--accent); border-color: var(--accent); color: #fff; }
#rd-root .rtile.lead .n { color: #fff; } #rd-root .rtile.lead .l { color: #c9cfe8; }
#rd-root .rtile.lead .tbar { height: 6px; border-radius: 999px; background: rgba(255,255,255,.22); margin-top: 9px; overflow: hidden; }
#rd-root .rtile.lead .tbar i { display: block; height: 100%; background: var(--teal-ink, #067e70); }
@media (max-width: 1000px) { #rd-root .rtiles { grid-template-columns: 1fr 1fr; } }

/* --- section header + data table (Compliance) --- */
#rd-root .rsec { margin-top: 30px; }
#rd-root .rsech { display: flex; align-items: baseline; gap: 10px; margin-bottom: 12px; flex-wrap: wrap; }
#rd-root .rsech h2 { font-family: var(--font-serif); font-weight: 600; font-size: 19px; margin: 0; }
#rd-root .rsech .note { font-size: 12.5px; color: var(--label); }
#rd-root .rsech .note b { color: var(--teal-ink); }
#rd-root .rsech .grow { flex: 1; }
#rd-root .rtbl { width: 100%; border-collapse: collapse; border: 1px solid var(--line); border-radius: 13px; overflow: hidden; }
#rd-root .rtbl th { text-align: left; font-size: 10.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--label); font-weight: 700; padding: 11px 14px; background: var(--surface-2); border-bottom: 1px solid var(--line); }
#rd-root .rtbl th.r, #rd-root .rtbl td.r { text-align: right; }
#rd-root .rtbl td { padding: 12px 14px; border-bottom: 1px solid var(--line-soft); font-size: 13.5px; vertical-align: middle; }
#rd-root .rtbl tr:last-child td { border-bottom: 0; }
#rd-root .rtbl .nm { font-weight: 600; }
#rd-root .rtbl .mt { font-size: 11.5px; color: var(--label); margin-top: 1px; }
#rd-root .rtbl td.amt { font-family: var(--font-serif); font-size: 15px; }
#rd-root .rtbl .act { font-size: 12.5px; font-weight: 600; color: var(--accent); }
#rd-root .rtbl .src { font-size: 10px; color: var(--teal-ink); font-weight: 700; }
#rd-root .tst { font-size: 11.5px; font-weight: 700; padding: 3px 10px; border-radius: 999px; display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
#rd-root .tst.ok { background: var(--ok-bg); color: var(--ok); }
#rd-root .tst.due { background: var(--alert-bg); color: var(--alert-ink); }
#rd-root .tst.over { background: var(--red-bg); color: var(--red); }
#rd-root .tst.na { background: var(--fill); color: var(--label); }
#rd-root .tst.ready { background: var(--teal-soft); color: var(--teal-ink); }
#rd-root .tst.sub { background: var(--accent-soft); color: var(--accent); }

/* --- Audit Evidence: hero, desk pack, walk-up, preview rail --- */
#rd-root .au-hero { display: grid; grid-template-columns: auto 1fr; gap: 24px; align-items: center; margin-top: 18px; border: 1px solid var(--line); border-radius: 16px; background: linear-gradient(180deg, var(--surface-2), var(--bg)); padding: 20px 24px; }
#rd-root .au-hero .ht { font-family: var(--font-serif); font-size: 21px; font-weight: 500; line-height: 1.3; }
#rd-root .au-hero .hs { font-size: 13px; color: var(--ink-2); margin-top: 6px; }
#rd-root .pl-chip { font-size: 11.5px; font-weight: 600; padding: 4px 10px; border-radius: 999px; background: var(--ok-bg); color: var(--ok); }
#rd-root .pl-chip.warn { background: var(--alert-bg); color: var(--alert-ink); }
#rd-root .augrid { display: grid; grid-template-columns: 1fr 360px; gap: 24px; margin-top: 24px; align-items: start; }
#rd-root .rstage { margin-bottom: 26px; }
#rd-root .rstageh { display: flex; align-items: baseline; gap: 11px; margin: 0 2px 13px; flex-wrap: wrap; }
#rd-root .rstageh .num { font-family: var(--font-serif); font-size: 13px; font-weight: 700; color: #fff; background: var(--ink); width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; flex: 0 0 auto; }
#rd-root .rstageh .tt { font-size: 16px; font-weight: 600; }
#rd-root .rstageh .ssub { font-size: 12px; color: var(--label); }
#rd-root .pack { border: 1px solid var(--line); border-radius: 14px; background: var(--bg); overflow: hidden; }
/* Kai inbox 2026-07-05: .pk has 4 children (icon, description, .stt status label, .act
   button) but this template only declared 3 columns — the 4th (the button) had no track
   to land in, so CSS Grid's default auto-flow wrapped it into an IMPLICIT new row reusing
   the same template, landing it back in the first (22px) column: directly under the status
   icon, reading as "the button overlaps the icon". 4 columns for 4 children, one row. */
#rd-root .pk { display: grid; grid-template-columns: 22px 1fr auto auto; gap: 13px; align-items: center; padding: 12px 16px; border-bottom: 1px solid var(--line-soft); }
#rd-root .pk:last-child { border-bottom: 0; }
#rd-root .ck { width: 18px; height: 18px; border-radius: 5px; display: grid; place-items: center; font-size: 11px; flex: 0 0 auto; }
#rd-root .ck.ok { background: var(--ok); color: #fff; }
#rd-root .ck.part { background: var(--alert-bg); border: 1.5px solid var(--alert-line); color: var(--alert-ink); }
#rd-root .ck.gap { background: var(--red-bg); border: 1.5px solid var(--red-line); color: var(--red); }
#rd-root .ck.na { background: var(--fill); color: var(--label); }
#rd-root .pk .doc { font-weight: 600; font-size: 13.5px; }
#rd-root .pk .psrc { font-size: 11.5px; color: var(--label); margin-top: 1px; }
/* Kai inbox #4: the compliance "Mark addressed"/"Undo" buttons live in .pk, but the
   .act button style was scoped only to .qrow — so they rendered as bare grey default
   buttons. Mirror the .qrow .act pill here (same fix pattern as Compass .card .cta). */
#rd-root .pk .act {
  font-family: inherit; font-size: 12.5px; font-weight: 600; padding: 6px 12px;
  border-radius: 7px; border: 1px solid var(--line); background: var(--bg);
  color: var(--ink); cursor: pointer; white-space: nowrap;
}
#rd-root .pk .act:hover { border-color: var(--accent); color: var(--accent); }
#rd-root .stt { font-size: 10.5px; font-weight: 700; letter-spacing: .03em; padding: 2px 9px; border-radius: 6px; white-space: nowrap; }
#rd-root .stt.ok { background: var(--ok-bg); color: var(--ok); }
#rd-root .stt.part { background: var(--alert-bg); color: var(--alert-ink); }
#rd-root .stt.gap { background: var(--red-bg); color: var(--red); }
#rd-root .stt.na { background: var(--fill); color: var(--label); }
#rd-root .packfoot { display: flex; align-items: center; gap: 10px; padding: 14px 16px; background: var(--surface-2); flex-wrap: wrap; }
#rd-root .packfoot .sum { font-size: 12.5px; color: var(--ink-2); }
#rd-root .packfoot .sum b { color: var(--ink); font-weight: 700; }
#rd-root .packfoot .sp { margin-left: auto; display: flex; gap: 8px; flex-wrap: wrap; }
#rd-root .walk { border: 1px solid var(--line); border-radius: 14px; background: var(--bg); padding: 18px; }
#rd-root .walk .wrow { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
#rd-root .fl { font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--label); font-weight: 700; margin-bottom: 5px; }
#rd-root .fld { width: 100%; font-family: inherit; font-size: 13.5px; color: var(--ink); background: var(--bg); border: 1px solid var(--line); border-radius: 9px; padding: 10px 12px; }
#rd-root .hint { font-size: 11.5px; color: var(--label); margin-top: 5px; } #rd-root .hint a { font-weight: 600; }
#rd-root .walk .wa { display: flex; gap: 8px; margin-top: 16px; flex-wrap: wrap; }
#rd-root .previewlabel { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--label); font-weight: 700; margin-bottom: 9px; }
#rd-root .docpaper { background: var(--paper); border: 1px solid #e6e2d6; border-radius: 10px; box-shadow: 0 18px 40px -22px rgba(40,36,20,.45); padding: 28px 26px; position: relative; }
#rd-root .docpaper::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 5px; background: linear-gradient(180deg, var(--accent), var(--accent-hover)); border-radius: 10px 0 0 10px; }
#rd-root .dp-brand { font-size: 10px; letter-spacing: .18em; text-transform: uppercase; color: var(--label); font-weight: 700; }
#rd-root .dp-title { font-family: var(--font-serif); font-size: 23px; font-weight: 600; line-height: 1.2; margin: 14px 0 4px; }
#rd-root .dp-sub { font-size: 12.5px; color: var(--ink-2); }
#rd-root .dp-meta { margin: 18px 0; padding: 14px 0; border-top: 1px solid #e6e2d6; border-bottom: 1px solid #e6e2d6; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 14px; }
#rd-root .dp-meta .k { font-size: 9.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--label); font-weight: 700; }
#rd-root .dp-meta .v { font-size: 13px; font-weight: 600; margin-top: 2px; } #rd-root .dp-meta .v.ok { color: var(--ok); }
#rd-root .dp-contents { font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--label); font-weight: 700; margin-bottom: 9px; }
#rd-root .dp-toc { list-style: none; margin: 0; padding: 0; }
#rd-root .dp-toc li { display: flex; align-items: baseline; gap: 6px; font-size: 12.5px; color: var(--ink-2); padding: 4px 0; }
#rd-root .dp-toc li .t { color: var(--ink); font-weight: 500; }
#rd-root .dp-toc li .dots { flex: 1; border-bottom: 1px dotted #cdc8b8; margin: 0 4px; transform: translateY(-3px); }
#rd-root .dp-seal { display: flex; align-items: center; gap: 9px; margin-top: 18px; padding-top: 14px; border-top: 1px solid #e6e2d6; }
#rd-root .dp-seal .s { width: 34px; height: 34px; border-radius: 50%; border: 2px solid var(--ok); color: var(--ok); display: grid; place-items: center; font-size: 13px; flex: 0 0 auto; }
#rd-root .dp-seal .st2 { font-size: 11px; color: var(--ink-2); line-height: 1.4; } #rd-root .dp-seal .st2 b { color: var(--ink); }
#rd-root .railacts { display: flex; flex-direction: column; gap: 8px; margin-top: 14px; }
#rd-root .railacts .btn { width: 100%; justify-content: center; text-align: center; }
#rd-root .au-results { margin-top: 14px; }

/* --- Reports --- */
#rd-root .repgrid { display: grid; grid-template-columns: 1fr 312px; gap: 22px; margin-top: 24px; align-items: start; }
#rd-root .grouph { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--label); font-weight: 700; margin: 6px 2px 11px; }
#rd-root .grouph.first { margin-top: 0; }
#rd-root .rcards { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; margin-bottom: 22px; }
#rd-root .rep { border: 1px solid var(--line); border-radius: 13px; background: var(--bg); padding: 15px 16px; display: flex; flex-direction: column; }
#rd-root .rep.feature { grid-column: 1 / -1; border-color: var(--accent-line); background: linear-gradient(180deg, var(--surface-2), var(--bg)); }
#rd-root .rep .rh { display: flex; align-items: center; gap: 9px; }
#rd-root .rep .ic { width: 30px; height: 30px; border-radius: 8px; background: var(--accent-soft); color: var(--accent); display: grid; place-items: center; font-size: 14px; flex: 0 0 auto; }
#rd-root .rep .rnm { font-weight: 600; font-size: 14.5px; }
#rd-root .rep .pro { margin-left: auto; font-size: 9.5px; font-weight: 700; letter-spacing: .06em; color: var(--accent); background: var(--accent-soft); padding: 2px 7px; border-radius: 5px; }
#rd-root .rep .ds { font-size: 12.5px; color: var(--ink-2); line-height: 1.5; margin: 9px 0 12px; }
#rd-root .rep .ds b { color: var(--ink); font-weight: 600; }
#rd-root .rep .inputs { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 12px; }
#rd-root .sel { font-family: inherit; font-size: 12.5px; color: var(--ink-2); background: var(--bg); border: 1px solid var(--line); border-radius: 8px; padding: 7px 11px; flex: 1; min-width: 120px; }
#rd-root .rep .ra { display: flex; gap: 8px; margin-top: auto; flex-wrap: wrap; }
#rd-root .whatsin { font-size: 11px; color: var(--label); margin-top: 10px; } #rd-root .whatsin b { color: var(--ink-2); font-weight: 600; }
#rd-root .linkrow { display: flex; align-items: center; gap: 9px; border: 1px dashed var(--line); border-radius: 11px; padding: 12px 15px; background: var(--surface-2); grid-column: 1 / -1; }
#rd-root .linkrow .t { font-size: 13px; font-weight: 600; } #rd-root .linkrow .s { font-size: 12px; color: var(--label); }
#rd-root .linkrow a { margin-left: auto; font-weight: 600; font-size: 12.5px; white-space: nowrap; }
#rd-root .rbox { border: 1px solid var(--line); border-radius: 13px; background: var(--bg); padding: 15px 16px; margin-bottom: 16px; }
#rd-root .bh { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--label); font-weight: 700; }
#rd-root .prov { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 8px; }
#rd-root .prov span { font-size: 11px; font-weight: 600; background: var(--fill); color: var(--ink-2); border-radius: 999px; padding: 3px 9px; }
@media (max-width: 1080px) { #rd-root .repgrid { grid-template-columns: 1fr; } #rd-root .augrid { grid-template-columns: 1fr; } }
@media (max-width: 680px) { #rd-root .rcards { grid-template-columns: 1fr; } }

/* --- Settings --- */
#rd-root .setgrid { display: grid; grid-template-columns: 232px 1fr; gap: 22px; margin-top: 18px; align-items: start; }
#rd-root .setnav { border: 1px solid var(--line); border-radius: 13px; background: var(--surface-2); padding: 8px; position: sticky; top: 18px; }
#rd-root .setnav button { width: 100%; text-align: left; font-family: inherit; font-size: 13.5px; color: var(--ink-2); background: transparent; border: 0; border-radius: 8px; padding: 9px 11px; cursor: pointer; display: flex; align-items: center; gap: 10px; }
#rd-root .setnav button:hover { background: var(--fill); }
#rd-root .setnav button.on { background: var(--accent); color: #fff; font-weight: 600; }
#rd-root .setnav button .ext { margin-left: auto; font-size: 10px; color: var(--label-soft); }
#rd-root .setnav button.on .ext { color: #c9cfe8; }
#rd-root .setsech { font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--label); font-weight: 700; margin: 22px 0 4px; }
#rd-root .setsech:first-child { margin-top: 0; }
#rd-root .setrow { display: flex; align-items: center; gap: 16px; padding: 15px 0; border-bottom: 1px solid var(--line-soft); flex-wrap: wrap; }
#rd-root .setrow:last-child { border-bottom: 0; }
#rd-root .setrow .k { font-size: 14px; font-weight: 500; }
#rd-root .setrow .k small { display: block; font-size: 12px; color: var(--label); font-weight: 400; margin-top: 2px; }
#rd-root .setrow .v { margin-left: auto; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
#rd-root .inp { font-family: inherit; font-size: 13.5px; color: var(--ink); background: var(--bg); border: 1px solid var(--line); border-radius: 8px; padding: 8px 12px; min-width: 230px; }
#rd-root .seg { display: flex; border: 1px solid var(--line); border-radius: 9px; overflow: hidden; }
#rd-root .seg span { padding: 7px 11px; font-size: 12.5px; color: var(--label); cursor: pointer; }
#rd-root .seg span.on { background: var(--fill); color: var(--ink); font-weight: 600; }
#rd-root .planpill { font-size: 11px; font-weight: 700; color: var(--ok); background: var(--ok-bg); padding: 2px 9px; border-radius: 6px; }
#rd-root .appbadge { height: 36px; min-width: 118px; background: #111; border-radius: 7px; display: grid; place-items: center; color: #fff; font-size: 11px; font-weight: 600; padding: 0 12px; }
#rd-root .appbadges { display: flex; gap: 10px; flex-wrap: wrap; }
@media (max-width: 860px) { #rd-root .setgrid { grid-template-columns: 1fr; } #rd-root .setnav { position: static; } }
@media (max-width: 560px) { #rd-root .rtiles { grid-template-columns: 1fr; } #rd-root .inp { min-width: 0; width: 100%; } }

/* Journal insights — the tag-built care picture (value-triangle payoff): the categories
   Kai confirms roll up into "what the journal shows", each a click-to-filter chip. */
#rd-root .jinsights:empty { display: none; }
#rd-root .jinsights { margin: 2px 0 14px; }
#rd-root .jins-h { font-size: 10.5px; letter-spacing: .05em; text-transform: uppercase; color: var(--label); font-weight: 700; margin-bottom: 8px; }
#rd-root .jins-chips { display: flex; flex-wrap: wrap; gap: 7px; }
#rd-root .jins-chip { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 600; font-family: inherit; color: var(--ink-2); background: var(--bg); border: 1px solid var(--line); border-radius: 999px; padding: 5px 12px; cursor: pointer; transition: background .12s, border-color .12s; }
#rd-root .jins-chip:hover { border-color: var(--accent-line); }
#rd-root .jins-chip b { font-weight: 800; color: var(--ink); }
#rd-root .jins-chip.on { background: var(--accent); border-color: var(--accent); color: #fff; }
#rd-root .jins-chip.on b { color: #fff; }
#rd-root .jins-chip.all { color: var(--label); }
#rd-root .jins-chip.all.on { background: var(--ink); border-color: var(--ink); color: #fff; }
#rd-root .jins-chip.att { background: var(--red-bg); border-color: var(--red-line); color: var(--red-strong); }
#rd-root .jins-chip.att b { color: var(--red-strong); }
#rd-root .jins-chip.att.on { background: var(--red-strong); border-color: var(--red-strong); color: #fff; }
#rd-root .jins-chip.att.on b { color: #fff; }

/* ── Tags across Aura — shared surfaces (Today band · participant snapshot · report breakdown · audit packs · incident suggestions) ── */
/* Lens dot colours at #rd-root scope (the journal chipCss versions are scoped to #rd-jrn-stream only). */
#rd-root .rd-lens-how { --rd-lens:#2c4a3e; }
#rd-root .rd-lens-did { --rd-lens:var(--accent); }
#rd-root .rd-lens-att { --rd-lens:#6a2fae; }
#rd-root .rd-dot { width:9px; height:9px; border-radius:3px; background:var(--rd-lens,var(--accent)); flex:0 0 auto; display:inline-block; }

/* Today — "From the journal" attention band (reuses .panel/.qrow) */
#rd-root section.jattn .jattn-card { margin:0 0 16px; }
#rd-root .jattn-card .sub { margin:2px 0 10px; font-size:12.5px; color:var(--label); }

/* Participant profile — Journal-insights snapshot */
#rd-root .pp-tagsnap { margin:4px 0 2px; }
#rd-root .pp-tagsnap-sub { font-size:12.5px; color:var(--label); margin:0 0 9px; }
#rd-root .pp-tags-row { display:flex; flex-wrap:wrap; gap:7px; }
#rd-root .pp-tag { display:inline-flex; align-items:center; gap:7px; font-size:12.5px; font-weight:600; font-family:inherit; color:var(--ink-2); background:var(--bg); border:1px solid var(--line); border-radius:999px; padding:5px 12px; cursor:pointer; }
#rd-root .pp-tag::before { content:''; width:8px; height:8px; border-radius:3px; background:var(--rd-lens,var(--accent)); flex:0 0 auto; }
#rd-root .pp-tag:hover { border-color:var(--accent-line); }
#rd-root .pp-tag b { font-weight:800; color:var(--ink); }
#rd-root .pp-tag.att { background:var(--red-bg); border-color:var(--red-line); color:var(--red-strong); }
#rd-root .pp-tag.att::before { background:var(--red-strong); }
#rd-root .pp-tag.att b { color:var(--red-strong); }

/* Reports — outcome breakdown (the network-facing picture) */
#rd-root .rep-tags { margin:14px 0 4px; }
#rd-root .rep-th { font-size:11px; letter-spacing:.04em; text-transform:uppercase; color:var(--label); font-weight:700; margin-bottom:9px; }
#rd-root .rep-trow { display:flex; align-items:center; gap:10px; margin:7px 0; font-size:13px; }
#rd-root .rep-trow .rep-tl { flex:0 0 150px; color:var(--ink-2); }
#rd-root .rep-trow .rep-tbar { flex:1; height:8px; background:var(--fill); border-radius:5px; overflow:hidden; }
#rd-root .rep-trow .rep-tbar i { display:block; height:100%; background:var(--rd-lens,var(--accent)); border-radius:5px; }
#rd-root .rep-trow b { flex:0 0 auto; min-width:22px; text-align:right; font-weight:800; }
#rd-root .rep-att { margin:10px 0 0; font-size:12.5px; font-weight:600; color:var(--red-strong); background:var(--red-bg); border:1px solid var(--red-line); border-radius:8px; padding:7px 10px; }
#rd-root .rep-prov { margin:12px 0 0; font-size:11.5px; color:var(--label); line-height:1.45; }

/* Audit Evidence — Stage 3 packs by Practice Standard */
#rd-root .ae-head { font-size:13.5px; color:var(--ink-2); margin:14px 0 12px; }
#rd-root .ae-std { border:1px solid var(--line); border-radius:10px; padding:12px 14px; margin:10px 0; background:var(--bg); }
#rd-root .ae-std.empty { background:var(--fill); border-style:dashed; }
#rd-root .ae-stdh { display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin-bottom:8px; }
#rd-root .ae-stdn { font-family:var(--font-serif); font-size:15px; color:var(--ink); }
#rd-root .ae-cnt { font-size:11.5px; font-weight:700; color:var(--label); }
#rd-root .ae-fills { font-size:12px; color:var(--label); }
#rd-root .ae-note { display:flex; gap:10px; padding:6px 0; border-top:1px solid var(--line-soft); font-size:13px; }
#rd-root .ae-note .ae-d { flex:0 0 80px; color:var(--label); font-size:12px; }
#rd-root .ae-note .ae-b { color:var(--ink-2); }
#rd-root .ae-att { color:var(--red-strong); font-weight:600; white-space:nowrap; }
/* WPK1 fix (CHANGES-REQUESTED 2026-07-13) - a flagged note that has since been closed (acknowledged
   or raised as an incident) still needs to read as evidence of action, not vanish or look like a
   still-open alert - so this gets the "closed" tick colour, not the open-alert red, and wraps since
   it can carry the acknowledgement note text. */
#rd-root .ae-att-closed { color:var(--ok); font-weight:600; }
#rd-root .ae-more { font-size:12px; color:var(--label); padding-top:7px; }
#rd-root .ae-prov { margin:14px 0 0; font-size:11.5px; color:var(--label); line-height:1.45; }
#rd-root .ae-also { font-size:11px; color:var(--label); margin-top:3px; }
#rd-root .ae-note.ae-xref .ae-b { color:var(--label); font-size:12.5px; }
#rd-root .ae-xtag { font-size:11px; font-weight:600; color:var(--accent); white-space:nowrap; }

/* Incidents — suggested from the journal (confirm-only) */
#rd-root .inc-suggest .sub { font-size:12px; color:var(--label); margin:2px 0 12px; line-height:1.45; }
#rd-root .inc-sugg { border-top:1px solid var(--line-soft); padding:11px 0; }
#rd-root .inc-sugg:first-of-type { border-top:0; }
#rd-root .inc-sugg .is-who { font-size:13px; font-weight:600; color:var(--ink); }
#rd-root .inc-sugg .is-d { font-weight:500; color:var(--label); }
#rd-root .inc-sugg .is-snip { font-size:12.5px; color:var(--ink-2); margin:3px 0 8px; }
#rd-root .inc-sugg .is-acts { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
#rd-root .inc-sugg .is-dismiss { font-size:12px; color:var(--label); }
