/*
Theme Name:  Register
Theme URI:   https://rileylocke.net
Description: The Locke Record's reader surface. Child theme of the rileylocke parent — v2.0 implements the full mockup-approved design system: ledger rules, the R.L. mark, tier glyphs, one pill grammar, receipts on every result.
Author:      Riley Locke Publications
Template:    rileylocke
Version:     2.18.4
Text Domain: register
*/

/* ==========================================================================
   TOKENS
   ========================================================================== */
:root{
	--rg-paper:#F7F6F3; --rg-paper-2:#EFEDE8; --rg-ink:#141519; --rg-ink-2:#3B3D44;
	--rg-ink-3:#6C6F78; --rg-rule:#D6D4CE; --rg-house:#26303C; --rg-romance:#7A2233;
	--rg-good:#2E6F52; --rg-machine:#9A6B12; --rg-data:#1F4E5F;
	--rg-display:'Fraunces',Georgia,serif; --rg-body:'Literata',Georgia,serif;
	--rg-ui:'IBM Plex Sans',system-ui,sans-serif; --rg-mono:'IBM Plex Mono',ui-monospace,monospace;
}
.rg *{box-sizing:border-box}
.rg{background:var(--rg-paper);color:var(--rg-ink);font-family:var(--rg-body);
	font-size:18px;line-height:1.7;-webkit-font-smoothing:antialiased}
.rg a{color:inherit}
.rg :focus-visible{outline:3px solid var(--rg-romance);outline-offset:2px;border-radius:3px}
.rg-wrap{max-width:920px;margin:0 auto;padding:0 22px}
.rg-wrap-n{max-width:780px;margin:0 auto;padding:0 22px}
.rg-eyebrow{font-family:var(--rg-ui);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;
	font-weight:600;color:var(--rg-ink-3)}
.rg-ledger{border:0;border-top:1px solid var(--rg-ink);height:3px;border-bottom:1px solid var(--rg-ink);
	background:none;margin:44px 0 0;opacity:.85}

/* ==========================================================================
   CHROME — nav + footer (header.php / footer.php)
   ========================================================================== */
