/* Read your way: the site-wide reading settings and the reading bar.
   Defaults (no JavaScript needed): Atkinson Hyperlegible Next, wide spacing, warm sepia.
   Values for wide spacing and warm sepia come from the_texas_standard_manifesto_a11y.html. */
:root{
  --rb-font:'Atkinson Hyperlegible Next','Atkinson Hyperlegible',Verdana,Tahoma,sans-serif;
  --rb-scale:1;--rb-lh:1.95;--rb-ls:0.045em;--rb-ws:0.14em;
}
html[data-rb-font="serif"]{--rb-font:'Source Serif 4',Georgia,'Times New Roman',serif}
html[data-rb-spacing="normal"]{--rb-lh:1.7;--rb-ls:normal;--rb-ws:normal}

/* Text size: rem-based pages scale from the root; shared-style pages scale in site.css */
html{font-size:calc(100% * var(--rb-scale))}

/* The reading face for all body text. Headings keep their own display faces. */
html:not(#rb) body{font-family:var(--rb-font)!important}

/* Spacing for running text, leaving labels, big numbers and display lines alone */
html:not(#rb) body :is(p,li,dd,blockquote):not(.rb-ui *):not(.card-kicker):not([style*="text-transform:uppercase"]):not([style*="font-family:var(--font-heading)"]):not(.kicker):not(.words):not(.thesis-label):not(.hashtags){
  line-height:var(--rb-lh)!important;letter-spacing:var(--rb-ls)!important;word-spacing:var(--rb-ws)!important}

/* Backgrounds (pages that use site.css; the older standalone pages keep their own designs) */
html[data-rb-theme="contrast"]{--rb-busted:#B71C1C;--color-bg:#ffffff;--color-text:#000000;--color-accent:#0b3a8a;--color-accent-300:#0b3a8a;--color-accent-900:#e6ecf7;
  --color-neutral-700:#000000;--color-neutral-900:#f2f2f2;--color-section:#f2f2f2;--color-section-glow:#f2f2f2;--color-divider:#000000;
  --rb-sheet:#ffffff;--rb-ink:#000000;--rb-line:#000000;--rb-muted:#000000}
html[data-rb-theme="dark"]{--rb-busted:#FF5A4E;--color-bg:#15171b;--color-text:#eceff4;--color-accent:#9dbcff;--color-accent-300:#9dbcff;--color-accent-900:#25324a;
  --color-neutral-700:#3a3f48;--color-neutral-900:#20242b;--color-section:#1d2026;--color-section-glow:#26303d;--color-divider:#3a3f48;
  --rb-sheet:#1d2026;--rb-ink:#eceff4;--rb-line:#3a3f48;--rb-muted:#c3c9d3}
html[data-rb-theme="contrast"] :is(.nav a:not(.btn),.tag-neutral,.table th,.card-body){color:#000}
html[data-rb-theme="contrast"] :is(.card,.tag-neutral){background:#fff;border-color:#000}
html[data-rb-theme="dark"] :is(.nav a:not(.btn),.tag-neutral,.table th,.card-body){color:#c3c9d3}
html[data-rb-theme="dark"] :is(.card,.tag-neutral){background:#1d2026}
html[data-rb-theme="dark"] .btn-primary:hover{background:#cfd6e2}
html[data-rb-theme="dark"] ::selection{background:rgba(157,188,255,.25)}

/* The paragraph being read aloud */
.rb-speaking{outline:3px solid #FFA000;outline-offset:4px;border-radius:2px}

/* The reading bar */
.rb-ui{font-family:'Atkinson Hyperlegible Next','Atkinson Hyperlegible',Verdana,sans-serif!important;letter-spacing:normal;word-spacing:normal;line-height:1.35;
  --rb-ui-bg:#fffaf0;--rb-ui-ink:#1c1712;--rb-ui-line:#cdbf9f;--rb-ui-soft:#efe5d0}
html[data-rb-theme="dark"] .rb-ui{--rb-ui-bg:#1d2026;--rb-ui-ink:#eceff4;--rb-ui-line:#4a515c;--rb-ui-soft:#2a2f37}
html[data-rb-theme="contrast"] .rb-ui{--rb-ui-bg:#fff;--rb-ui-ink:#000;--rb-ui-line:#000;--rb-ui-soft:#f2f2f2}
.rb-toggle{position:fixed;right:16px;bottom:16px;z-index:2147483000;display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:10px 18px 10px 14px;
  border-radius:999px;border:2px solid #FFA000;background:#1b1a17;color:#fff;font-size:17px;font-weight:700;cursor:pointer;box-shadow:0 4px 18px rgba(0,0,0,.25)}
.rb-toggle .rb-aa{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#FFA000;color:#1b1a17;font-size:15px;font-weight:700}
.rb-toggle:focus-visible,.rb-ui button:focus-visible{outline:3px solid #FFA000;outline-offset:3px}
.rb-panel{position:fixed;right:16px;bottom:76px;z-index:2147483000;width:min(380px,calc(100vw - 32px));max-height:min(78vh,640px);overflow:auto;
  background:var(--rb-ui-bg);color:var(--rb-ui-ink);border:2px solid var(--rb-ui-line);border-radius:12px;padding:16px 16px 12px;box-shadow:0 10px 40px rgba(0,0,0,.28)}
.rb-panel[hidden]{display:none}
.rb-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 6px}
.rb-title{font-size:19px;font-weight:700;margin:0}
.rb-x{min-width:44px;min-height:44px;border:0;background:transparent;color:inherit;font-size:26px;line-height:1;cursor:pointer;border-radius:8px}
.rb-row{margin:12px 0 0}
.rb-label{display:block;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;opacity:.85}
.rb-opts{display:flex;flex-wrap:wrap;gap:6px}
.rb-ui .rb-opts button{min-height:44px;padding:8px 14px;border-radius:8px;border:1.5px solid var(--rb-ui-line);background:var(--rb-ui-soft);color:var(--rb-ui-ink);font:inherit;font-size:16px;cursor:pointer}
.rb-ui .rb-opts button[aria-pressed="true"]{background:var(--rb-ui-ink);color:var(--rb-ui-bg);border-color:var(--rb-ui-ink);font-weight:700}
.rb-ui .rb-opts button:disabled{opacity:.45;cursor:default}
.rb-size{min-width:64px;display:inline-grid;place-items:center;font-weight:700;font-size:16px}
.rb-note{font-size:14px;opacity:.8;margin:14px 0 2px}
.rb-loop{border-top:1px solid var(--rb-ui-line);padding-top:12px;margin-top:16px}
.rb-ask[hidden],.rb-thanks[hidden],.rb-count[hidden]{display:none}
.rb-count{font-size:15px;font-weight:700;margin:8px 0 0}
.rb-thanks{font-size:15px;margin:8px 0 0}
.rb-quote{margin:12px 0 0;padding:2px 0 2px 12px;border-left:3px solid #FFA000;font-size:15px}
.rb-quote p{margin:0 0 4px;font-style:italic}
.rb-quote a{color:inherit;font-weight:700}
@media print{.rb-ui{display:none!important}.rb-speaking{outline:0}}