.rgh{background:var(--rg-house);font-family:var(--rg-ui)}
.rgh-in{max-width:1080px;margin:0 auto;padding:15px 22px;display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.rgh-brand{font-family:var(--rg-display);font-weight:500;font-size:20px;color:#fff;text-decoration:none;white-space:nowrap}
.rgh a.rgh-link{color:#AFBCC7;text-decoration:none;font-size:15px;white-space:nowrap;padding:6px 0}
.rgh a.rgh-link:hover{color:#fff}
.rgh-search{flex:1;display:flex;background:rgba(255,255,255,.1);border:1px solid #56687A;border-radius:99px;
	padding:0 6px 0 16px;align-items:center;max-width:320px;margin-left:auto}
.rgh-search input{border:0;outline:0;background:none;color:#fff;font-family:var(--rg-ui);font-size:14px;padding:9px 0;flex:1;min-width:0}
.rgh-search input::placeholder{color:#8FA3B5}
.rgh-search button{border:0;background:none;color:#8FA3B5;font-size:15px;padding:4px 8px;cursor:pointer}
.rgh-shelf{border:1px solid #56687A;padding:9px 17px;color:#fff !important;font-size:14px;border-radius:2px;text-decoration:none;white-space:nowrap}
@media(max-width:820px){.rgh-search{display:none}}
.rg-skip{position:absolute;left:-9999px}.rg-skip:focus{position:static;padding:8px;background:#fff}

.rgf{background:var(--rg-house);color:#AFBCC7;font-family:var(--rg-ui);margin-top:56px}
.rgf-in{max-width:1080px;margin:0 auto;padding:30px 22px 34px;display:flex;gap:22px;flex-wrap:wrap;align-items:baseline;font-size:14px}
.rgf a{color:#AFBCC7;text-decoration:none}
.rgf a:hover{color:#fff}
.rgf .rgf-line{margin-left:auto;color:#8FA3B5}

/* ==========================================================================
   MASTHEADS
   ========================================================================== */
.rg-mast{background:var(--rg-house);color:#DDE3E9;padding:48px 0 44px}
.rg-mast .rg-eyebrow{color:#8FA3B5}
.rg-mast .rg-eyebrow a{color:#8FA3B5;text-decoration:none}
.rg-mast h1{font-family:var(--rg-display);font-weight:500;letter-spacing:-.028em;
	font-size:clamp(30px,4.8vw,46px);line-height:1.1;color:#fff;margin:10px 0 12px;max-width:24ch}
.rg-mast h1.rg-big{font-size:clamp(34px,5.4vw,56px);line-height:1.06;letter-spacing:-.03em;max-width:18ch}
.rg-mast .rg-lede{color:#AFBCC7;font-family:var(--rg-ui);font-size:16.5px;max-width:60ch;margin:0}
.rg-mast .rg-statline{display:flex;gap:22px;flex-wrap:wrap;font-family:var(--rg-ui);font-size:14.5px;color:#AFBCC7;margin-top:4px}
.rg-mast .rg-statline b{color:#fff;font-family:var(--rg-mono);font-size:16px}
.rg-mastacts{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}
.rg-overhang{padding-bottom:74px}

/* ==========================================================================
   TYPE BLOCKS
   ========================================================================== */
.rg-h2{font-family:var(--rg-display);font-weight:500;letter-spacing:-.02em;font-size:27px;margin:36px 0 8px}
.rg-h2 small{font-family:var(--rg-ui);font-size:12.5px;color:var(--rg-ink-3);font-weight:400;margin-left:9px}
.rg-secthead{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin:40px 0 16px}
.rg-secthead h2{font-family:var(--rg-display);font-weight:500;font-size:28px;letter-spacing:-.02em;margin:0}
.rg-secthead .rg-more{margin-left:auto;font-family:var(--rg-ui);font-size:14px;color:var(--rg-ink-2)}
.rg-note{color:var(--rg-ink-3);font-family:var(--rg-ui);font-size:14.5px;margin:0 0 14px;max-width:76ch;line-height:1.6}
.rg-prose{max-width:66ch;font-size:19px;line-height:1.75}
.rg-prose p{margin:0 0 20px}
.rg-dropcap p:first-of-type::first-letter{font-family:var(--rg-display);font-weight:500;font-size:62px;
	line-height:.82;float:left;padding:6px 12px 0 0;color:var(--rg-romance)}
.rg-pull{border-left:3px solid var(--rg-romance);background:#fff;padding:18px 24px;margin:28px 0;
	font-family:var(--rg-display);font-style:italic;font-size:21px;line-height:1.5;max-width:60ch}
.rg-pull .rg-eyebrow{font-style:normal;color:var(--rg-romance);display:block;margin-bottom:6px}
.rg-empty{border:1px dashed var(--rg-rule);padding:18px 22px;font-family:var(--rg-ui);font-size:15px;
	color:var(--rg-ink-3);max-width:78ch;line-height:1.6}
.rg-provfoot{border-top:1px solid var(--rg-rule);margin:36px 0 0;padding:18px 0 52px;
	font-family:var(--rg-ui);font-size:13.5px;color:var(--rg-ink-3);max-width:78ch;line-height:1.65}

/* ==========================================================================
   BUTTONS / PILLS / GLYPHS / THE MARK
   ========================================================================== */
.rg-btn{display:inline-block;font-family:var(--rg-ui);font-size:14px;font-weight:600;text-decoration:none;
	padding:12px 20px;border:1px solid var(--rg-house);border-radius:3px;color:var(--rg-house);cursor:pointer;background:none}
.rg-btn-primary{background:var(--rg-house);border-color:var(--rg-house);color:#fff}
.rg-btn-primary:hover{background:#314052}
.rg-btn-light{background:#fff;border-color:#fff;color:var(--rg-house)}
.rg-btn-linewhite{border-color:#56687A;color:#fff}
.rg-btn-ghost{border-color:var(--rg-rule);color:var(--rg-ink-2);font-weight:400}
.rg-cta{font-family:var(--rg-ui);font-weight:600;font-size:15.5px;background:#fff;color:var(--rg-house);
	text-decoration:none;padding:14px 26px;border-radius:99px;display:inline-block}
.rg-start{font-family:var(--rg-ui);font-size:14px;color:#fff;text-decoration:none;padding:11px 18px;
	border:1px solid #56687A;border-radius:99px;transition:.12s;display:inline-block}
.rg-start:hover{border-color:#fff;background:rgba(255,255,255,.06)}
.rg-start b{color:#F0DFE3;font-weight:600}

.rg-pill{font-family:var(--rg-ui);font-size:14.5px;padding:10px 17px;border:1px solid var(--rg-rule);
	border-radius:99px;background:#fff;text-decoration:none;transition:.12s;display:inline-flex;
	align-items:center;color:var(--rg-ink);cursor:pointer;user-select:none}
.rg-pill:hover{border-color:var(--rg-romance);box-shadow:0 1px 4px rgba(122,34,51,.14)}
.rg-pill.rg-on{background:var(--rg-romance);border-color:var(--rg-romance);color:#fff}
.rg-pill.rg-on::before{content:"✓ ";font-weight:600;margin-right:2px}
.rg-pill.rg-ex.rg-on{background:var(--rg-ink);border-color:var(--rg-ink)}
.rg-pill.rg-ex.rg-on::before{content:"✕ "}
.rg-pill.rg-dim{color:var(--rg-ink-3);background:transparent}
.rg-pill .rg-cnt{font-family:var(--rg-mono);font-size:11px;color:#fff;background:var(--rg-romance);
	border-radius:99px;padding:2px 8px;margin-left:8px}
.rg-pill.rg-on .rg-cnt{background:rgba(255,255,255,.22)}
.rg-pillrow{display:flex;gap:9px;flex-wrap:wrap}

.rg-glyph{font-family:var(--rg-ui);font-size:11px;font-weight:700;margin-left:7px}
.rg-gA{color:var(--rg-good)}.rg-gB{color:#3E5B75}.rg-gD{color:var(--rg-machine)}
.rg-legend{font-family:var(--rg-ui);font-size:12.5px;color:var(--rg-ink-3)}
.rg-legend b{font-weight:700}
.rg-mark{width:24px;height:24px;border:1.5px solid var(--rg-romance);border-radius:50%;color:var(--rg-romance);
	font-family:var(--rg-display);font-size:9.5px;font-weight:600;display:inline-flex;align-items:center;
	justify-content:center;letter-spacing:.02em;flex-shrink:0;font-style:normal}

/* ==========================================================================
   CHIPS · RECEIPTS · CLAIMS · SIGNATURES
   ========================================================================== */
.rg-chip{display:inline-block;font-family:var(--rg-mono);font-size:12.5px;padding:5px 11px;background:var(--rg-paper);
	border:1px solid var(--rg-rule);border-radius:3px;margin:0 6px 7px 0}
.rg-chip b{font-weight:600}
.rg-chip-dk{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#DDE3E9}
.rg-chip-dk b{color:#fff}
.rg-str{font-family:var(--rg-ui);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;font-weight:600;
	padding:3px 9px;border-radius:2px}
.rg-str-lb{background:#F0DFE3;color:var(--rg-romance)}
.rg-str-pr{background:var(--rg-paper-2);color:var(--rg-ink-2)}
.rg-str-po{background:#F1E7D2;color:var(--rg-machine)}
.rg-receipt{border-left:3px solid var(--rg-romance);padding:3px 2px 3px 14px;margin:0 0 12px}
.rg-receipt p{font-size:15.5px;line-height:1.6;margin:6px 0 0;max-width:62ch}
.rg-sig{font-family:var(--rg-ui);font-size:12.5px;color:var(--rg-ink-3);display:flex;align-items:center;gap:8px;margin-top:8px}
.rg-spoiler{filter:blur(5px);cursor:pointer;user-select:none}
.rg-spoiler.rg-shown{filter:none;cursor:auto}
.rg-skip{font-family:var(--rg-ui);font-size:13px;color:var(--rg-machine);border:1px dashed #D9C08A;background:#FBF6EA;
	border-radius:3px;padding:9px 13px;margin:0 0 12px;max-width:62ch}
.rg-skip b{text-transform:uppercase;font-size:10px;letter-spacing:.08em}
.rg-claim{background:#fff;border:1px solid var(--rg-rule);border-radius:4px;padding:15px 19px;margin-bottom:10px;max-width:78ch}
.rg-claim .rg-bk{font-family:var(--rg-display);font-weight:500;font-size:18.5px}
.rg-claim .rg-bk a{text-decoration:none}
.rg-claim .rg-bk a:hover{text-decoration:underline}
.rg-claim p{font-size:15.5px;line-height:1.6;margin:5px 0 0;max-width:66ch}
.rg-strhead{display:flex;align-items:center;gap:12px;margin:26px 0 12px;flex-wrap:wrap}
.rg-strhead .rg-why{font-family:var(--rg-ui);font-size:13px;color:var(--rg-ink-3)}

/* ==========================================================================
   COVERS — the intentional placeholder
   ========================================================================== */
.rg-cover{border-radius:2px 3px 3px 2px;flex-shrink:0;position:relative;background:var(--rg-paper);
	border:1px solid var(--rg-rule);box-shadow:0 6px 12px -4px rgba(20,21,25,.28);
	display:flex;align-items:center;justify-content:center;overflow:hidden;text-decoration:none}
.rg-cover::before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--rg-romance);z-index:1}
.rg-cover img{width:100%;height:100%;object-fit:cover;display:block}
.rg-cover i{font-style:normal;font-family:var(--rg-display);font-weight:500;font-size:12px;line-height:1.25;
	writing-mode:vertical-rl;transform:rotate(180deg);color:var(--rg-ink-2);max-height:82%;overflow:hidden;text-align:center;padding:8px 0}
.rg-cov-lg{width:124px;height:186px}
.rg-cov-md{width:88px;height:132px}
.rg-cov-sm{width:72px;height:108px}
.rg-cov-xs{width:56px;height:84px}

/* ==========================================================================
   CARDS · RESULTS · SHELF ROWS
   ========================================================================== */
.rg-card{background:#fff;border:1px solid var(--rg-rule);border-radius:4px;padding:16px 18px;margin-bottom:11px;max-width:78ch}
.rg-card h3{font-family:var(--rg-display);font-weight:500;font-size:19px;margin:0 0 3px}
.rg-card h3 a{text-decoration:none}
.rg-card h3 a:hover{text-decoration:underline}
.rg-card .rg-cardnote{font-family:var(--rg-ui);font-size:14px;color:var(--rg-ink-2);margin:0;max-width:62ch}
.rg-result{display:flex;gap:20px;background:#fff;border:1px solid var(--rg-rule);border-radius:4px;padding:20px;margin-bottom:16px}
.rg-result h3{font-family:var(--rg-display);font-weight:500;font-size:22px;line-height:1.2;margin:0 0 2px}
.rg-result h3 a{text-decoration:none}
.rg-result h3 a:hover{text-decoration:underline}
.rg-result h3 mark{background:#F0DFE3;color:inherit;padding:0 2px;border-radius:2px}
.rg-byline{font-family:var(--rg-ui);font-size:14px;color:var(--rg-ink-3);margin:0 0 10px}
.rg-acts{display:flex;gap:9px;flex-wrap:wrap;margin-top:2px}
.rg-act{font-family:var(--rg-ui);font-size:13.5px;font-weight:600;text-decoration:none;padding:10px 17px;
	border-radius:3px;border:1px solid var(--rg-house);color:var(--rg-house)}
.rg-act.rg-primary{background:var(--rg-house);color:#fff}
.rg-act.rg-ghost{border-color:var(--rg-rule);color:var(--rg-ink-2);font-weight:400}
.rg-shelfrow{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}
.rg-bkcard{background:#fff;border:1px solid var(--rg-rule);border-radius:4px;padding:16px;text-decoration:none;transition:.12s;display:block}
.rg-bkcard:hover{border-color:var(--rg-romance);box-shadow:0 3px 14px rgba(122,34,51,.12)}
.rg-bkcard h3{font-family:var(--rg-display);font-weight:500;font-size:18.5px;line-height:1.22;margin:12px 0 2px}
.rg-bkcard .rg-a{font-family:var(--rg-ui);font-size:12.5px;color:var(--rg-ink-3);margin:0 0 9px}
.rg-bkcard .rg-cl{font-family:var(--rg-ui);font-size:12.5px;color:var(--rg-ink-2);border-left:2px solid var(--rg-romance);
	padding-left:9px;margin:0;line-height:1.5}
.rg-bkcard .rg-cl b{font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--rg-romance);display:block;font-weight:600}

/* ==========================================================================
   HOMEPAGE — strip, today, standard
   ========================================================================== */
.rg-strip{background:var(--rg-paper);border-bottom:1px solid var(--rg-rule)}
.rg-strip-in{max-width:980px;margin:0 auto;display:flex;gap:34px;flex-wrap:wrap;padding:16px 22px;
	font-family:var(--rg-ui);font-size:13px;color:var(--rg-ink-3)}
.rg-strip b{font-family:var(--rg-mono);font-size:17px;color:var(--rg-ink);margin-right:7px}
.rg-strip .rg-lawline{margin-left:auto}
.rg-strip .rg-lawline i{font-style:normal;color:var(--rg-romance);font-weight:600}
.rg-today{background:#fff;border:1px solid var(--rg-rule);border-radius:4px;margin-top:44px;padding:30px 34px;position:relative}
.rg-today::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--rg-romance);border-radius:4px 4px 0 0}
.rg-today .rg-eyebrow{color:var(--rg-romance)}
.rg-today .rg-q{font-family:var(--rg-display);font-size:clamp(20px,2.8vw,26px);line-height:1.42;letter-spacing:-.015em;margin:12px 0 14px;max-width:34ch}
.rg-today .rg-about{font-family:var(--rg-ui);font-size:14.5px;color:var(--rg-ink-2);max-width:74ch}
.rg-today .rg-about a{font-weight:600}
.rg-standard{background:var(--rg-house);color:#DDE3E9;margin-top:52px;padding:40px 0 44px}
.rg-standard .rg-eyebrow{color:#8FA3B5}
.rg-standard h2{font-family:var(--rg-display);font-weight:500;font-size:29px;letter-spacing:-.02em;color:#fff;margin:8px 0 20px}
.rg-laws{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;font-family:var(--rg-ui)}
.rg-law{border-top:2px solid #56687A;padding-top:12px}
.rg-law b{color:#fff;font-size:15px;display:block;margin-bottom:4px}
.rg-law span{color:#AFBCC7;font-size:13.5px;line-height:1.55;display:block}
.rg-methods{display:flex;gap:22px;flex-wrap:wrap;margin-top:26px;font-family:var(--rg-ui);font-size:13px;color:#AFBCC7}
.rg-methods b{font-weight:700;margin-right:6px}
.rg-mA{color:#7FCBA4}.rg-mB{color:#9DB8D2}.rg-mD{color:#D9B36A}
.rg-doors{border-top:1px solid var(--rg-rule);margin-top:44px;padding:22px 0 6px;font-family:var(--rg-ui);
	font-size:14px;color:var(--rg-ink-2);display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.rg-doors a{font-weight:600}
.rg-doors .rg-lic{margin-left:auto;color:var(--rg-ink-3);font-size:13px}

/* ==========================================================================
   DISCOVER — panel, chips, sticky
   ========================================================================== */
.rg-panel{background:var(--rg-paper-2);border:1px solid var(--rg-rule);border-radius:5px;margin:-44px 0 8px;
	padding:20px 22px 16px;position:relative}
.rg-rowlabel{font-family:var(--rg-ui);font-size:12px;letter-spacing:.12em;text-transform:uppercase;
	font-weight:600;color:var(--rg-ink-3);margin-bottom:10px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.rg-seg{display:inline-flex;border:1px solid var(--rg-rule);border-radius:99px;background:#fff;overflow:hidden;
	font-family:var(--rg-ui);font-size:12.5px;text-transform:none;letter-spacing:0;font-weight:500}
.rg-seg a,.rg-seg button{border:0;background:none;padding:6px 14px;cursor:pointer;font:inherit;color:var(--rg-ink-3);text-decoration:none;display:inline-block}
.rg-seg .rg-on{background:var(--rg-ink);color:#fff}
.rg-seg.rg-wine .rg-on{background:var(--rg-romance)}
.rg-morebtn{font-family:var(--rg-ui);font-size:14px;color:var(--rg-ink-2);background:none;border:0;cursor:pointer;
	padding:8px 0;display:flex;gap:8px;align-items:center;font-weight:600}
.rg-morebtn .rg-car{transition:.15s;display:inline-block}
.rg-morebtn[aria-expanded="true"] .rg-car{transform:rotate(90deg)}
.rg-morebox{display:none;border-top:1px dashed var(--rg-rule);padding-top:16px;margin-top:6px}
.rg-morebox.rg-open{display:block}
.rg-selects{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.rg-selects label{display:flex;flex-direction:column;gap:5px;font-family:var(--rg-ui);font-size:12px;
	letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--rg-ink-3)}
.rg-selects select{font-family:var(--rg-ui);font-size:15px;padding:10px 12px;border:1px solid var(--rg-rule);
	border-radius:3px;min-width:150px;background:#fff;text-transform:none;letter-spacing:0;font-weight:400}
.rg-selects select:disabled{border-style:dashed;color:var(--rg-ink-3);background:var(--rg-paper)}
.rg-panelfoot{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding-top:8px}
.rg-go{background:var(--rg-house);color:#fff;border:0;border-radius:3px;font-family:var(--rg-ui);
	font-weight:600;font-size:15.5px;padding:14px 28px;cursor:pointer;margin-left:auto}
.rg-go:hover{background:#314052}
.rg-applied{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:18px 0 6px;font-family:var(--rg-ui)}
.rg-chiplet{font-size:13px;background:#fff;border:1px solid var(--rg-rule);border-radius:99px;padding:6px 13px;text-decoration:none}
.rg-chiplet:hover{border-color:var(--rg-romance);text-decoration:line-through}
.rg-chiplet.rg-lbc{background:#F0DFE3;border-color:#E4C6CD;color:var(--rg-romance);font-weight:600}
.rg-clear{font-size:12.5px;color:var(--rg-ink-3);text-decoration:underline}
.rg-resulthead{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin:10px 0 18px}
.rg-resulthead h2{font-family:var(--rg-display);font-weight:500;font-size:32px;letter-spacing:-.02em;margin:0}
.rg-resulthead h2 em{font-style:normal;color:var(--rg-romance)}
.rg-sticky{position:fixed;top:0;left:0;right:0;background:var(--rg-house);color:#fff;font-family:var(--rg-ui);
	font-size:14px;padding:11px 22px;display:none;align-items:center;gap:14px;z-index:50;box-shadow:0 4px 16px rgba(20,21,25,.3)}
.rg-sticky.rg-show{display:flex}
.rg-sticky button{margin-left:auto;background:#fff;color:var(--rg-house);border:0;border-radius:99px;
	font-family:var(--rg-ui);font-weight:600;font-size:13px;padding:8px 18px;cursor:pointer}
.rg-cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:8px}
.rg-cat{background:#fff;border:1px solid var(--rg-rule);border-radius:4px;padding:16px 18px;text-decoration:none;transition:.12s}
.rg-cat:hover{border-color:var(--rg-romance);box-shadow:0 2px 10px rgba(122,34,51,.1)}
.rg-cat b{font-family:var(--rg-display);font-weight:500;font-size:18px;display:block}
.rg-cat span{font-family:var(--rg-ui);font-size:12.5px;color:var(--rg-ink-3)}

/* ==========================================================================
   ENCYCLOPEDIA — finder, jumps, classes
   ========================================================================== */
.rg-finder{display:flex;gap:12px;align-items:center;background:#fff;border-radius:99px;padding:7px 7px 7px 22px;
	margin:-30px 0 10px;box-shadow:0 12px 32px rgba(20,21,25,.16);position:relative}
.rg-finder input{border:0;outline:0;flex:1;font-family:var(--rg-ui);font-size:17px;padding:12px 0;background:none;min-width:0}
.rg-finder .rg-n{font-family:var(--rg-mono);font-size:12px;color:var(--rg-ink-3);white-space:nowrap;padding-right:6px}
.rg-jumps{position:sticky;top:0;z-index:40;background:var(--rg-paper);padding:12px 0 10px;display:flex;gap:8px;
	flex-wrap:wrap;font-family:var(--rg-ui);border-bottom:1px solid var(--rg-rule)}
.rg-jump{font-size:13px;text-decoration:none;padding:8px 15px;border:1px solid var(--rg-rule);border-radius:99px;background:#fff;color:var(--rg-ink-2)}
.rg-jump:hover{border-color:var(--rg-romance)}
.rg-jump .rg-n{font-family:var(--rg-mono);font-size:11px;color:var(--rg-ink-3);margin-left:5px}
.rg-classblock{padding-top:34px}
.rg-classhead{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:4px}
.rg-classhead h2{font-family:var(--rg-display);font-weight:500;font-size:28px;letter-spacing:-.02em;margin:0;text-transform:capitalize}
.rg-classhead .rg-n{font-family:var(--rg-mono);font-size:13px;color:var(--rg-ink-3)}
.rg-classdef{font-family:var(--rg-ui);font-size:15px;color:var(--rg-ink-2);margin:6px 0 18px;max-width:74ch;line-height:1.6}
.rg-pills{display:flex;gap:10px;flex-wrap:wrap;padding-bottom:36px}
.rg-gap{background:var(--rg-paper-2);border:1px dashed var(--rg-rule);border-radius:4px;padding:16px 20px;
	font-family:var(--rg-ui);font-size:14.5px;color:var(--rg-ink-2);margin:8px 0 36px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.rg-gap b{font-family:var(--rg-mono)}
.rg-gap a{margin-left:auto;font-weight:600;font-size:13.5px;text-decoration:none;border-bottom:1px solid var(--rg-ink-2)}

/* ==========================================================================
   SEARCH — band, hits
   ========================================================================== */
.rg-band{background:var(--rg-house);padding:36px 0 60px}
.rg-band .rg-eyebrow{color:#8FA3B5}
.rg-searchbox{display:flex;background:#fff;border-radius:99px;padding:7px 7px 7px 24px;margin-top:12px;
	box-shadow:0 12px 32px rgba(0,0,0,.28);align-items:center;gap:12px}
.rg-searchbox input{border:0;outline:0;flex:1;font-family:var(--rg-ui);font-size:19px;padding:12px 0;background:none;min-width:0}
.rg-searchbox button{background:var(--rg-romance);color:#fff;border:0;border-radius:99px;font-family:var(--rg-ui);
	font-weight:600;font-size:15px;padding:13px 26px;cursor:pointer;flex-shrink:0}
.rg-sect{margin-top:34px}
.rg-sect .rg-head{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}
.rg-sect .rg-head h2{font-family:var(--rg-display);font-weight:500;font-size:26px;letter-spacing:-.02em;margin:0}
.rg-sect .rg-head .rg-n{font-family:var(--rg-mono);font-size:13px;color:var(--rg-ink-3)}
.rg-sect .rg-head a{margin-left:auto;font-family:var(--rg-ui);font-size:13.5px;color:var(--rg-ink-2)}
.rg-topclaim{font-family:var(--rg-ui);font-size:13.5px;color:var(--rg-ink-2);margin:4px 0 0;max-width:60ch}
.rg-topclaim .rg-str{margin-right:7px}
.rg-phit{display:flex;gap:14px;background:#fff;border:1px solid var(--rg-rule);border-radius:4px;padding:16px 18px;margin-bottom:10px;align-items:baseline}
.rg-phit .rg-pname{font-family:var(--rg-display);font-weight:500;font-size:19px;white-space:nowrap}
.rg-phit .rg-pname a{text-decoration:none}
.rg-phit .rg-pname a:hover{text-decoration:underline}
.rg-phit .rg-def{font-family:var(--rg-ui);font-size:14px;color:var(--rg-ink-2);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}
.rg-phit .rg-cls{font-family:var(--rg-ui);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--rg-ink-3);white-space:nowrap}
.rg-request{background:var(--rg-paper-2);border:1px dashed var(--rg-rule);border-radius:4px;padding:18px 22px;
	font-family:var(--rg-ui);font-size:14.5px;color:var(--rg-ink-2);margin-top:26px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.rg-request b{font-family:var(--rg-display);font-weight:500;font-size:17px}
.rg-request a{margin-left:auto;font-weight:600;font-size:13.5px;border:1px solid var(--rg-house);border-radius:3px;padding:9px 16px;text-decoration:none}

/* ==========================================================================
   ABOUT — methods, numbered laws, retired
   ========================================================================== */
.rg-mtiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:8px 0 4px}
.rg-mtile{background:#fff;border:1px solid var(--rg-rule);border-radius:4px;padding:18px 20px}
.rg-mtile .rg-g{font-family:var(--rg-ui);font-weight:700;font-size:17px;display:block;margin-bottom:6px}
.rg-mtile b{font-family:var(--rg-display);font-weight:500;font-size:19px;display:block;margin-bottom:5px}
.rg-mtile span{font-family:var(--rg-ui);font-size:13.5px;color:var(--rg-ink-2);line-height:1.55;display:block}
.rg-lawlist{counter-reset:law;margin:8px 0 0;padding:0;list-style:none;max-width:66ch}
.rg-lawlist li{counter-increment:law;border-top:1px solid var(--rg-rule);padding:16px 0 16px 54px;position:relative}
.rg-lawlist li::before{content:counter(law);position:absolute;left:0;top:14px;width:34px;height:34px;
	border:1.5px solid var(--rg-romance);border-radius:50%;color:var(--rg-romance);font-family:var(--rg-display);
	font-size:16px;display:flex;align-items:center;justify-content:center}
.rg-lawlist b{display:block;font-family:var(--rg-display);font-weight:500;font-size:19px}
.rg-lawlist span{font-family:var(--rg-ui);font-size:14.5px;color:var(--rg-ink-2)}
.rg-retired{background:var(--rg-paper-2);border:1px dashed var(--rg-rule);border-radius:4px;padding:20px 24px;
	margin-top:10px;font-family:var(--rg-ui);font-size:15px;color:var(--rg-ink-2);max-width:70ch;line-height:1.65}
.rg-retired b{font-family:var(--rg-display);font-weight:500;font-size:18px;display:block;margin-bottom:6px;color:var(--rg-ink)}

/* ==========================================================================
   LICENSING — artefact, bands, sample
   ========================================================================== */
.rg-artefact{background:var(--rg-house);border-radius:6px;margin:-40px 0 8px;padding:4px;box-shadow:0 14px 36px rgba(20,21,25,.22);position:relative}
.rg-artefact .rg-bar{display:flex;gap:8px;align-items:center;padding:10px 16px;font-family:var(--rg-mono);font-size:12px;color:#8FA3B5}
.rg-artefact .rg-bar i{width:9px;height:9px;border-radius:50%;background:#56687A;font-style:normal}
.rg-artefact pre{margin:0;background:#1E2732;color:#C6D2DC;border-radius:0 0 5px 5px;padding:18px 22px;
	font-family:var(--rg-mono);font-size:13px;line-height:1.7;overflow:auto;max-height:340px}
.rg-bands{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.rg-bandcard{background:#fff;border:1px solid var(--rg-rule);border-radius:4px;padding:20px}
.rg-bandcard b{font-family:var(--rg-display);font-weight:500;font-size:19px;display:block}
.rg-bandcard .rg-p{font-family:var(--rg-mono);font-size:16px;color:var(--rg-romance);margin:6px 0 8px;display:block}
.rg-bandcard span{font-family:var(--rg-ui);font-size:13.5px;color:var(--rg-ink-2);line-height:1.55;display:block}
.rg-sample{background:#fff;border:1px solid var(--rg-rule);border-left:4px solid var(--rg-romance);border-radius:4px;
	padding:26px 30px;margin-top:12px;display:flex;gap:24px;flex-wrap:wrap;align-items:center}
.rg-sample b{font-family:var(--rg-display);font-weight:500;font-size:22px;display:block;margin-bottom:4px}
.rg-sample p{font-family:var(--rg-ui);font-size:14.5px;color:var(--rg-ink-2);margin:0;max-width:46ch}
.rg-laws2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-top:6px}
.rg-law2{border-top:2px solid var(--rg-ink);padding-top:12px;font-family:var(--rg-ui)}
.rg-law2 b{font-size:15.5px;display:block;margin-bottom:4px}
.rg-law2 span{font-size:13.5px;color:var(--rg-ink-2);line-height:1.55}

/* ==========================================================================
   LEGAL — plainly, toc, ledger rows
   ========================================================================== */
.rg-legalmeta{font-family:var(--rg-ui);font-size:13.5px;color:#8FA3B5;display:flex;gap:18px;flex-wrap:wrap;margin-top:6px}
.rg-legalmeta b{color:#DDE3E9;font-weight:600}
.rg-family{display:flex;gap:8px;margin-top:18px;flex-wrap:wrap;font-family:var(--rg-ui)}
.rg-family a{font-size:13.5px;color:#AFBCC7;text-decoration:none;border:1px solid #56687A;border-radius:99px;padding:8px 18px}
.rg-family a.rg-on{background:#fff;color:var(--rg-house);border-color:#fff;font-weight:600}
.rg-plainly{background:#fff;border:1px solid var(--rg-rule);border-left:4px solid var(--rg-romance);border-radius:4px;
	padding:22px 26px;margin:28px 0 8px}
.rg-plainly .rg-eyebrow{color:var(--rg-romance);margin-bottom:8px;display:block}
.rg-plainly ul{margin:0;padding-left:20px;font-family:var(--rg-ui);font-size:15px;line-height:1.7;color:var(--rg-ink-2)}
.rg-plainly li{margin-bottom:5px}
.rg-governs{font-family:var(--rg-ui);font-size:12px;color:var(--rg-ink-3);margin:12px 0 0;padding-top:10px;border-top:1px dashed var(--rg-rule)}
.rg-toc{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 4px;font-family:var(--rg-ui)}
.rg-toc a{font-size:13px;text-decoration:none;padding:7px 14px;border:1px solid var(--rg-rule);border-radius:99px;background:#fff;color:var(--rg-ink-2)}
.rg-toc a:hover{border-color:var(--rg-romance)}
.rg-legal{font-size:17.5px}
.rg-legal h2{font-family:var(--rg-display);font-weight:500;font-size:24px;letter-spacing:-.015em;margin:34px 0 10px}
.rg-legal h3{font-family:var(--rg-display);font-weight:500;font-size:19px;margin:24px 0 8px}
.rg-legal p,.rg-legal li{max-width:66ch}
.rg-legal table{font-family:var(--rg-ui);font-size:14px;border-collapse:collapse}
.rg-legal td,.rg-legal th{border-top:1px solid var(--rg-rule);padding:10px 14px 10px 0;text-align:left;vertical-align:top}
.rg-legal code{font-family:var(--rg-mono);font-size:12.5px;background:var(--rg-paper-2);border-radius:2px;padding:2px 7px}
.rg-legal blockquote{margin:0 0 16px;border-left:3px solid var(--rg-rule);padding-left:16px;color:var(--rg-ink-2)}

/* ==========================================================================
   D2 — AUTH · SHELF · PROFILE (Register 2.1)
   ========================================================================== */
.rg-authstage{display:flex;align-items:flex-start;justify-content:center;gap:44px;padding:34px 22px 70px;flex-wrap:wrap;background:var(--rg-house)}
.rg-promise{max-width:340px;color:#DDE3E9;padding-top:26px;font-family:var(--rg-ui)}
.rg-promise h1{font-family:var(--rg-display);font-weight:500;font-size:31px;letter-spacing:-.025em;line-height:1.18;color:#fff;margin:10px 0 14px}
.rg-promise p{color:#AFBCC7;font-size:14.5px;margin:0 0 16px}
.rg-vows{margin:0;padding:0;list-style:none}
.rg-vows li{border-top:1px solid #3A4A5C;padding:11px 0;font-size:13.5px;color:#AFBCC7;display:flex;gap:10px}
.rg-vows li b{color:#fff;font-weight:600}
.rg-vows .rg-vg{color:#7FCBA4;font-weight:700}
.rg-authcard{background:var(--rg-paper);border-radius:6px;width:min(440px,100%);box-shadow:0 20px 50px rgba(0,0,0,.35);font-family:var(--rg-ui)}
.rg-authtabs{display:flex;border-bottom:1px solid var(--rg-rule)}
.rg-authtabs a{flex:1;font-weight:600;font-size:15px;padding:18px 10px;text-align:center;text-decoration:none;border-bottom:3px solid transparent;color:var(--rg-ink-3)}
.rg-authtabs a.rg-on{color:var(--rg-ink);border-bottom-color:var(--rg-romance)}
.rg-authbody{padding:26px 28px 28px}
.rg-field{margin-bottom:16px}
.rg-field>label{display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--rg-ink-3);margin-bottom:7px}
.rg-inputrow{display:flex;background:#fff;border:1px solid var(--rg-rule);border-radius:4px;align-items:center}
.rg-inputrow:focus-within{border-color:var(--rg-house);box-shadow:0 0 0 3px rgba(38,48,60,.12)}
.rg-inputrow input{border:0;outline:0;background:none;font-family:var(--rg-ui);font-size:16.5px;padding:13px 14px;flex:1;min-width:0}
.rg-inputrow .rg-show{border:0;background:none;font-size:12.5px;color:var(--rg-ink-3);cursor:pointer;padding:0 14px;font-weight:600}
.rg-fielderr .rg-inputrow{border-color:#a93226;box-shadow:0 0 0 3px rgba(169,50,38,.12)}
.rg-errmsg{color:#a93226;font-size:13px;margin-top:7px;font-weight:500}
.rg-hint{font-size:12.5px;color:var(--rg-ink-3);margin-top:7px}
.rg-authopts{display:flex;align-items:center;gap:9px;font-size:14px;color:var(--rg-ink-2);margin:4px 0 18px}
.rg-authopts input{width:17px;height:17px;accent-color:var(--rg-romance)}
.rg-authopts .rg-forgot{margin-left:auto;font-size:13px;color:var(--rg-ink-2)}
.rg-authgo{width:100%;background:var(--rg-house);color:#fff;border:0;border-radius:4px;font-weight:600;font-size:16px;padding:15px;cursor:pointer}
.rg-authgo:hover{background:#314052}
.rg-consent{font-size:12.5px;color:var(--rg-ink-3);margin-top:14px;line-height:1.6}
.rg-consent a{font-weight:600;color:var(--rg-ink-2)}
.rg-newsrow{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:var(--rg-ink-2);margin-top:14px}
.rg-newsrow input{width:16px;height:16px;margin-top:2px;accent-color:var(--rg-romance)}
.rg-auditline{border-top:1px dashed var(--rg-rule);margin-top:22px;padding-top:16px;font-size:12.5px;color:var(--rg-ink-3);display:flex;gap:10px;align-items:flex-start}

/* shelf dashboard */
.rg-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;margin-top:22px}
@media(max-width:880px){.rg-grid{grid-template-columns:1fr}}
.rg-zone{background:#fff;border:1px solid var(--rg-rule);border-radius:4px;padding:20px 22px}
.rg-zone h2{font-family:var(--rg-display);font-weight:500;font-size:21px;letter-spacing:-.015em;margin:0 0 14px}
.rg-zone h2 small{font-family:var(--rg-ui);font-size:11.5px;color:var(--rg-ink-3);font-weight:400;margin-left:9px}
.rg-zwide{grid-column:1 / -1}
.rg-readrow{display:flex;gap:16px;padding:13px 0;border-top:1px solid var(--rg-paper-2)}
.rg-readrow:first-of-type{border-top:0;padding-top:0}
.rg-bar{height:7px;background:var(--rg-paper-2);border-radius:99px;overflow:hidden;max-width:320px}
.rg-bar i{display:block;height:100%;background:var(--rg-good)}
.rg-pct{font-family:var(--rg-mono);font-size:11.5px;color:var(--rg-ink-3);margin-top:5px}
.rg-quick{display:flex;gap:7px;margin-top:9px;flex-wrap:wrap}
.rg-quick button,.rg-quick a{font-family:var(--rg-ui);font-size:12.5px;padding:7px 14px;border:1px solid var(--rg-rule);background:#fff;border-radius:99px;cursor:pointer;text-decoration:none;color:var(--rg-ink)}
.rg-quick .rg-fin{background:var(--rg-good);border-color:var(--rg-good);color:#fff;font-weight:600}
.rg-ring{width:112px;height:112px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.rg-ring i{width:82px;height:82px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-style:normal}
.rg-ring b{font-family:var(--rg-mono);font-size:23px}
.rg-ring span{font-family:var(--rg-ui);font-size:9.5px;color:var(--rg-ink-3);letter-spacing:.08em;text-transform:uppercase}
.rg-troperow{display:flex;align-items:center;gap:10px;margin-bottom:9px;font-family:var(--rg-ui);font-size:13px}
.rg-troperow .rg-tn{width:150px;flex-shrink:0}
.rg-troperow .rg-track{flex:1;height:13px;background:var(--rg-paper-2);border-radius:2px;overflow:hidden}
.rg-troperow .rg-track i{display:block;height:100%;background:var(--rg-romance)}
.rg-troperow .rg-tc{font-family:var(--rg-mono);font-size:11.5px;color:var(--rg-ink-3);width:20px;text-align:right}

/* profile */
.rg-bigavatar{width:92px;height:92px;border-radius:50%;border:2px solid var(--rg-romance);background:rgba(255,255,255,.07);color:#fff;font-family:var(--rg-display);font-size:38px;font-weight:500;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.rg-privbadge{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.08);border:1px solid #56687A;border-radius:99px;padding:8px 16px;font-size:13px;color:#fff;font-family:var(--rg-ui)}
.rg-privbadge .rg-dot{width:8px;height:8px;border-radius:50%;background:#7FCBA4}
.rg-identity{background:#fff;border:1px solid var(--rg-rule);border-left:4px solid var(--rg-romance);border-radius:4px;margin-top:-20px;padding:22px 28px;position:relative}
.rg-identity p{font-family:var(--rg-display);font-size:clamp(19px,2.6vw,24px);line-height:1.42;letter-spacing:-.015em;margin:8px 0 0;max-width:36ch}
.rg-identity p b{color:var(--rg-romance);font-weight:500}
.rg-yearstrip{display:flex;gap:30px;flex-wrap:wrap;font-family:var(--rg-ui);font-size:12.5px;color:var(--rg-ink-3);padding:16px 2px;border-bottom:1px solid var(--rg-rule);margin-top:18px}
.rg-yearstrip b{font-family:var(--rg-mono);font-size:17px;color:var(--rg-ink);margin-right:6px}
.rg-shelfcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.rg-shelfcard{background:#fff;border:1px solid var(--rg-rule);border-radius:4px;padding:16px 18px;text-decoration:none}
.rg-shelfcard b{font-family:var(--rg-mono);font-size:24px;display:block}
.rg-shelfcard span{font-family:var(--rg-ui);font-size:13px;color:var(--rg-ink-2)}
.rg-ev{display:grid;grid-template-columns:150px 96px 1fr;gap:14px;border-top:1px solid var(--rg-rule);padding:12px 2px;font-size:14px;align-items:baseline;font-family:var(--rg-ui)}
.rg-ev:first-of-type{border-top:2px solid var(--rg-ink)}
.rg-ev .rg-when{font-family:var(--rg-mono);font-size:12px;color:var(--rg-ink-3)}
.rg-ev .rg-kind{font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;border-radius:2px;padding:3px 8px;justify-self:start}
.rg-kA{background:#E8EBEF;color:var(--rg-house)}
.rg-kS{background:#E4EFE8;color:var(--rg-good)}
.rg-kC{background:#F1E7D2;color:var(--rg-machine)}
.rg-kD{background:#F0DFE3;color:var(--rg-romance)}
.rg-ev .rg-what{font-size:14px;color:var(--rg-ink-2)}
.rg-ev .rg-what b{color:var(--rg-ink);font-weight:600}
.rg-ev .rg-what code{font-family:var(--rg-mono);font-size:12px;background:var(--rg-paper-2);border-radius:2px;padding:1px 6px}
.rg-evfilters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;font-family:var(--rg-ui)}
.rg-evfilters a{font-size:12.5px;padding:7px 15px;border:1px solid var(--rg-rule);border-radius:99px;background:#fff;color:var(--rg-ink-2);text-decoration:none}
.rg-evfilters a.rg-on{background:var(--rg-ink);border-color:var(--rg-ink);color:#fff}
.rg-dangerbtn{border-color:var(--rg-romance) !important;color:var(--rg-romance) !important}
@media(max-width:640px){.rg-ev{grid-template-columns:110px 1fr}.rg-ev .rg-kind{display:none}}


/* ==========================================================================
   2.1.2 — CONTRAST + BREATHING-ROOM HARDENING
   Belt-and-braces against parent-theme bleed-through: the brand, nav
   links, and every action element get explicit colour pairs at body-level
   specificity, and content that starts without a masthead still gets air
   under the header.
   ========================================================================== */
body.rg .rgh a.rgh-brand{color:#fff !important;text-decoration:none}
body.rg .rgh a.rgh-link{color:#AFBCC7 !important}
body.rg .rgh a.rgh-link:hover,body.rg .rgh a.rgh-link:focus{color:#fff !important}
body.rg .rgh a.rgh-shelf{color:#fff !important;background:transparent}
body.rg .rg-go,body.rg .rg-authgo,body.rg .rg-btn-primary,body.rg .rg-act.rg-primary{
	background:var(--rg-house) !important;color:#fff !important;border-color:var(--rg-house) !important}
body.rg .rg-btn,body.rg .rg-act{color:var(--rg-house)}
body.rg .rg-btn-light{background:#fff !important;color:var(--rg-house) !important}
body.rg .rg-btn-linewhite{color:#fff !important;background:transparent !important}
body.rg .rg-searchbox button,body.rg .rg-finder button{background:var(--rg-romance) !important;color:#fff !important}
body.rg .rg-quick .rg-fin{background:var(--rg-good) !important;color:#fff !important}
body.rg .rg-selects select:disabled{color:var(--rg-ink-2);opacity:1;-webkit-text-fill-color:var(--rg-ink-2)}
body.rg .rg-mast .rg-eyebrow,body.rg .rg-band .rg-eyebrow{margin-top:0}
/* first block under the nav always breathes, masthead or not */
body.rg #rg-content>.rg-wrap:first-child,body.rg #rg-content>.rg-wrap-n:first-child{padding-top:36px}
body.rg .rg-mast,body.rg .rg-band{margin-top:0}


/* ==================== 2.2.0 — mockup component layer ==================== */
.rg2-band{padding:34px 0 6px}
.rg2-eyebrow{font-family:var(--rg-ui,'IBM Plex Sans',sans-serif);font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:#6C6F78}
.rg2-title{font-family:'Fraunces',Georgia,serif;font-weight:500;letter-spacing:-.025em;font-size:clamp(27px,4vw,40px);line-height:1.1;margin:7px 0 8px}
.rg2-stand{font-family:'IBM Plex Sans',sans-serif;font-size:14.5px;color:#3B3D44;max-width:64ch;margin:0 0 10px;line-height:1.6}
.rg2-legend{font-family:'IBM Plex Sans',sans-serif;font-size:11.5px;color:#6C6F78;margin:2px 0 12px}
.rg2-legend b{font-weight:500;color:#3B3D44}
.rg2-crumb{font-family:'IBM Plex Sans',sans-serif;font-size:11.5px;color:#6C6F78;margin:18px 0 0}
.rg2-crumb a{text-decoration:none;color:#6C6F78}.rg2-crumb a:hover{color:#7A2233}
.rg2-rule{border:0;border-top:1px solid #141519;height:3px;border-bottom:1px solid #141519;margin:18px 0;opacity:.82}
.rg2-thin{border:0;border-top:1px solid #D6D4CE;margin:16px 0}
.rg2-note{font-family:'IBM Plex Sans',sans-serif;font-size:12.5px;color:#6C6F78;line-height:1.6;max-width:78ch}
.rg2-pills{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 16px}
.rg2-pill{font-family:'IBM Plex Sans',sans-serif;font-size:12.5px;border:1px solid #D6D4CE;background:#fff;border-radius:99px;padding:7px 14px;color:#3B3D44;text-decoration:none;white-space:nowrap}
.rg2-pill.on{background:#26303C;border-color:#26303C;color:#fff}
.rg2-pill.gap{border-style:dashed;color:#6C6F78;background:none}
.rg2-tag{font-family:'IBM Plex Sans',sans-serif;font-size:9.5px;letter-spacing:.09em;text-transform:uppercase;font-weight:600;border-radius:2px;padding:2px 7px;white-space:nowrap}
.rg2-lb{background:#F0DFE3;color:#7A2233}.rg2-pr{background:#E8EBEF;color:#26303C}.rg2-po{background:#F1E7D2;color:#9A6B12}
.rg2-v{color:#2E6F52}.rg2-s{color:#26303C}.rg2-m{color:#9A6B12}
.rg2-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));margin:14px 0}
.rg2-bk{background:#fff;border:1px solid #D6D4CE;border-radius:4px;overflow:hidden;display:flex;flex-direction:column}
.rg2-spine{min-height:104px;background:linear-gradient(180deg,#EFEDE8,#E4E1DA);border-bottom:1px solid #D6D4CE;padding:13px 14px;display:flex;flex-direction:column;justify-content:space-between;gap:8px}
.rg2-spine .t{font-family:'Fraunces',Georgia,serif;font-size:14.5px;line-height:1.2;color:#141519}
.rg2-spine .t a{text-decoration:none;color:inherit}
.rg2-spine .a{font-family:'IBM Plex Sans',sans-serif;font-size:10.5px;color:#6C6F78}
.rg2-bk .in{padding:11px 14px 13px;font-family:'IBM Plex Sans',sans-serif;font-size:12px;color:#3B3D44;flex:1;display:flex;flex-direction:column;gap:6px}
.rg2-bk .rz{font-family:'Literata',Georgia,serif;font-size:12.5px;color:#3B3D44;line-height:1.45}
.rg2-gl{font-family:'IBM Plex Sans',sans-serif;font-size:12px;color:#6C6F78;display:flex;gap:13px;flex-wrap:wrap}
.rg2-tblwrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:12px 0}
.rg2-led{border-collapse:collapse;width:100%;min-width:560px;font-family:'IBM Plex Sans',sans-serif;font-size:12.5px}
.rg2-led th{font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:#6C6F78;text-align:left;border-bottom:2px solid #141519;padding:7px 12px 7px 0}
.rg2-led td{border-top:1px solid #D6D4CE;padding:8px 12px 8px 0;vertical-align:top}
.rg2-led td.n{font-family:'IBM Plex Mono',monospace;font-size:12px}
.rg2-box{background:#fff;border:1px solid #D6D4CE;border-radius:4px;padding:16px 20px;margin:14px 0}
.rg2-box.wine{border-left:4px solid #7A2233}
.rg2-box.dark{background:#26303C;color:#C6D2DC;border-color:#26303C}
.rg2-box.dark b{color:#fff}
.rg2-box.draft{border:1px solid #9A6B12;background:#FBF6EA}
.rg2-caution{margin:9px 0 0;padding:10px 14px;border:1px solid #D6D4CE;border-left:3px double #141519;background:#EFEDE8;border-radius:0 3px 3px 0}
.rg2-caution b{font-family:'IBM Plex Sans',sans-serif;font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;color:#3B3D44;display:block;margin-bottom:3px}
.rg2-caution span{font-family:'IBM Plex Sans',sans-serif;font-size:12.5px;color:#3B3D44;line-height:1.55}
.rg2-claim{border-top:1px solid #D6D4CE;padding:13px 0}
.rg2-claim .hdr{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:5px}
.rg2-claim .hdr a{font-family:'Fraunces',Georgia,serif;font-size:16px;text-decoration:none;color:#141519}
.rg2-claim .rz{max-width:74ch}
.rg2-abc{display:flex;gap:4px;flex-wrap:wrap;font-family:'IBM Plex Mono',monospace;font-size:12px;margin:12px 0 4px}
.rg2-abc a{text-decoration:none;padding:6px 10px;border:1px solid #D6D4CE;background:#fff;color:#3B3D44}
.rg2-abc a.on{background:#26303C;color:#fff;border-color:#26303C}
.rg2-two{display:grid;grid-template-columns:1.35fr 1fr;gap:26px}
.rg2-field{display:flex;gap:9px;align-items:baseline;font-family:'IBM Plex Sans',sans-serif;font-size:12.5px;padding:7px 0;border-top:1px solid #D6D4CE}
.rg2-field code{flex:none;min-width:118px}
body.rg .rg2-pill:focus-visible,body.rg .rg2-abc a:focus-visible{outline:2px solid #7A2233;outline-offset:2px}
@media(max-width:820px){.rg2-two{grid-template-columns:1fr}}


/* ==================== 2.3.0 — THE COLOUR CONSTITUTION ====================
 * Three families, three laws. Check every new component against the
 * forbidden column before it gets a colour.
 *
 * TRUST CORE (sacred, exclusive meanings):
 *   verified green  #2E6F52  = Tier A only.        FORBIDDEN: commerce, success states, buttons.
 *   machine gold    #9A6B12  = Tier D only.        FORBIDDEN: warnings, highlights, accents.
 *   wine            #7A2233  = human judgement.    FORBIDDEN: buy buttons, external links, errors.
 *   navy            #26303C  = structure/chrome.
 *   caution         = ink double-rule only.
 *   commerce        = neutral outline, forever — the firewall, in paint.
 * READER WARMTH (personal moments only — the apparatus does not blush):
 *   blush #F0DFE3 · rose #E3C2C9 · deep rose #B4707E
 * SHELF PALETTE (decorative; tuned away from tier hues):
 *   house/wine/teal/old-gold colourways below.
 * DUSK MODE: Phase D token flip — paper #15181E, ink #E8E6E1, wine #C96A7C.
 */
:root{--rg-blush:#F0DFE3;--rg-rose:#E3C2C9;--rg-deeprose:#B4707E}

/* deterministic spine colourways — fallback when no cover resolves */
.rg-cover.rg-sp0{background:linear-gradient(180deg,#26303C,#1B222B)}
.rg-cover.rg-sp1{background:linear-gradient(180deg,#7A2233,#5A1826)}
.rg-cover.rg-sp2{background:linear-gradient(180deg,#1F4E5F,#153843)}
.rg-cover.rg-sp3{background:linear-gradient(180deg,#4A5D43,#36452F)}
.rg-cover img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover}
.rg-cover img + i{position:absolute;inset:0;display:flex;align-items:flex-end;padding:10px}
/* when the img 404s and removes itself, the <i> spine title stands alone */

/* the hero "I want…" quick-start */
.rg3-want{background:#1B222B;border:1px solid #3C4956;border-radius:4px;padding:16px 20px;max-width:640px;margin:18px 0 6px}
.rg3-want .rg-eyebrow{color:#8FA3B5}
.rg3-wpills{display:flex;gap:8px;flex-wrap:wrap;margin:9px 0 10px}
.rg3-wpill{font-family:var(--rg-ui,'IBM Plex Sans',sans-serif);font-size:13px;border:1px solid #3C4956;background:#26303C;color:#C6D2DC;border-radius:99px;padding:8px 15px;text-decoration:none;white-space:nowrap}
.rg3-wpill.on{background:#F7F6F3;border-color:#F7F6F3;color:#26303C;font-weight:600}
.rg3-wpill:focus-visible{outline:2px solid #F7F6F3;outline-offset:2px}

/* doors row */
.rg3-doors{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));margin:16px 0 6px}
.rg3-door{background:#fff;border:1px solid #D6D4CE;border-radius:4px;padding:16px 18px;text-decoration:none;display:flex;flex-direction:column;gap:5px}
.rg3-door b{font-family:'Fraunces',Georgia,serif;font-size:17px;font-weight:500;color:#141519}
.rg3-door span{font-family:'Literata',Georgia,serif;font-size:12.5px;color:#3B3D44;line-height:1.45}
.rg3-door.wine{border-left:4px solid #7A2233}
.rg3-door.navy{border-left:4px solid #26303C}
.rg3-door.gold{border-left:4px solid #9A6B12}
.rg3-door.gated{border-style:dashed}
.rg3-door.gated b,.rg3-door.gated span{color:#6C6F78}
.rg3-gate{font-family:'IBM Plex Sans',sans-serif;font-size:11px;background:#FBF6EA;border:1px dashed #9A6B12;color:#7A5A10;border-radius:3px;padding:2px 8px;align-self:flex-start;margin-top:4px}

/* verdict-first claims */
.rg-claim .rg3-verdict{font-size:16px;line-height:1.55;max-width:68ch;margin:0 0 8px}
.rg3-claimrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* take it home — commerce stays neutral, after the judgement */
.rg3-home{background:#fff;border:1px solid #D6D4CE;border-radius:4px;padding:16px 20px;margin:20px 0;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.rg3-home .t{flex:1;min-width:220px}
.rg3-home .t b{font-family:'Fraunces',Georgia,serif;font-size:16px;font-weight:500}

/* reader-warmth confirmations (shelf feedback only) */
.rg3-warm{background:var(--rg-blush);border:1px solid var(--rg-rose);color:#7A2233;border-radius:3px;padding:8px 14px;font-family:'IBM Plex Sans',sans-serif;font-size:13px}

/* trust legend + letter */
.rg3-legend{font-family:'IBM Plex Sans',sans-serif;font-size:12.5px;color:#6C6F78;display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:18px 0}
.rg3-letter{background:#26303C;color:#C6D2DC;border-radius:4px;padding:18px 22px;display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:8px 0 26px}
.rg3-letter b{color:#fff;font-family:'Fraunces',Georgia,serif;font-size:16px;font-weight:500}
.rg3-letter p{font-family:'IBM Plex Sans',sans-serif;font-size:12.5px;color:#AFBCC7;margin:4px 0 0}

/* 2.3.1 — shelf states menu */
.rg3-states{display:inline-block;position:relative}
.rg3-states summary{list-style:none;cursor:pointer}
.rg3-states summary::-webkit-details-marker{display:none}
.rg3-statemenu{position:absolute;top:calc(100% + 6px);left:0;z-index:20;background:#fff;border:1px solid #D6D4CE;border-radius:4px;box-shadow:0 4px 14px rgba(0,0,0,.12);padding:6px;display:flex;flex-direction:column;gap:2px;min-width:170px}
.rg3-stateitem{font-family:'IBM Plex Sans',sans-serif;font-size:13px;text-align:left;background:none;border:0;border-radius:3px;padding:8px 12px;color:#141519;width:100%}
.rg3-stateitem:hover{background:#F0DFE3;color:#7A2233}
.rg3-stateitem:focus-visible{outline:2px solid #7A2233;outline-offset:1px}

/* 2.3.3 — commerce buttons: neutral on light, per the constitution.
   (The old rg-btn-linewhite was white-on-white inside the Take-it-home box.) */
.rg3-buy{font-family:'IBM Plex Sans',sans-serif;font-size:13.5px;font-weight:600;color:#26303C;background:#fff;border:1px solid #26303C;border-radius:3px;padding:10px 16px;text-decoration:none;display:inline-block;white-space:nowrap}
.rg3-buy:hover{background:#EFEDE8;color:#141519}
.rg3-buy:focus-visible{outline:2px solid #7A2233;outline-offset:2px}

/* 2.5.0 — shelf row cover size */
.rg-cover.rg-cov-xs{width:44px;min-width:44px;height:62px;border-radius:2px;overflow:hidden;position:relative;display:block;border:1px solid #D6D4CE}
.rg-cover.rg-cov-xs i{font-size:8px;line-height:1.15;font-style:normal;color:#fff;font-family:'IBM Plex Sans',sans-serif;padding:5px;display:flex;align-items:flex-end;position:absolute;inset:0}


/* ==================== 2.11.0 — DUSK MODE ====================
 * The constitution's token flip: paper becomes lamplight, not void, and
 * every semantic keeps its hue family (verified stays green, machine
 * stays gold, judgement stays wine) so the law survives the dark.
 * Applied client-side (cache-safe): localStorage rl_dusk, else the
 * system preference. Toggle lives in the footer.
 */
.rg3-heads{border-left:3px double #141519;background:#EFEDE8}
body.rg-dusk{background:#15181E;color:#E8E6E1}
body.rg-dusk .rg-wrap, body.rg-dusk .rg-wrap-n{color:#E8E6E1}
body.rg-dusk h1, body.rg-dusk h2, body.rg-dusk h3, body.rg-dusk .rg2-title{color:#EDEDEA}
body.rg-dusk .rg2-stand, body.rg-dusk p{color:#C9CDD3}
body.rg-dusk .rg2-eyebrow, body.rg-dusk .rg-eyebrow{color:#8A93A0}
body.rg-dusk .rg2-note, body.rg-dusk .rg-cardnote, body.rg-dusk .rg2-crumb, body.rg-dusk .rg2-legend, body.rg-dusk .rg3-legend{color:#9AA1AB}
body.rg-dusk .rg-card, body.rg-dusk .rg2-box, body.rg-dusk .rg2-bk, body.rg-dusk .rg3-door, body.rg-dusk .rg3-home, body.rg-dusk .rg2-claim{background:#1B2027;border-color:#2A313B}
body.rg-dusk .rg3-door b, body.rg-dusk .rg2-bk .t{color:#EDEDEA}
body.rg-dusk .rg2-bk .in, body.rg-dusk .rg3-door span{color:#C9CDD3}
body.rg-dusk hr.rg2-thin{border-color:#2A313B}
body.rg-dusk hr.rg2-rule, body.rg-dusk hr.rg-ledger{border-color:#3A424D;opacity:1}
body.rg-dusk .rg2-led th{color:#8A93A0;border-bottom-color:#E8E6E1}
body.rg-dusk .rg2-led td{border-top-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg2-pill{background:#1B2027;border-color:#3A424D;color:#C9CDD3}
body.rg-dusk .rg2-pill.on{background:#E8E6E1;border-color:#E8E6E1;color:#15181E}
body.rg-dusk input, body.rg-dusk select, body.rg-dusk textarea{background:#1B2027;color:#E8E6E1;border-color:#3A424D}
/* semantics, dusk-tuned — same families, lifted for contrast */
body.rg-dusk .rg2-v, body.rg-dusk .rg-sig .rg-mark{color:#6FAE8F}
body.rg-dusk .rg2-m{color:#C9A85C}
body.rg-dusk .rg2-s{color:#AFBCC7}
body.rg-dusk .rg-sig{color:#9AA1AB}
body.rg-dusk .rg-sig em, body.rg-dusk .rg-mark{color:#C96A7C;border-color:#C96A7C}
body.rg-dusk .rg2-lb, body.rg-dusk .rg-str-lb{background:#3A2228;color:#C96A7C}
body.rg-dusk .rg2-pr, body.rg-dusk .rg-str-pr{background:#242C36;color:#AFBCC7}
body.rg-dusk .rg2-po, body.rg-dusk .rg-str-po{background:#332B18;color:#C9A85C}
body.rg-dusk .rg2-box.wine{border-left-color:#C96A7C}
body.rg-dusk .rg2-box.dark, body.rg-dusk .rg3-letter{background:#10131A;border-color:#2A313B}
body.rg-dusk .rg3-heads{background:#232833;border-left-color:#E8E6E1}
body.rg-dusk .rg3-warm{background:#3A2228;border-color:#5A3038;color:#E3AAB4}
body.rg-dusk .rg-cta{background:#A24458;border-color:#A24458}
body.rg-dusk .rg3-buy{background:transparent;border-color:#8A93A0;color:#C9CDD3}
body.rg-dusk .rg3-buy:hover{background:#242C36;color:#EDEDEA}
body.rg-dusk .rg3-wpill{background:#242C36;border-color:#3A424D}
body.rg-dusk .rg3-stateitem{color:#E8E6E1}
body.rg-dusk .rg3-statemenu{background:#1B2027;border-color:#3A424D}
body.rg-dusk .rg3-stateitem:hover{background:#3A2228;color:#C96A7C}
body.rg-dusk a{color:inherit}
body.rg-dusk .rg2-pill:focus-visible, body.rg-dusk .rg3-buy:focus-visible, body.rg-dusk .rg-cta:focus-visible{outline-color:#C96A7C}








/* ==================== 2.11.5 — dusk by luminance ====================
 * No more enumerating light values: the generator resolves the theme's
 * own :root variables and flips any background whose computed luminance
 * is light. Hexes, `white`, vars, and gradient first-stops all count.
 * One rule per selector; primaries, spines, and chrome excluded.
 */
body.rg-dusk .rg{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-authcard{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-bandcard{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-bar{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-bkcard{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-card{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-cat{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-chip{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-chiplet{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-chiplet.rg-lbc{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-claim{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-cover{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-ev .rg-what code{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-evfilters a{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-family a.rg-on{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-finder{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-gap{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-identity{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-inputrow{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-jump{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-jumps{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-kA{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-kC{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-kD{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-kS{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-legal code{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-mtile{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-panel{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-phit{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-pill{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-plainly{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-privbadge .rg-dot{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-pull{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-quick a{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-quick button{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-request{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-result{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-result h3 mark{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-retired{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-ring i{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-sample{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-searchbox{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-seg{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-selects select{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-selects select:disabled{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-shelfcard{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-skip{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-skip:focus{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-sticky button{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-str-lb{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-str-po{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-str-pr{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-strip{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-toc a{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-today{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-troperow .rg-track{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg-zone{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg2-abc a{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg2-bk{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg2-box{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg2-box.draft{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg2-caution{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg2-lb{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg2-pill{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg2-po{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg2-pr{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg3-door{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg3-gate{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg3-home{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg3-stateitem:hover{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg3-statemenu{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg3-wpill.on{background:#1B2027;border-color:#2A313B;color:#C9CDD3}
body.rg-dusk .rg2-spine{background:linear-gradient(180deg,#242C36,#1B2027);border-bottom-color:#2A313B}
body.rg-dusk .rg2-spine.w{background:linear-gradient(180deg,#26303C,#1B222B)}
body.rg-dusk .rg2-spine.wine{background:linear-gradient(180deg,#7A2233,#5A1826)}
body.rg-dusk .rg2-spine.teal{background:linear-gradient(180deg,#1F4E5F,#153843)}
body.rg-dusk .rg2-spine.gold{background:linear-gradient(180deg,#8A6420,#6B4D16)}
body.rg-dusk .rg2-spine .t, body.rg-dusk .rg2-spine .t a{color:#EDEDEA}
body.rg-dusk .rg2-spine .a{color:#8A93A0}
body.rg-dusk .rg2-bk .rz, body.rg-dusk .rg2-bk .in, body.rg-dusk .rg2-claim .rz{color:#C9CDD3}
body.rg-dusk .rg2-gl{color:#9AA1AB}
body.rg-dusk .rg-family a.rg-on, body.rg-dusk .rg-evfilters a.rg-on{background:#E8E6E1;color:#15181E;border-color:#E8E6E1}
body.rg-dusk .rg-finder input{background:transparent;color:#E8E6E1}
body.rg-dusk .rg-jump{background:#1B2027;border-color:#3A424D;color:#C9CDD3}
body.rg-dusk .rg-today .rg-tq, body.rg-dusk .rg-today blockquote, body.rg-dusk .rg-today q{color:#EDEDEA}
body.rg-dusk .rg-today .rg-about{color:#C9CDD3}
body.rg-dusk .rg-today .rg-eyebrow{color:#C96A7C}
body.rg-dusk .rg-bkcard b, body.rg-dusk .rg-bkcard .t, body.rg-dusk .rg-bkcard a{color:#EDEDEA}
body.rg-dusk .rg-quick a, body.rg-dusk .rg-pill{background:#242C36;border-color:#3A424D;color:#C9CDD3}
body.rg-dusk .rg-quick a b{color:#EDEDEA}
body.rg-dusk .rg-panel .rg-eyebrow, body.rg-dusk .rg-panel [class*="eyebrow"]{color:#8A93A0}
body.rg-dusk .rg-more, body.rg-dusk .rg-start{color:#9AA1AB}
body.rg-dusk .rg-more:hover, body.rg-dusk .rg-start:hover{color:#C96A7C}
body.rg-dusk .rg-secthead h2{color:#EDEDEA}
body.rg-dusk .rg3-moodlabel{color:#C9CDD3}
.rg3-moodlabel{font-weight:600;color:#3B3D44}
body.rg-dusk .rg-eyebrow, body.rg-dusk [class*="eyebrow"]{color:#8A93A0}
body.rg-dusk .rg-cover{border-color:#2A313B}


/* ==================== 2.14.0 — account front-of-house ==================== */
.rg-auth{max-width:520px;margin:0 auto;background:#fff;border:1px solid var(--rg-rule,#D6D4CE);border-top:4px solid #7A2233;border-radius:4px;padding:26px 28px}
.rg-authtabs{display:flex;border-bottom:2px solid #141519;margin:0 0 16px}
.rg-authtabs a{font-family:var(--rg-ui,'IBM Plex Sans',sans-serif);font-size:13.5px;font-weight:600;padding:10px 18px;color:#6C6F78;text-decoration:none}
.rg-authtabs a.on{color:#141519;border-bottom:3px solid #7A2233;margin-bottom:-2px}
.rg-fld{margin:0 0 14px}
.rg-fld label{font-family:var(--rg-ui,'IBM Plex Sans',sans-serif);font-size:12px;font-weight:600;color:#3B3D44;display:block;margin-bottom:5px}
.rg-fld input{width:100%;font-family:var(--rg-ui,'IBM Plex Sans',sans-serif);font-size:15px;padding:11px 13px;border:1px solid #D6D4CE;border-radius:3px;background:#fff;box-shadow:inset 0 1px 2px rgba(0,0,0,.05)}
.rg-fld small{font-family:var(--rg-ui,'IBM Plex Sans',sans-serif);font-size:11.5px;color:#6C6F78;display:block;margin-top:4px;line-height:1.5}
.rg-autherr{background:#FBF6EA;border:1px solid #9A6B12;border-radius:3px;padding:9px 13px;font-family:var(--rg-ui,'IBM Plex Sans',sans-serif);font-size:12.5px;color:#7A5A10;margin:0 0 12px}
.rg-inset{font-family:var(--rg-ui,'IBM Plex Sans',sans-serif);border:1px solid #C4C1BA;border-radius:3px;background:#F2F1ED;box-shadow:inset 0 1px 2px rgba(0,0,0,.07)}
.rgh-acct{position:relative}
.rgh-acct summary{list-style:none;cursor:pointer;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rgh-acct summary::-webkit-details-marker{display:none}
.rgh-menu{position:absolute;top:calc(100% + 10px);right:0;background:#fff;border:1px solid #D6D4CE;border-radius:4px;box-shadow:0 6px 18px rgba(0,0,0,.16);min-width:200px;padding:6px;z-index:80;font-family:var(--rg-ui,'IBM Plex Sans',sans-serif);font-size:13px}
.rgh-menu .rgh-who{display:block;padding:7px 12px 5px;font-size:11px;color:#6C6F78;letter-spacing:.04em}
.rgh-menu a, .rgh-menu button{display:block;width:100%;text-align:left;padding:9px 12px;text-decoration:none;color:#141519;border:0;background:none;font:inherit;cursor:pointer;border-radius:3px}
.rgh-menu a:hover, .rgh-menu button:hover{background:#F0DFE3;color:#7A2233}
.rgh-menu .sep{display:block;border-top:1px solid #D6D4CE;margin:5px 0}
.rg-welcome{display:flex;gap:18px;align-items:center;flex-wrap:wrap;background:#fff;border:1px solid #D6D4CE;border-left:4px solid #7A2233;border-radius:4px;padding:16px 20px;margin:0 0 26px}
.rg-welcome b{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:17px}
.rg-welcome p{margin:3px 0 0;font-family:var(--rg-ui,'IBM Plex Sans',sans-serif);font-size:12.5px;color:#6C6F78}
/* dusk for the new components */
body.rg-dusk .rg-auth{background:#1B2027;border-color:#2A313B;border-top-color:#C96A7C}
body.rg-dusk .rg-authtabs{border-bottom-color:#E8E6E1}
body.rg-dusk .rg-authtabs a.on{color:#EDEDEA;border-bottom-color:#C96A7C}
body.rg-dusk .rg-fld label{color:#C9CDD3}
body.rg-dusk .rg-fld input{background:#242C36;border-color:#3A424D;color:#E8E6E1}
body.rg-dusk .rg-inset{background:#242C36;border-color:#3A424D;color:#E8E6E1}
body.rg-dusk .rg-autherr{background:#332B18;border-color:#C9A85C;color:#C9A85C}
body.rg-dusk .rgh-menu{background:#1B2027;border-color:#3A424D}
body.rg-dusk .rgh-menu a, body.rg-dusk .rgh-menu button{color:#E8E6E1}
body.rg-dusk .rgh-menu a:hover, body.rg-dusk .rgh-menu button:hover{background:#3A2228;color:#C96A7C}
body.rg-dusk .rg-welcome{background:#1B2027;border-color:#2A313B;border-left-color:#C96A7C}
body.rg-dusk .rg-welcome b{color:#EDEDEA}
@media(max-width:640px){
  .rg3-yrbreak p{display:none}
  .rg3-yrbreak.open p{display:block}
}


/* ==================== 2.14.1 — dusk text lift ====================
 * The background generator's missing half: every rule whose light-theme
 * text is neutral-dark (luminance < .35, chroma <= .12) lifts to dusk
 * ink. Chromatic semantics — wine, verified green, machine gold — are
 * skipped on purpose: the law survives the dark, again.
 */
body.rg-dusk .rg{color:#D6DAE0}
body.rg-dusk .rg-act{color:#AEB6C0}
body.rg-dusk .rg-act.rg-ghost{color:#AEB6C0}
body.rg-dusk .rg-authopts{color:#AEB6C0}
body.rg-dusk .rg-authopts .rg-forgot{color:#AEB6C0}
body.rg-dusk .rg-authtabs a.rg-on{color:#D6DAE0}
body.rg-dusk .rg-bandcard span{color:#AEB6C0}
body.rg-dusk .rg-bkcard .rg-cl{color:#AEB6C0}
body.rg-dusk .rg-btn{color:#AEB6C0}
body.rg-dusk .rg-btn-ghost{color:#AEB6C0}
body.rg-dusk .rg-btn-light{color:#AEB6C0}
body.rg-dusk .rg-card .rg-cardnote{color:#AEB6C0}
body.rg-dusk .rg-classdef{color:#AEB6C0}
body.rg-dusk .rg-consent a{color:#AEB6C0}
body.rg-dusk .rg-cover i{color:#AEB6C0}
body.rg-dusk .rg-doors{color:#AEB6C0}
body.rg-dusk .rg-ev .rg-what{color:#AEB6C0}
body.rg-dusk .rg-ev .rg-what b{color:#D6DAE0}
body.rg-dusk .rg-evfilters a{color:#AEB6C0}
body.rg-dusk .rg-family a.rg-on{color:#AEB6C0}
body.rg-dusk .rg-gap{color:#AEB6C0}
body.rg-dusk .rg-jump{color:#AEB6C0}
body.rg-dusk .rg-kA{color:#AEB6C0}
body.rg-dusk .rg-law2 span{color:#AEB6C0}
body.rg-dusk .rg-lawlist span{color:#AEB6C0}
body.rg-dusk .rg-legal blockquote{color:#AEB6C0}
body.rg-dusk .rg-morebtn{color:#AEB6C0}
body.rg-dusk .rg-mtile span{color:#AEB6C0}
body.rg-dusk .rg-newsrow{color:#AEB6C0}
body.rg-dusk .rg-phit .rg-def{color:#AEB6C0}
body.rg-dusk .rg-pill{color:#D6DAE0}
body.rg-dusk .rg-plainly ul{color:#AEB6C0}
body.rg-dusk .rg-quick a{color:#D6DAE0}
body.rg-dusk .rg-quick button{color:#D6DAE0}
body.rg-dusk .rg-request{color:#AEB6C0}
body.rg-dusk .rg-retired{color:#AEB6C0}
body.rg-dusk .rg-retired b{color:#D6DAE0}
body.rg-dusk .rg-sample p{color:#AEB6C0}
body.rg-dusk .rg-sect .rg-head a{color:#AEB6C0}
body.rg-dusk .rg-secthead .rg-more{color:#AEB6C0}
body.rg-dusk .rg-shelfcard span{color:#AEB6C0}
body.rg-dusk .rg-sticky button{color:#AEB6C0}
body.rg-dusk .rg-str-pr{color:#AEB6C0}
body.rg-dusk .rg-strip b{color:#D6DAE0}
body.rg-dusk .rg-toc a{color:#AEB6C0}
body.rg-dusk .rg-today .rg-about{color:#AEB6C0}
body.rg-dusk .rg-topclaim{color:#AEB6C0}
body.rg-dusk .rg-yearstrip b{color:#D6DAE0}
body.rg-dusk .rg2-abc a{color:#AEB6C0}
body.rg-dusk .rg2-bk .in{color:#AEB6C0}
body.rg-dusk .rg2-bk .rz{color:#AEB6C0}
body.rg-dusk .rg2-caution b{color:#AEB6C0}
body.rg-dusk .rg2-caution span{color:#AEB6C0}
body.rg-dusk .rg2-claim .hdr a{color:#D6DAE0}
body.rg-dusk .rg2-legend b{color:#AEB6C0}
body.rg-dusk .rg2-pill{color:#AEB6C0}
body.rg-dusk .rg2-pr{color:#AEB6C0}
body.rg-dusk .rg2-s{color:#AEB6C0}
body.rg-dusk .rg2-stand{color:#AEB6C0}
body.rg-dusk .rg3-buy{color:#AEB6C0}
body.rg-dusk .rg3-buy:hover{color:#D6DAE0}
body.rg-dusk .rg3-door b{color:#D6DAE0}
body.rg-dusk .rg3-door span{color:#AEB6C0}
body.rg-dusk .rg3-stateitem{color:#D6DAE0}
body.rg-dusk body.rg .rg-act{color:#AEB6C0}
body.rg-dusk body.rg .rg-btn{color:#AEB6C0}
body.rg-dusk body.rg .rg-btn-light{color:#AEB6C0}
body.rg-dusk body.rg .rg-selects select:disabled{color:#AEB6C0}
/* baseline neutrals, one notch brighter for small text */
body.rg-dusk .rg2-note, body.rg-dusk .rg-cardnote, body.rg-dusk .rg-note, body.rg-dusk .rg2-crumb, body.rg-dusk .rg-fld small{color:#A7AEB8}
body.rg-dusk .rg2-eyebrow, body.rg-dusk .rg-eyebrow, body.rg-dusk [class*="eyebrow"]{color:#97A1AC}
body.rg-dusk .rg-when{color:#97A1AC}
body.rg-dusk a:not([class]){color:#D6DAE0;text-decoration-color:#5A6470}
body.rg-dusk .rg-act{background:#1B2027;border-color:#4A5560;color:#D6DAE0}
body.rg-dusk .rg-act:hover{border-color:#C96A7C;color:#EDEDEA}

/* ==== 2.17.1 — builder & fit surfaces, dusk-safe by class ==== */
.rg-code{background:#EFEDE8;padding:2px 8px;border-radius:3px;font-size:.92em}
.rg-mut{color:#3B3D44}
.rg-mut2{color:#6C6F78}
.rg-fit{background:#EFEDE8;border-left:4px solid #2E6F52;padding:12px 16px;max-width:60ch;margin:16px 0 0}
.rg-fit.is-warn{border-left-color:#7A2233}
.rg-fit .rg-avoidline{color:#7A2233;font-weight:700}
body.rg-dusk .rg-code{background:#232833;color:#E8E6E1}
body.rg-dusk .rg-mut{color:#C9CDD3}
body.rg-dusk .rg-mut2{color:#9AA1AB}
body.rg-dusk .rg-fit{background:#1B2027}
body.rg-dusk .rg-fit .rg-avoidline{color:#E08A9B}
