/* The shared reader layout (Overseer's 2026-09-25 order, sha256 aa36eee7…): one header, one native reading area, the contents,
   one footer. Loads after reader.css. The header height is the one number the article must know: the slot sets --stick so the
   article's own sticky spine sits beneath the header, and scroll-padding keeps every anchored heading clear of it. */
:root{--rd-header-h:3.25rem}
html{scroll-padding-top:calc(var(--rd-header-h) + .75rem)}
.rd-guide-body{background:#fff;color:#000}

/* the header */
.rd-ghead{position:sticky;top:0;z-index:40;background:#000;color:#fff;height:var(--rd-header-h)}
.rd-ghead-in{display:flex;align-items:center;gap:.75rem;height:100%;min-width:0}
.rd-glabel{flex:1 1 auto;min-width:0;font:600 .8125rem/1.3 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rd-gbtn{flex:none;border:2px solid #fff;background:#000;color:#fff;font:600 .8125rem/1 var(--sans);letter-spacing:.05em;text-transform:uppercase;padding:.5rem .75rem;cursor:pointer;border-radius:0;list-style:none}
.rd-gbtn:hover{background:#fff;color:#000}
.rd-gbtn[aria-expanded="true"]{background:#fff;color:#000}
.rd-gmore{position:relative;flex:none}
.rd-gmore summary{display:inline-block}
.rd-gmore summary::-webkit-details-marker{display:none}
.rd-gmore-list{position:absolute;right:0;top:calc(100% + .5rem);min-width:18rem;max-width:min(24rem,calc(100vw - 2.5rem));margin:0;padding:.5rem 0;list-style:none;background:#000;color:#fff;border:2px solid #fff;z-index:41}
.rd-gmore-list li{margin:0}
.rd-gmore-list a,.rd-gmore-list span{display:block;padding:.625rem 1rem;font:400 .9375rem/1.4 var(--sans);color:#fff;text-decoration:none}
.rd-gmore-list a:hover{background:#fff;color:#000}
.rd-gmore-list span{color:#bbb}
.rd-gmore-list i{font-style:normal;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase;margin-left:.5rem}
@media (max-width:40rem){.rd-glabel{font-size:.75rem}.rd-gbtn{padding:.5rem .5rem;font-size:.75rem}}

/* the reading area: the notices once, then the article as it is */
.rd-gnotices{padding-top:1.5rem;padding-bottom:0}
.rd-gnotices:empty{display:none}
.rd-gnotices .rd-band{margin-bottom:0}
/* 2026-09-28 (Zach: "a weird gap where the top header meets the cover ... on the left and right, at least on a 4k monitor"): the strip
   renders nothing when it holds nothing (its template leaves whitespace, so :empty never matched and its top padding showed as a white
   band), starts flush under the header when there is no access reminder, and the notice band runs edge to edge, its text where it was */
.rd-gnotices:not(:has(*)){display:none}
.rd-gnotices:not(:has(.rd-remind)){padding-top:0}
.rd-gnotices .rd-band{margin-left:-4rem;margin-right:-4rem;padding-left:6rem;padding-right:6rem}
@media (max-width:68rem){.rd-gnotices .rd-band{margin-left:-2.5rem;margin-right:-2.5rem;padding-left:4.5rem;padding-right:4.5rem}}
@media (max-width:40rem){.rd-gnotices .rd-band{margin-left:-1.25rem;margin-right:-1.25rem;padding-left:1.25rem;padding-right:1.25rem}}
.rd-gnotices .rd-band{border-image:linear-gradient(#000 0 0) fill 0/0/0 100vmax}
.rd-gbody{--stick:var(--rd-header-h)}
.rd-gbody > *{margin:0}
.rd-gbody iframe{display:none}   /* there is never a frame; a stray one is not a reading surface */
/* Off-screen guide pages skip layout until they near the viewport (with the lazy page setup in
   native_reader_projection): opening a 45-page guide no longer freezes the browser. Print lays out all. */
.rd-gbody section[data-native-page]{content-visibility:auto;contain-intrinsic-size:auto 2000px}
@media print{.rd-gbody section[data-native-page]{content-visibility:visible}}

/* the contents: a plain section at the end without the script; a drawer with it */
.rd-gcont{background:#fff;color:#000;border-top:3px solid #000}
.rd-gcont-in{padding-top:2rem;padding-bottom:3rem}
.rd-gcont-top{display:flex;align-items:baseline;gap:1rem 1.5rem;flex-wrap:wrap;margin-bottom:1.25rem}
.rd-gcont-top h2{margin:0;font:700 2rem/1.15 var(--serif)}
.rd-gcont-scope{font:600 .8125rem/1.3 var(--sans);letter-spacing:.06em;text-transform:uppercase}
.rd-gclose{margin-left:auto}
.rd-ggroup{margin-top:1.5rem}
.rd-ggroup h3{margin:0 0 .5rem;font:600 .875rem/1.4 var(--sans);letter-spacing:.08em;text-transform:uppercase;padding-bottom:.375rem;border-bottom:2px solid #000}
.rd-ggroup ol{list-style:none;margin:0;padding:0;columns:1}
.rd-ggroup li{margin:0;break-inside:avoid}
.rd-ggroup a{display:block;padding:.625rem 0;border-bottom:1px solid var(--hair);font:400 1.125rem/1.4 var(--serif);color:#000;text-decoration:none;overflow-wrap:anywhere}
.rd-gpart{margin-top:1rem}
.rd-gpart h4{margin:0 0 .25rem;font:700 .8125rem/1.4 var(--sans);letter-spacing:.08em;text-transform:uppercase}
.rd-gpart-s{margin:0 0 .375rem;font:italic 400 1rem/1.5 var(--serif);color:#000;max-width:62ch}
.rd-ggroup a:hover{text-decoration:underline;text-underline-offset:3px}
.rd-ggroup a[aria-current="true"]{font-weight:700;padding-left:.75rem;border-left:4px solid var(--red)}
@media (min-width:68rem){.rd-ggroup ol{columns:2;column-gap:3rem}}
.js .rd-gcont{position:fixed;inset:0;z-index:50;display:none;overflow:auto;overscroll-behavior:contain;border-top:0}
.js .rd-gcont.rd-open{display:block}
/* R101 wide screens (Design 2026-10-06): the guide shell uses the reader screens' 1240px container; backgrounds stay full-bleed */
.rd-guide-body .rd-pad{box-sizing:border-box;width:100%;max-width:1240px;margin-left:auto;margin-right:auto}
.js .rd-gcont-in{max-width:70rem;margin:0 auto;padding-top:1.25rem}
.js .rd-gclose{display:inline-block}
.js .rd-gcont.rd-open .rd-gcont-top{position:sticky;top:0;background:#fff;padding:.75rem 0;border-bottom:1px solid var(--hair);z-index:1}
body.rd-gcont-lock{overflow:hidden}

/* the footer */
.rd-gfoot{background:#000;color:#fff;margin-top:4rem;padding-top:2.5rem;padding-bottom:2.5rem}
.rd-gfoot-brand{font:700 .875rem/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase;padding-bottom:1rem;border-bottom:1px solid var(--rule)}
.rd-gfoot-rows{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem}
@media (max-width:40rem){.rd-gfoot-rows{grid-template-columns:minmax(0,1fr)}}
.rd-gfoot-row a,.rd-gfoot-off{display:flex;justify-content:space-between;gap:.5rem 1rem;align-items:baseline;flex-wrap:wrap;padding:1rem 0;border-bottom:1px solid var(--rule);color:#fff;text-decoration:none}
.rd-gfoot-row .rd-t{font:700 1.25rem/1.3 var(--serif);overflow-wrap:anywhere}
.rd-gfoot-row a .rd-t{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.rd-gfoot-row .rd-av{font:600 .8125rem/1.4 var(--sans);letter-spacing:.06em;text-transform:uppercase;border:0;padding:0}
.rd-gfoot-off{color:#bbb}
.rd-gfoot-status{margin:1.25rem 0 0;font:400 1.0625rem/1.55 var(--serif);max-width:62ch}
.rd-failbox-dark{border-color:#fff;color:#fff;margin-top:1.5rem}
.rd-gfoot-end{display:flex;justify-content:space-between;align-items:center;gap:1rem 1.5rem;flex-wrap:wrap;margin-top:2rem}
.rd-gfoot-ret{font:400 1rem/1.5 var(--sans);color:#fff;text-decoration:underline;text-underline-offset:3px}
.rd-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* the guide's section heading and Local Measures' just-in-case part (DC-189; App Claude's spec (b), 2026-09-28). The assembler puts
   <h2 class="guide-section" data-guide-section="…"> at the start of a section's first page, and
   <div class="guide-jic" data-guide-part="just_in_case"><h3>…</h3><p>…</p></div> before the first uncertain local measure, either as a
   sibling before that page's article or as the article's first child. Each is its own white band, stacked above the pages' sticky
   spines and bands, so it reads the same after the black cover as after a white page; the part is quieter than the heading. */
.rd-gbody .guide-section{position:relative;z-index:6;display:block;margin:0;padding:3rem 4rem 1rem;background:#fff;color:#000;
  border-top:6px solid #000;border-bottom:3px solid var(--red);font:900 2.25rem/1.15 var(--serif);letter-spacing:-.01em;
  overflow-wrap:anywhere;scroll-margin-top:var(--rd-header-h)}
.rd-gbody .guide-jic{position:relative;z-index:6;margin:0;padding:1.75rem 4rem 1.25rem;background:#fff;color:#000;border-top:1px solid var(--hair);
  border-bottom:1px solid var(--hair);scroll-margin-top:var(--rd-header-h)}
.rd-gbody .guide-jic h3{margin:0 0 .375rem;font:700 .875rem/1.4 var(--sans);letter-spacing:.08em;text-transform:uppercase}
.rd-gbody .guide-jic p{margin:0;font:italic 400 1.125rem/1.55 var(--serif);max-width:62ch}
/* R101: bands with no inner wrapper are padded so their text meets the 1240 container; the cover plate's own inner
   wrappers (publish-side markup, reader-side override) are capped at the container's content width */
@media (min-width:68.0625rem){.rd-gbody .guide-section,.rd-gbody .guide-jic{padding-left:max(4rem,calc((100% - 1240px)/2 + 4rem));padding-right:max(4rem,calc((100% - 1240px)/2 + 4rem))}
  .rd-gbody .kms-cover-title,.rd-gbody .kms-cover-plate-in{max-width:calc(1240px - 8rem);margin-left:auto;margin-right:auto}}
@media (max-width:68rem){.rd-gbody .guide-section,.rd-gbody .guide-jic{padding-left:2.5rem;padding-right:2.5rem}}
@media (max-width:40rem){.rd-gbody .guide-section{padding:2.25rem 1.25rem .75rem;font-size:1.75rem}
  .rd-gbody .guide-jic{padding:1.5rem 1.25rem 1rem}.rd-gbody .guide-jic p{font-size:1.0625rem}}

/* The nested guide contents (design lane, 2026-09-29; the operator: the contents were "a confusing mess"). Markup: guide_contents.py
   render_web() and guide_contents.html's nested branch. Levels: section (h3: number, name, count) -> part (h4 "Just in Case" /
   "May Be on Your Ballot", with the app's sentence) -> group (h5: jurisdiction, office or court) -> items (designation, short title,
   an optional note line such as a race's candidates). Web prints no page numbers. .rd-nc-empty is the review view's placeholder only. */
.rd-nc{max-width:46rem}
.rd-nc ol{list-style:none;margin:0;padding:0}
.rd-nc-sec{padding:1.5rem 0 .75rem;border-bottom:1px solid #000}
.rd-nc-sec:first-child{padding-top:.5rem}
.rd-nc-sec h3{display:flex;align-items:baseline;gap:.75rem;margin:0 0 .5rem;font:700 1.375rem/1.25 var(--serif);color:#000}
.rd-nc-n{flex:none;width:2.25rem;font:800 .875rem/1 var(--sans);letter-spacing:.04em;color:#555;font-variant-numeric:tabular-nums}
.rd-nc-h{flex:1;min-width:0}
.rd-nc-c{flex:none;font:600 .8125rem/1 var(--sans);color:#555;font-variant-numeric:tabular-nums}
.rd-nc-part,.rd-nc-intro{margin-left:3rem}
.rd-nc-part h4{margin:1.25rem 0 .25rem;padding-top:.625rem;border-top:2px solid #000;font:800 .75rem/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase}
.rd-nc-ps{margin:0 0 .5rem;font:italic 400 .9375rem/1.5 var(--serif);max-width:36rem}
.rd-nc-grp{margin-top:1rem}
.rd-nc-grp:first-child{margin-top:.25rem}
.rd-nc-grp h5{margin:0 0 .125rem;font:700 .9375rem/1.4 var(--serif);color:#000}
.rd-nc-grp h5+.rd-nc-items{margin-left:1rem}
.rd-nc-it a,.rd-nc-it .rd-nc-a{display:flex;gap:.75rem;align-items:baseline;padding:.4375rem 0;border-top:1px solid var(--hair);color:#000;text-decoration:none}
.rd-nc-it:first-child a,.rd-nc-it:first-child .rd-nc-a{border-top:0}
.rd-nc-it a:hover .rd-nc-t,.rd-nc-it a:focus-visible .rd-nc-t{text-decoration:underline;text-underline-offset:3px}
.rd-nc-it a[aria-current="true"]{padding-left:.75rem;border-left:4px solid var(--red)}
/* Full guide (DC-189/197): Local Measures folded by county; the summary is the county heading with its count. */
.rd-nc-fold>summary{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;cursor:pointer;list-style:none;padding:.375rem 0}
.rd-nc-fold>summary::-webkit-details-marker{display:none}
.rd-nc-fold>summary h5{margin:0}
.rd-nc-fold>summary::before{content:'+';flex:none;width:1rem;font:700 1rem/1 var(--sans)}
.rd-nc-fold[open]>summary::before{content:'\2212'}
.rd-nc-fold>ol{margin-left:1.75rem}
.rd-nc-it a[aria-current="true"] .rd-nc-t{font-weight:700}
.rd-nc-d{flex:none;min-width:4.5rem;font:700 .8125rem/1.5 var(--sans);font-variant-numeric:tabular-nums}
[data-guide-section="statewide"] .rd-nc-d{width:7.25rem}
.rd-nc-t{flex:1;min-width:0;font:400 1rem/1.5 var(--serif);overflow-wrap:break-word}
.rd-nc-note{display:block;font:400 .8125rem/1.45 var(--serif);color:#555}
.rd-nc-slot .rd-nc-t{font-style:italic}
.rd-nc-empty .rd-nc-a{margin:.25rem 0;padding:.4375rem .5rem;border:1px dashed #B00020;color:#B00020}
.rd-nc-coming{font:700 .75rem/1.4 var(--sans);letter-spacing:.06em;text-transform:uppercase}
@media (max-width:40rem){.rd-nc-part,.rd-nc-intro{margin-left:0}.rd-nc-sec h3{font-size:1.25rem}.rd-nc-n{width:1.75rem}.rd-nc-d{min-width:3.75rem}
  [data-guide-section="statewide"] .rd-nc-d{width:6.5rem}}

/* The full guide's page (option A, the operator 2026-10-06; DC-34 cards by default). Scoped to .rd-fullguide: the contents drawer and
   the personal guide keep the list above. The article is the 1240 container (.rd-guide-body .rd-pad). Six black section blocks jump
   to the sections (reader_guide_catalog.py; words = each section's own number, heading, count); statewide entries in two columns;
   every county, multi-district office and court is its own card, flowing in three columns (below 60rem the folded counties sit in a
   two-column grid, one on phones, so opening a county grows only its own card). */
.rd-fullguide>h1{margin:2rem 0 1.25rem;font:900 2.5rem/1.15 var(--serif)}
.rd-nc-idx{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0 0 2.5rem}
.rd-nc-idx a{display:flex;flex-direction:column;gap:.5rem;min-height:7.5rem;padding:1rem 1rem .875rem;background:#000;color:#fff;text-decoration:none;border-top:6px solid var(--red)}
.rd-nc-idx a:hover,.rd-nc-idx a:focus-visible{background:var(--red)}
.rd-nc-idx a:focus-visible{outline:3px solid #000;outline-offset:2px}
.rd-nc-idx .rd-nc-n{width:auto;color:#bdbdbd}
.rd-nc-idx a:hover .rd-nc-n,.rd-nc-idx a:focus-visible .rd-nc-n{color:#fff}
.rd-nc-idx-h{flex:1;font:700 1.1875rem/1.25 var(--serif)}
.rd-nc-idx .rd-nc-c{color:#fff;font-size:.875rem}
.rd-fullguide .rd-nc{max-width:none;margin-top:0}
.rd-fullguide .rd-nc-sec{padding:2.25rem 0 1.5rem;border-bottom:0;border-top:3px solid #000}
.rd-fullguide .rd-nc-sec h3{font-size:1.75rem;margin-bottom:1rem}
.rd-fullguide .rd-nc-intro{max-width:36rem;margin-bottom:.75rem}
.rd-fullguide [data-guide-section="front"] .rd-nc-items,.rd-fullguide [data-guide-section="close"] .rd-nc-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 24px}
.rd-fullguide [data-guide-section="statewide"] .rd-nc-grp>.rd-nc-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}
.rd-fullguide [data-guide-section="front"] .rd-nc-it a,.rd-fullguide [data-guide-section="close"] .rd-nc-it a,
.rd-fullguide [data-guide-section="statewide"] .rd-nc-it a{border-top:1px solid var(--hair)}
.rd-fullguide [data-guide-section="local"] .rd-nc-part,.rd-fullguide [data-guide-section="races"] .rd-nc-part,
.rd-fullguide [data-guide-section="judges"] .rd-nc-part{columns:3;column-gap:16px}
.rd-fullguide .rd-nc-part>.rd-nc-grp{break-inside:avoid;page-break-inside:avoid;margin:0 0 16px}
/* Cards (R101 review of the real tree, 2026-10-06): on the web the full guide's Local Measures group by JURISDICTION (county, city,
   town, district: guide_contents.nest without counties), after one headless list of the county ballot pages; State Races interleave
   single-seat offices (office_single, one row each) with the district offices. So: every local group except the county-page list is a
   card, and every race office and court is a card, single-seat offices included; the county-page list runs across the full width. */
.rd-fullguide [data-guide-section="local"] .rd-nc-part>.rd-nc-grp:not([data-group-kind="county_page"]),
.rd-fullguide [data-guide-section="races"] .rd-nc-part>.rd-nc-grp,
.rd-fullguide [data-guide-section="judges"] .rd-nc-part>.rd-nc-grp{padding:.875rem 1rem 1rem;border:1px solid #000;border-top:4px solid #000;background:#fff}
.rd-fullguide [data-guide-section="races"] .rd-nc-grp[data-group-kind="office_single"] .rd-nc-t{font-weight:700}
.rd-fullguide .rd-nc-grp[data-group-kind="county_page"]{column-span:all;margin-bottom:1.5rem}
.rd-fullguide .rd-nc-grp[data-group-kind="county_page"]>.rd-nc-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 24px}
.rd-fullguide .rd-nc-grp[data-group-kind="county_page"] .rd-nc-it a{border-top:1px solid var(--hair)}
.rd-fullguide .rd-nc-part>h4,.rd-fullguide .rd-nc-part>.rd-nc-ps{column-span:all}
.rd-fullguide .rd-nc-grp h5+.rd-nc-items,.rd-fullguide .rd-nc-fold>ol{margin-left:0}
.rd-fullguide .rd-nc-grp h5{font-size:1.0625rem;margin-bottom:.25rem}
.rd-fullguide .rd-nc-grp .rd-nc-d{min-width:2.5rem}
.rd-fullguide .rd-nc-grp .rd-nc-t{font-size:.9375rem}
.rd-fullguide .rd-nc-fold>summary{padding:0 0 .25rem}
.rd-fullguide .rd-nc-fold>summary h5{flex:1;min-width:0}
@media (min-width:60rem){.rd-fullguide .rd-nc-fold>summary::before{display:none}}
@media (max-width:75rem){.rd-nc-idx{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:60rem){.rd-fullguide [data-guide-section="races"] .rd-nc-part,.rd-fullguide [data-guide-section="judges"] .rd-nc-part{columns:2}
  .rd-fullguide [data-guide-section="local"] .rd-nc-part{columns:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
  .rd-fullguide [data-guide-section="local"] .rd-nc-part>.rd-nc-grp{margin:0}
  .rd-fullguide [data-guide-section="local"] .rd-nc-grp[data-group-kind="county_page"]{grid-column:1/-1;margin-bottom:.5rem}
  .rd-fullguide .rd-nc-grp[data-group-kind="county_page"]>.rd-nc-items{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rd-fullguide [data-guide-section="front"] .rd-nc-items,.rd-fullguide [data-guide-section="close"] .rd-nc-items{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:40rem){.rd-fullguide>h1{font-size:1.875rem;margin-top:1.25rem}
  .rd-nc-idx{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:1.5rem}
  .rd-nc-idx a{min-height:5.5rem;padding:.75rem}
  .rd-nc-idx-h{font-size:1rem}
  .rd-fullguide [data-guide-section] .rd-nc-items,.rd-fullguide [data-guide-section] .rd-nc-grp>.rd-nc-items{display:block}
  .rd-fullguide [data-guide-section="races"] .rd-nc-part,.rd-fullguide [data-guide-section="judges"] .rd-nc-part{columns:1}
  .rd-fullguide [data-guide-section="local"] .rd-nc-part{grid-template-columns:minmax(0,1fr);gap:8px}
  .rd-fullguide .rd-nc-sec h3{font-size:1.375rem}}
/* R101b (Design, 2026-10-06): the 200px measure-page menu clipped nowrap labels; wrap them (beats template-web-v3.css:37). */
.rd-gbody [data-native-body].v3 .spine nav a:not(.support){white-space:normal}

/* The provisional reminder in the guide (the operator, 2026-10-06): part of the guide's notice system, not a loose strip. A white
   band under the header with the guide's red rule; "Confirm your email" in the guide's serif in the notice band's label column, the
   approved text in the guide's body serif beside it, on the same grid and left edges as "How we prepared your guide" below it.
   Scoped to the guide shell (.rd-gnotices); the reader screens' own reminder styles are untouched. */
.rd-gnotices:has(.rd-remind){padding-top:0}
.rd-gnotices .rd-remind{display:grid;grid-template-columns:16.25rem minmax(0,1fr);gap:.5rem 2.5rem;align-items:baseline;max-width:none;
  margin:0 -4rem;padding:1.75rem 6rem 2rem;border:0;border-top:6px solid var(--red);background:#fff;color:#000;
  border-image:linear-gradient(var(--red) 0 6px,#fff 6px) fill 0/0/0 100vmax}  /* red rule and white band edge to edge, like the bands around it */
.rd-gnotices .rd-remind p{margin:0;grid-column:2;font:400 1.125rem/1.55 var(--serif);max-width:62ch}
.rd-gnotices .rd-remind .rd-remind-h{grid-column:1;grid-row:1 / span 2;font:700 1.5rem/1.2 var(--serif);letter-spacing:-.005em}
.rd-gnotices .rd-remind .rd-remind-h strong{font-weight:inherit}
.rd-gnotices .rd-remind .rd-remind-link{font:600 1rem/1.5 var(--sans)}
.rd-gnotices .rd-remind + .rd-band{margin-top:0}
@media (max-width:68rem){.rd-gnotices .rd-remind{grid-template-columns:minmax(0,1fr);margin:0 -2.5rem;padding:1.5rem 4.5rem 1.75rem}
  .rd-gnotices .rd-remind p,.rd-gnotices .rd-remind .rd-remind-h{grid-column:1;grid-row:auto}}
@media (max-width:40rem){.rd-gnotices .rd-remind{margin:0 -1.25rem;padding:1.25rem 1.25rem 1.5rem}
  .rd-gnotices .rd-remind .rd-remind-h{font-size:1.25rem}.rd-gnotices .rd-remind p{font-size:1.0625rem}}

/* R101e (Design): the full guide's downloads inside the Contents drawer, phones only */
.rd-gcont-dl{display:none;list-style:none;margin:0 0 1rem;padding:0}
@media (max-width:40rem){.rd-gcont-dl{display:block}}
.rd-gcont-dl a{display:block;padding:.625rem 0;border-bottom:1px solid var(--hair);font:600 .9375rem/1.4 var(--sans);color:#000;text-decoration:underline;text-underline-offset:3px}
/* R101e: Design's unified header block v6 (final), verbatim (project/handoffs/design-20261007-unified-header/GBTN.css, 3aa25ae2b3) */
/* KMS Colorado Voter's Guide 2026: ONE header-button and sticky-header definition for every view (Design, 2026-10-07; the operator's
   unified-header order, project/handoffs/seat-20261007/UNIFIED-HEADER-SPEC.md). Used VERBATIM in two places: Overseer's launch edge
   injection (static guide pages, hubs, landing) and App Claude's reader-guide.css (the reader app: /guide/ and every reader page).
   Each rule only applies where its selectors match, so the same text is safe in both. Colours per the operator's amendment 2 (section 1). Every button >= 44 px. */

/* 1. The one button look (static pages .pbtns a, landing/hub header links, reader .rd-gbtn) */
body.v3 .pstrip .pbtns a, .gp .ptop .pbtns a,
header[data-ptop-wrap] a[href$="#form"], header[data-ptop-wrap] a[href*="support-kim"],
.rd-ghead .rd-gbtn {
  box-sizing: border-box !important; min-height: 44px !important; display: inline-flex !important; align-items: center !important;
  justify-content: center !important; padding: 0 14px !important; font: 600 13px/1.2 var(--sans, 'Merriweather Sans', Arial, sans-serif) !important;
  letter-spacing: .05em !important; text-transform: uppercase !important; text-decoration: none !important; white-space: nowrap !important;
  border: 1px solid #fff !important; border-radius: 0 !important; background: transparent !important; color: #fff !important; cursor: pointer;
}
/* Colours (the operator's amendment 2, 2026-10-07). ONE red per header.
   PUBLIC (static pages, hubs, landing, the public /guide/ = a reader header WITH .rd-gget):
     GET YOUR GUIDE solid red; SUPPORT KIM'S WORK solid white, black text; CONTENTS outlined.
   READERS (a reader header WITHOUT .rd-gget): SUPPORT KIM'S WORK solid red; SEE THE FULL GUIDE, CONTENTS, DOWNLOADS outlined. */
body.v3 .pstrip .pbtns a.req, .gp .ptop .pbtns a.req, header[data-ptop-wrap] a[href$="#form"], .rd-ghead .rd-gget,
.rd-ghead:not(:has(.rd-gget)) .rd-gsup {
  background: #E34234 !important; border-color: #E34234 !important; color: #fff !important;
}
body.v3 .pstrip .pbtns a.req:hover, .gp .ptop .pbtns a.req:hover, header[data-ptop-wrap] a[href$="#form"]:hover, .rd-ghead .rd-gget:hover,
.rd-ghead:not(:has(.rd-gget)) .rd-gsup:hover,
body.v3 .pstrip .pbtns a.req:focus-visible, .gp .ptop .pbtns a.req:focus-visible, header[data-ptop-wrap] a[href$="#form"]:focus-visible,
.rd-ghead .rd-gget:focus-visible, .rd-ghead:not(:has(.rd-gget)) .rd-gsup:focus-visible { background: #B1382B !important; border-color: #B1382B !important; color: #fff !important; }
/* public SUPPORT: solid white, black text */
body.v3 .pstrip .pbtns a.sup, .gp .ptop .pbtns a.sup, header[data-ptop-wrap] a[href*="support-kim"], .rd-ghead:has(.rd-gget) .rd-gsup {
  background: #fff !important; border-color: #fff !important; color: #1A1A1A !important;
}
body.v3 .pstrip .pbtns a.sup:hover, .gp .ptop .pbtns a.sup:hover, header[data-ptop-wrap] a[href*="support-kim"]:hover, .rd-ghead:has(.rd-gget) .rd-gsup:hover,
body.v3 .pstrip .pbtns a.sup:focus-visible, .gp .ptop .pbtns a.sup:focus-visible, header[data-ptop-wrap] a[href*="support-kim"]:focus-visible,
.rd-ghead:has(.rd-gget) .rd-gsup:focus-visible { background: #E6E6E6 !important; border-color: #E6E6E6 !important; color: #1A1A1A !important; }
/* outlined (CONTENTS, DOWNLOADS, SEE THE FULL GUIDE): hover = white fill */
.rd-ghead .rd-gcontents-btn:hover, .rd-ghead .rd-gmore > summary.rd-gbtn:hover, .rd-ghead .rd-gfull:hover, .rd-ghead .rd-gback:hover, .rd-ghead .rd-gback:focus-visible,
.rd-ghead .rd-gcontents-btn:focus-visible, .rd-ghead .rd-gmore > summary.rd-gbtn:focus-visible, .rd-ghead .rd-gfull:focus-visible { background: #fff !important; color: #1A1A1A !important; }
.rd-gmore summary.rd-gbtn::-webkit-details-marker { display: none; }

/* 2. The header stays in front of the reader while scrolling (the reader's .rd-ghead is already sticky) */
header.ptop, header[data-ptop-wrap] > div:first-child { position: sticky !important; top: 0 !important; z-index: 60 !important; }
/* landing and hubs: only the top strip sticks; the second row (guide name + The Full Guide) scrolls away like a measure page's breadcrumb */
header[data-ptop-wrap] { display: contents !important; }
body.v3, .gp { --stick: 60px; }                 /* the page's own sticky menu (spine) sits under the header */

/* 3. Brand printed once: the header's wordmark carries it at every width; the guide pages' hero brand line is hidden */
.gp .gp-brand, .gp-khead .gp-brand { display: none !important; }

/* 4. Phones (<= 40rem): two rows inside the sticky header. Row 1: the wordmark + the red button. Row 2: every other button. Nothing
   in a hidden menu (the operator's amendment). Static guide pages and hubs/landing: */
@media (max-width: 40rem) {
  body.v3 .pstrip .brand, .gp .ptop .pstrip .brand,
  header[data-ptop-wrap] [data-strip] > div:first-child > span:not([data-vg-wordmark]) { display: none !important; }
  body.v3 .pstrip, .gp .ptop .pstrip, header[data-ptop-wrap] [data-strip] {
    display: grid !important; grid-template-columns: minmax(0, 1fr) auto !important; align-items: center !important; gap: 8px !important;
    padding-top: 8px !important; padding-bottom: 8px !important;
  }
  body.v3 .pstrip .pbtns, .gp .ptop .pbtns, header[data-ptop-wrap] [data-strip] > div:last-child { display: contents !important; }
  body.v3 .pstrip .pleft, .gp .ptop .pleft, header[data-ptop-wrap] [data-strip] > div:first-child { grid-column: 1 !important; grid-row: 1 !important; }
  body.v3 .pstrip .pbtns a.req, .gp .ptop .pbtns a.req, header[data-ptop-wrap] a[href$="#form"] { grid-column: 2 !important; grid-row: 1 !important; }
  body.v3 .pstrip .pbtns a:not(.req), .gp .ptop .pbtns a:not(.req), header[data-ptop-wrap] a[href*="support-kim"] {
    grid-column: 1 / -1 !important; grid-row: 2 !important; justify-self: stretch !important;
  }
  body.v3, .gp { --stick: 112px; }
}
.rd-ghead { position: sticky !important; top: 0 !important; z-index: 40; }

/* 5. A SIGNED-IN reader's render of a static guide page (the reader marks the frozen strip <header class="ptop" data-reader-signed>, and
   swaps a.req to SEE THE FULL GUIDE, new tab): reader colours, so SUPPORT is the one red and SEE THE FULL GUIDE is outlined. */
header.ptop[data-reader-signed] .pbtns a.req { background: transparent !important; border-color: #fff !important; color: #fff !important; }
header.ptop[data-reader-signed] .pbtns a.req:hover, header.ptop[data-reader-signed] .pbtns a.req:focus-visible { background: #fff !important; color: #1A1A1A !important; }
header.ptop[data-reader-signed] .pbtns a.sup { background: #E34234 !important; border-color: #E34234 !important; color: #fff !important; }
header.ptop[data-reader-signed] .pbtns a.sup:hover, header.ptop[data-reader-signed] .pbtns a.sup:focus-visible { background: #B1382B !important; border-color: #B1382B !important; color: #fff !important; }
@media (max-width: 40rem) {
  header.ptop[data-reader-signed] .pbtns a.sup { grid-column: 2 !important; grid-row: 1 !important; justify-self: auto !important; }
  header.ptop[data-reader-signed] .pbtns a.req { grid-column: 1 / -1 !important; grid-row: 2 !important; justify-self: stretch !important; }
}

/* 6. One header across views (the seat's checks, 2026-10-07): one background (#1A1A1A, the approved static look) and ONE left edge for the
   header, the breadcrumb and the landing's second row, equal to the page's own .pad: 20 px (x = 40 at 1280), 44 px from 601 to 1100 px,
   20 px at 600 and below. */
header.ptop, header[data-ptop-wrap] > div:first-child, .rd-ghead { background: #1A1A1A !important; }
header.ptop .pad, header[data-ptop-wrap] [data-strip], .rd-ghead .rd-ghead-in, .gp .crumbs .pad {
  box-sizing: border-box !important; max-width: 1240px !important; margin-left: auto !important; margin-right: auto !important;
  padding-left: 20px !important; padding-right: 20px !important;
}
/* the landing's second row runs full width, like a measure page's breadcrumb, with its words on the same left edge */
header[data-ptop-wrap] > [data-pad] {
  box-sizing: border-box !important; max-width: none !important; margin: 0 !important;
  padding-left: max(20px, calc((100% - 1200px) / 2)) !important; padding-right: max(20px, calc((100% - 1200px) / 2)) !important;
}
header[data-ptop-wrap] [data-strip] > div:last-child { border-left: 0 !important; }   /* the landing's grey divider before the buttons: no static page has it */
header[data-ptop-wrap] [data-ptop] { justify-content: flex-start !important; align-items: flex-start !important; }   /* phones stack it: left, not centred */
@media (min-width: 601px) and (max-width: 1100px) {
  header.ptop .pad, header[data-ptop-wrap] [data-strip], .rd-ghead .rd-ghead-in, .gp .crumbs .pad, header[data-ptop-wrap] > [data-pad] {
    padding-left: 44px !important; padding-right: 44px !important;
  }
}
/* the label beside the wordmark: the same words in every view, the brand printed once ("Kim Monson" is the wordmark) */
body.v3 .pstrip .brand, .gp .ptop .pstrip .brand, header[data-ptop-wrap] [data-strip] > div:first-child > span:not([data-vg-wordmark]),
.rd-ghead .rd-glabel { font-size: 0 !important; letter-spacing: 0 !important; white-space: nowrap !important; }
body.v3 .pstrip .brand::before, .gp .ptop .pstrip .brand::before,
header[data-ptop-wrap] [data-strip] > div:first-child > span:not([data-vg-wordmark])::before, .rd-ghead .rd-glabel::before {
  content: "Colorado Voter's Guide 2026"; content: "Colorado Voter's Guide 2026" / "";   /* v13: decorative (the element's own text, set by guide-tools.js, is what a screen reader reads); the first line is the fallback where "/ alt" is unsupported */
  font: 600 13px/1.4 var(--sans, 'Merriweather Sans', Arial, sans-serif); letter-spacing: .06em;
  text-transform: uppercase; color: #fff;
}
/* up to 1100 px the label does not fit beside the wordmark and every viewer's buttons at the page's gutter (measured): the wordmark stands alone */
@media (max-width: 1100px) {
  body.v3 .pstrip .brand, .gp .ptop .pstrip .brand, header[data-ptop-wrap] [data-strip] > div:first-child > span:not([data-vg-wordmark]),
  .rd-ghead .rd-glabel { display: none !important; }
}
.rd-ghead .rd-kms { font: 900 20px/1 var(--serif, Merriweather, Georgia, serif) !important; }   /* the wordmark at the static pages' size */
header[data-ptop-wrap] a[href$="/guide/"] { text-transform: capitalize !important; }          /* "The Full Guide" (title-case ruling) */
/* 7. The page's section menu (spine) never clips a label (the operator, 2026-10-06 6:56 PM). Up to 1100 px it wraps and stays in the
   page flow, as local pages already do (ruling 2026-09-20), instead of a sideways strip that runs off the screen. */
@container (max-width: 1100px) {
  body.v3 .spine { overflow: visible !important; position: static !important; max-height: none !important; }
  body.v3 .spine nav { flex-wrap: wrap !important; width: auto !important; max-width: 100% !important; row-gap: 8px !important; }
  body.v3 .spine nav a, body.v3 .spine nav a > span:not(.n) { white-space: normal !important; max-width: 100% !important; }
}

/* 8. The reader header (.rd-ghead) on the same terms as the static header, measured on R101e's real markup (2026-10-07).
   Height: 8 + 44 + 8 = 60 px on one row; 8 + 44 + 8 + 44 + 8 = 112 px on two. --rd-header-h follows. */
:root { --rd-header-h: 3.75rem; }
.rd-ghead { height: auto !important; min-height: 0 !important; }
.rd-ghead .rd-ghead-in { height: auto !important; min-height: 60px !important; padding-top: 8px !important; padding-bottom: 8px !important;
  align-items: center !important; column-gap: 10px !important; }
.rd-ghead .rd-glabel { flex: 1 1 auto; margin-left: 4px !important; }   /* 10 + 4 = the static strip's 14 px between wordmark and label */
.rd-ghead .rd-kms { margin-right: auto !important; }   /* buttons sit at the right edge whether or not the label shows */
/* The reader's content on the header's left edge (as on static pages: header, breadcrumb and content at one x) */
.rd-gbody > .rd-pad, .rd-gnotices.rd-pad {
  box-sizing: border-box !important; max-width: 1240px !important; margin-left: auto !important; margin-right: auto !important;
  padding-left: 20px !important; padding-right: 20px !important;
}
@media (min-width: 601px) and (max-width: 1100px) { .rd-gbody > .rd-pad, .rd-gnotices.rd-pad { padding-left: 44px !important; padding-right: 44px !important; } }
/* Two rows only where a viewer's buttons no longer fit one row at the page's gutter: public (GET YOUR GUIDE, CONTENTS, SUPPORT) below
   720 px; readers (SEE THE FULL GUIDE, CONTENTS, DOWNLOADS, SUPPORT) below 880 px. Row 1: wordmark + the one red button; row 2: the rest,
   sharing the width, each on one line. Nothing goes into a hidden menu. */
@media (max-width: 719px) {
  :root:has(.rd-gget) { --rd-header-h: 7rem; }
  .rd-ghead:has(.rd-gget) .rd-ghead-in { flex-wrap: wrap !important; row-gap: 0 !important; column-gap: 8px !important; min-height: 0 !important; }
  .rd-ghead:has(.rd-gget) .rd-glabel { display: none !important; }
  .rd-ghead:has(.rd-gget) .rd-kms { order: 0; flex: 1 1 auto; }
  .rd-ghead:has(.rd-gget) .rd-gget { order: 1; flex: 0 0 auto; }
  .rd-ghead:has(.rd-gget) .rd-ghead-in::after { content: ""; order: 2; flex-basis: 100%; height: 0; }
  .rd-ghead:has(.rd-gget) .rd-gcontents-btn, .rd-ghead:has(.rd-gget) .rd-gsup { order: 3; flex: 1 1 auto; min-width: 0; margin-top: 8px !important; }
}
@media (max-width: 879px) {
  :root:has(.rd-ghead):not(:has(.rd-gget)) { --rd-header-h: 7rem; }
  .rd-ghead:not(:has(.rd-gget)) .rd-ghead-in { flex-wrap: wrap !important; row-gap: 0 !important; column-gap: 8px !important; min-height: 0 !important; }
  .rd-ghead:not(:has(.rd-gget)) .rd-glabel { display: none !important; }
  .rd-ghead:not(:has(.rd-gget)) .rd-kms { order: 0; flex: 1 1 auto; }
  .rd-ghead:not(:has(.rd-gget)) .rd-gsup { order: 1; flex: 0 0 auto; }
  .rd-ghead:not(:has(.rd-gget)) .rd-ghead-in::after { content: ""; order: 2; flex-basis: 100%; height: 0; }
  .rd-ghead:not(:has(.rd-gget)) .rd-gfull, .rd-ghead:not(:has(.rd-gget)) .rd-gback, .rd-ghead:not(:has(.rd-gget)) .rd-gcontents-btn, .rd-ghead:not(:has(.rd-gget)) .rd-gmore { flex: 1 1 auto; min-width: 0; margin-top: 8px !important; }
  .rd-ghead:not(:has(.rd-gget)) .rd-gfull, .rd-ghead:not(:has(.rd-gget)) .rd-gback { order: 3; } .rd-ghead:not(:has(.rd-gget)) .rd-gcontents-btn { order: 4; } .rd-ghead:not(:has(.rd-gget)) .rd-gmore { order: 5; }
  .rd-ghead:not(:has(.rd-gget)) .rd-gmore > summary.rd-gbtn { width: 100%; }
}
/* phones: every button stays on one line at 360 (measured). Public row 2 keeps 13 px. A reader's row 2 has three buttons, which need
   11.5 px with 6 px sides; the reader's red SUPPORT on row 1 needs 10 px sides to sit beside the wordmark. */
@media (max-width: 40rem) {
  .rd-ghead:not(:has(.rd-gget)) .rd-gfull, .rd-ghead:not(:has(.rd-gget)) .rd-gback, .rd-ghead:not(:has(.rd-gget)) .rd-gcontents-btn, .rd-ghead:not(:has(.rd-gget)) .rd-gmore > summary.rd-gbtn {
    font-size: 11.5px !important; padding: 0 6px !important; letter-spacing: .02em !important; }
  .rd-ghead:not(:has(.rd-gget)) .rd-gsup, header.ptop[data-reader-signed] .pbtns a.sup { padding: 0 10px !important; letter-spacing: .03em !important; }
}

/* 9. ONE ORDER (the seat, 2026-10-07): the red primary comes first in the button group on every view (row 1 on phones), then the rest in
   the spec's priority. Public: GET YOUR GUIDE, CONTENTS, SUPPORT. Readers: SUPPORT, SEE THE FULL GUIDE (or MY GUIDE on the signed-in /guide/), CONTENTS, DOWNLOADS. CSS order,
   so it holds whatever order the markup prints. These are the one-row widths; the two-row rules in section 8 order the phone rows. */
@media (min-width: 720px) {
  .rd-ghead:has(.rd-gget) .rd-kms { order: -3; } .rd-ghead:has(.rd-gget) .rd-glabel { order: -2; } .rd-ghead:has(.rd-gget) .rd-gget { order: -1; }
  .rd-ghead:has(.rd-gget) .rd-gcontents-btn { order: 1; } .rd-ghead:has(.rd-gget) .rd-gsup { order: 2; }
}
@media (min-width: 880px) {
  .rd-ghead:not(:has(.rd-gget)) .rd-kms { order: -3; } .rd-ghead:not(:has(.rd-gget)) .rd-glabel { order: -2; } .rd-ghead:not(:has(.rd-gget)) .rd-gsup { order: -1; }
  .rd-ghead:not(:has(.rd-gget)) .rd-gfull, .rd-ghead:not(:has(.rd-gget)) .rd-gback { order: 1; } .rd-ghead:not(:has(.rd-gget)) .rd-gcontents-btn { order: 2; } .rd-ghead:not(:has(.rd-gget)) .rd-gmore { order: 3; }
}
header.ptop[data-reader-signed] .pbtns a.sup { order: -1; }

/* 10. A signed-in reader's question page (header.ptop[data-reader-signed]): SUPPORT (red), SEE THE FULL GUIDE, CONTENTS, DOWNLOADS
   (a.sup, a.req, a.cnt, a.dl; amendment 1). Four buttons need about 830 px at the 44 px gutter, so the strip takes the reader's rule:
   one row from 880 px, two rows below (row 1: wordmark + SUPPORT; row 2: the rest, each on one line), 112 px on phones. */
header.ptop[data-reader-signed] .pbtns a.req { order: 0; } header.ptop[data-reader-signed] .pbtns a.cnt { order: 1; }
header.ptop[data-reader-signed] .pbtns a.dl { order: 2; }
header.ptop[data-reader-signed] .pbtns a.cnt:hover, header.ptop[data-reader-signed] .pbtns a.dl:hover,
header.ptop[data-reader-signed] .pbtns a.cnt:focus-visible, header.ptop[data-reader-signed] .pbtns a.dl:focus-visible { background: #fff !important; color: #1A1A1A !important; }
@media (max-width: 879px) {
  header.ptop[data-reader-signed] .pstrip { display: flex !important; flex-wrap: wrap !important; align-items: center !important;
    column-gap: 8px !important; row-gap: 0 !important; padding-top: 8px !important; padding-bottom: 8px !important; }
  header.ptop[data-reader-signed] .pbtns { display: contents !important; }
  header.ptop[data-reader-signed] .pleft { order: 0; flex: 1 1 auto !important; }
  header.ptop[data-reader-signed] .pstrip .brand { display: none !important; }
  header.ptop[data-reader-signed] .pbtns a.sup { order: 1; flex: 0 0 auto !important; }
  header.ptop[data-reader-signed] .pstrip::after { content: ""; order: 2; flex-basis: 100%; height: 0; }
  header.ptop[data-reader-signed] .pbtns a.req, header.ptop[data-reader-signed] .pbtns a.cnt, header.ptop[data-reader-signed] .pbtns a.dl {
    flex: 1 1 auto !important; min-width: 0; margin-top: 8px !important; }
  header.ptop[data-reader-signed] .pbtns a.req { order: 3; } header.ptop[data-reader-signed] .pbtns a.cnt { order: 4; }
  header.ptop[data-reader-signed] .pbtns a.dl { order: 5; }
}
@media (max-width: 40rem) {
  header.ptop[data-reader-signed] .pbtns a.req, header.ptop[data-reader-signed] .pbtns a.cnt, header.ptop[data-reader-signed] .pbtns a.dl {
    font-size: 11.5px !important; padding: 0 6px !important; letter-spacing: .02em !important; }
}

/* 11. Tables never cut off on phones (the operator's order, 2026-10-07). Up to 40rem:
   (a) prose tables (.pintbl.prose) stack into label/value rows, the way the Letter edition prints them: the row label first, then each
       cell under its column name (the cell's own data-label), in the table headers' type;
   (b) figure tables keep their columns and fit the width: the headers wrap in their printed case with no letter-spacing, 8 px between
       columns; figures stay on one line, right-aligned, at full size. */
@media (max-width: 40rem) {
  body.v3 .pintbl.prose, body.v3 .pintbl.prose tbody, body.v3 .pintbl.prose tr, body.v3 .pintbl.prose td { display: block !important; width: auto !important; }
  body.v3 .pintbl.prose thead { display: none !important; }
  body.v3 .pintbl.prose tr { border-top: 1px solid var(--box, #D0D0D0); padding: 10px 0 12px; }
  body.v3 .pintbl.prose td { border: 0 !important; background: none !important; padding: 0 !important; text-align: left !important; white-space: normal !important; }
  body.v3 .pintbl.prose td .cl { border: 0 !important; background: none !important; }
  body.v3 .pintbl.prose td.x[data-label]::before { content: attr(data-label); display: block; margin-top: 8px;
    font: 600 13px/1.3 var(--sans, 'Merriweather Sans', Arial, sans-serif); letter-spacing: .05em; text-transform: uppercase; color: var(--ink, #000); }
  body.v3 .pintbl.prose td.x:not([data-label]) { margin-top: 6px; }
  body.v3 .pintbl:not(.prose) th { letter-spacing: 0 !important; text-transform: none !important; padding-left: 8px !important; overflow-wrap: normal !important; }
  body.v3 .pintbl:not(.prose) td { padding-left: 8px !important; }
  body.v3 .pintbl:not(.prose) th:first-child, body.v3 .pintbl:not(.prose) td:first-child { padding-left: 0 !important; }
}

/* 12. Guide tools: SEARCH and HOW TO USE (the operator's reader-help plan, 2026-10-07; added by guide-tools.js on every view).
   Desktop: one row, the red primary first, then SEARCH and HOW TO USE, then the view's own buttons. Below the one-row width: row 1 =
   wordmark + the red primary; row 2 = a tool row of equal tiles, icon above the word (52 px). On phones a view with CONTENTS keeps search
   inside the CONTENTS panel, and a reader's DOWNLOADS moves there too when that panel lists the downloads (option c). */
.gt-ico { width: 16px; height: 16px; flex: none; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
header[data-ptop-wrap] a.gt-btn, body.v3 .pstrip .pbtns a.gt-btn, .gp .ptop .pbtns a.gt-btn {
  box-sizing: border-box !important; min-height: 44px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important;
  gap: 8px !important; padding: 0 14px !important; font: 600 13px/1.2 var(--sans, 'Merriweather Sans', Arial, sans-serif) !important; letter-spacing: .05em !important;
  text-transform: uppercase !important; text-decoration: none !important; white-space: nowrap !important; border: 1px solid #fff !important; border-radius: 0 !important;
  background: transparent !important; color: #fff !important; cursor: pointer; }
.rd-ghead .rd-gbtn.gt-btn { gap: 8px; }
header[data-ptop-wrap] a.gt-btn:hover, body.v3 .pstrip .pbtns a.gt-btn:hover, .gp .ptop .pbtns a.gt-btn:hover, .rd-ghead .rd-gbtn.gt-btn:hover,
header[data-ptop-wrap] a.gt-btn:focus-visible, body.v3 .pstrip .pbtns a.gt-btn:focus-visible, .rd-ghead .rd-gbtn.gt-btn:focus-visible { background: #fff !important; color: #1A1A1A !important; }
header[data-ptop-wrap] [data-strip] > div:last-child { display: flex; gap: 10px; align-items: center; }
header.ptop[data-reader-signed] .pbtns a.req { order: 1; } header.ptop[data-reader-signed] .pbtns a.cnt { order: 2; } header.ptop[data-reader-signed] .pbtns a.dl { order: 3; }
@media (max-width: 1320px) { .rd-ghead:not(:has(.rd-gget)) .rd-glabel { display: none !important; } }

/* public static pages, hubs, landing: two rows below 860 px */
@media (max-width: 859px) {
  :is(body.v3, .gp) header.ptop .pstrip, header[data-ptop-wrap] [data-strip][data-strip] { display: flex !important; flex-wrap: wrap !important; align-items: center !important;
    column-gap: 8px !important; row-gap: 0 !important; padding-top: 8px !important; padding-bottom: 8px !important; }
  :is(body.v3, .gp) header.ptop .pbtns, header[data-ptop-wrap] [data-strip] > div:last-child { display: contents !important; }
  :is(body.v3, .gp) header.ptop .pleft, header[data-ptop-wrap] [data-strip] > div:first-child { order: 0; flex: 1 1 auto !important; }
  :is(body.v3, .gp) header.ptop .pstrip .brand, header[data-ptop-wrap] [data-strip] > div:first-child > span:not([data-vg-wordmark]) { display: none !important; }
  :is(body.v3, .gp) header.ptop:not([data-reader-signed]) .pbtns a.req, header[data-ptop-wrap] a[href$="#form"], header.ptop[data-reader-signed] .pbtns a.sup { order: 1; flex: 0 0 auto !important; }
  :is(body.v3, .gp) header.ptop .pstrip::after, header[data-ptop-wrap] [data-strip]::after { content: ""; order: 2; flex-basis: 100%; height: 0; }
  :is(body.v3, .gp) header.ptop .pbtns a:not(.req):not(.sup), :is(body.v3, .gp) header.ptop:not([data-reader-signed]) .pbtns a.sup,
  header.ptop[data-reader-signed] .pbtns a.req, header[data-ptop-wrap] [data-strip] a.gt-btn, header[data-ptop-wrap] [data-strip] a[href*="support-kim"] {
    order: 3; flex: 1 1 0 !important; min-width: 0 !important; margin-top: 8px !important; grid-column: auto !important; grid-row: auto !important; }
  body.v3, .gp { --stick: 120px; }
}
/* the reader: public (GET, SEARCH, HOW TO USE, CONTENTS, SUPPORT) two rows below 940 px; readers below 1,100 px */
@media (max-width: 939px) {
  :root:has(.rd-gget) { --rd-header-h: 7.5rem; }
  .rd-ghead:has(.rd-gget) .rd-ghead-in { flex-wrap: wrap !important; row-gap: 0 !important; column-gap: 8px !important; min-height: 0 !important; }
  .rd-ghead:has(.rd-gget) .rd-glabel { display: none !important; }
  .rd-ghead:has(.rd-gget) .rd-kms { order: 0; flex: 1 1 auto; } .rd-ghead:has(.rd-gget) .rd-gget { order: 1; flex: 0 0 auto; }
  .rd-ghead:has(.rd-gget) .rd-ghead-in::after { content: ""; order: 2; flex-basis: 100%; height: 0; }
  .rd-ghead:has(.rd-gget) .gt-btn, .rd-ghead:has(.rd-gget) .rd-gcontents-btn, .rd-ghead:has(.rd-gget) .rd-gsup { order: 3; flex: 1 1 0 !important; min-width: 0; margin-top: 8px !important; }
}
@media (max-width: 1099px) {
  :root:has(.rd-ghead):not(:has(.rd-gget)) { --rd-header-h: 7.5rem; }
  .rd-ghead:not(:has(.rd-gget)) .rd-ghead-in { flex-wrap: wrap !important; row-gap: 0 !important; column-gap: 8px !important; min-height: 0 !important; }
  .rd-ghead:not(:has(.rd-gget)) .rd-glabel { display: none !important; }
  .rd-ghead:not(:has(.rd-gget)) .rd-kms { order: 0; flex: 1 1 auto; } .rd-ghead:not(:has(.rd-gget)) .rd-gsup { order: 1; flex: 0 0 auto; }
  .rd-ghead:not(:has(.rd-gget)) .rd-ghead-in::after { content: ""; order: 2; flex-basis: 100%; height: 0; }
  .rd-ghead:not(:has(.rd-gget)) .rd-gfull, .rd-ghead:not(:has(.rd-gget)) .rd-gback, .rd-ghead:not(:has(.rd-gget)) .gt-btn,
  .rd-ghead:not(:has(.rd-gget)) .rd-gcontents-btn, .rd-ghead:not(:has(.rd-gget)) .rd-gmore { order: 3; flex: 1 1 0 !important; min-width: 0; margin-top: 8px !important; }
  .rd-ghead:not(:has(.rd-gget)) .rd-gmore > summary.rd-gbtn { width: 100%; height: 100%; }
}
/* the tool-row tiles: icon above the word, 52 px, one line where it fits */
@media (max-width: 1099px) {
  .rd-ghead:not(:has(.rd-gget)) .rd-gfull, .rd-ghead:not(:has(.rd-gget)) .rd-gback, .rd-ghead:not(:has(.rd-gget)) .gt-btn, .rd-ghead:not(:has(.rd-gget)) .rd-gcontents-btn,
  .rd-ghead:not(:has(.rd-gget)) .rd-gmore > summary.rd-gbtn { flex-direction: column !important; min-height: 52px !important; padding: 4px 4px !important; gap: 3px !important;
    font-size: 11.5px !important; letter-spacing: .03em !important; white-space: normal !important; text-align: center !important; line-height: 1.15 !important; }
}
@media (max-width: 939px) {
  .rd-ghead:has(.rd-gget) .gt-btn, .rd-ghead:has(.rd-gget) .rd-gcontents-btn, .rd-ghead:has(.rd-gget) .rd-gsup {
    flex-direction: column !important; min-height: 52px !important; padding: 4px 4px !important; gap: 3px !important; font-size: 11.5px !important;
    letter-spacing: .03em !important; white-space: normal !important; text-align: center !important; line-height: 1.15 !important; }
}
@media (max-width: 859px) {
  :is(body.v3, .gp) header.ptop .pbtns a:not(.req):not(.sup), :is(body.v3, .gp) header.ptop:not([data-reader-signed]) .pbtns a.sup, header.ptop[data-reader-signed] .pbtns a.req,
  header[data-ptop-wrap] [data-strip] a.gt-btn, header[data-ptop-wrap] [data-strip] a[href*="support-kim"] {
    flex-direction: column !important; min-height: 52px !important; padding: 4px 4px !important; gap: 3px !important; font-size: 11.5px !important;
    letter-spacing: .03em !important; white-space: normal !important; text-align: center !important; line-height: 1.15 !important; }
}
/* phones: a reader's DOWNLOADS joins the CONTENTS panel when the panel lists the downloads (option c; section 13 makes it the rule) */
@media (max-width: 40rem) {
  body:has([data-vg-part=contents] .rd-gcont-dl) .rd-ghead:not(:has(.rd-gget)) .rd-gmore { display: none !important; }
}
/* the panel: full screen, white, like CONTENTS; Close or Esc returns the reader to the same place */
html.gt-lock { }   /* no scroll lock: the panel is full screen and contains its own scrolling (a lock lost the reader's place on reader pages) */
.gt-panel { position: fixed; inset: 0; z-index: 80; background: #fff; color: #000; overflow: auto; overscroll-behavior: contain; }
.gt-panel[hidden] { display: none; }
.gt-in { box-sizing: border-box; max-width: 70rem; margin: 0 auto; padding: 20px 20px 48px; }
.gt-top { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; border-bottom: 3px solid #000; padding-bottom: 14px; margin-bottom: 20px; }
.gt-h { margin: 0; font: 700 2rem/1.15 var(--serif, Merriweather, Georgia, serif); color: #000; }
.gt-close { min-height: 44px; padding: 0 16px; border: 1px solid #000; background: #fff; color: #000; font: 600 13px/1.2 var(--sans, 'Merriweather Sans', Arial, sans-serif);
  letter-spacing: .05em; text-transform: uppercase; cursor: pointer; }
.gt-close:hover, .gt-close:focus-visible { background: #000; color: #fff; }
.gt-l { display: block; font: 600 13px/1.3 var(--sans, 'Merriweather Sans', Arial, sans-serif); letter-spacing: .05em; text-transform: uppercase; margin: 0 0 8px; }
.gt-q { box-sizing: border-box; width: 100%; min-height: 52px; padding: 10px 14px; font: 400 18px/1.4 var(--sans, 'Merriweather Sans', Arial, sans-serif); border: 2px solid #000; border-radius: 0; }
.gt-q:focus { outline: 3px solid #E34234; outline-offset: 1px; }
.gt-try { margin: 12px 0 0; font: 400 16px/1.5 var(--sans, 'Merriweather Sans', Arial, sans-serif); display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.gt-chip { min-height: 44px; padding: 0 14px; border: 1px solid #000; background: #fff; color: #000; font: 600 15px/1.2 var(--sans, 'Merriweather Sans', Arial, sans-serif); cursor: pointer; }
.gt-chip:hover, .gt-chip:focus-visible { background: #000; color: #fff; }
.gt-live { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.gt-g { margin-top: 24px; }
.gt-g h3 { margin: 0 0 6px; padding-bottom: 6px; border-bottom: 2px solid #000; font: 700 15px/1.3 var(--sans, 'Merriweather Sans', Arial, sans-serif); letter-spacing: .05em; text-transform: uppercase; }
.gt-list { list-style: none; margin: 0; padding: 0; }
.gt-r { display: block; padding: 12px 0; border-bottom: 1px solid #D0D0D0; color: #000; text-decoration: none; min-height: 44px; box-sizing: border-box; }
.gt-r:hover .gt-rt, .gt-r:focus-visible .gt-rt { text-decoration: underline; }
.gt-rt { display: block; font: 700 17px/1.4 var(--serif, Merriweather, Georgia, serif); }
.gt-r2 { display: block; margin-top: 2px; font: 400 15px/1.4 var(--sans, 'Merriweather Sans', Arial, sans-serif); color: #333; }
.gt-mark { display: inline-block; margin-top: 6px; padding: 2px 8px; background: #000; color: #fff; font: 600 12px/1.4 var(--sans, 'Merriweather Sans', Arial, sans-serif); letter-spacing: .05em; text-transform: uppercase; }
.gt-more { margin-top: 10px; min-height: 44px; padding: 0 16px; border: 1px solid #000; background: #fff; font: 600 13px/1.2 var(--sans, 'Merriweather Sans', Arial, sans-serif); letter-spacing: .05em; text-transform: uppercase; cursor: pointer; }
.gt-none, .gt-p { margin: 20px 0 0; font: 400 17px/1.6 var(--serif, Merriweather, Georgia, serif); }
.gt-howto { color: #000; }
.gt-howto [data-a-intro], .gt-howto [data-hp], .gt-howto [data-hsteps] li { color: #000 !important; }
.gt-howto [data-hh] { color: #000 !important; font: 700 24px/1.25 var(--serif, Merriweather, Georgia, serif) !important; margin: 28px 0 10px; }
.gt-howto [data-hfig] { margin: 14px 0 16px; border: 1px solid #D0D0D0; padding: 8px; max-width: 880px; box-sizing: content-box; }
/* v15: the HOW TO USE panel is dark, like the how-to page it shows (#000, light text; the seat and the operator, 4:3x PM: a black block on a
   white panel was a box again). Only this panel: SEARCH and SHARE keep the approved white panel. The art sits edge to edge, no frame. */
.gt-panel[data-guide-panel="howto"] { background: #000; color: #fff; }
.gt-panel[data-guide-panel="howto"] .gt-top { border-bottom-color: #fff; }
.gt-panel[data-guide-panel="howto"] .gt-h { color: #fff; }
.gt-panel[data-guide-panel="howto"] .gt-close { background: #000; color: #fff; border-color: #fff; }
.gt-panel[data-guide-panel="howto"] .gt-close:hover, .gt-panel[data-guide-panel="howto"] .gt-close:focus-visible { background: #fff; color: #000; }
.gt-panel[data-guide-panel="howto"] .gt-howto, .gt-panel[data-guide-panel="howto"] .gt-howto [data-a-intro], .gt-panel[data-guide-panel="howto"] .gt-howto [data-hp],
.gt-panel[data-guide-panel="howto"] .gt-howto [data-hsteps] li, .gt-panel[data-guide-panel="howto"] .gt-howto [data-hh], .gt-panel[data-guide-panel="howto"] .gt-p { color: #fff !important; }
.gt-panel[data-guide-panel="howto"] .gt-howto [data-hsteps] li::marker { color: #fff; font-weight: 700; }
.gt-panel[data-guide-panel="howto"] .gt-howto a:not([data-hbtn]):not([data-hzoom]), .gt-panel[data-guide-panel="howto"] .gt-p a { color: #fff; text-decoration: underline; }
.gt-panel[data-guide-panel="howto"] .gt-howto [data-hsec] { border-top: 1px solid #333; padding-top: 12px; margin-top: 24px; }
.gt-panel[data-guide-panel="howto"] .gt-howto [data-hsec]:first-of-type { border-top: 0; }
.gt-panel[data-guide-panel="howto"] .gt-howto [data-hfig] { background: transparent; border: 0; padding: 0; }
.gt-panel[data-guide-panel="howto"] .gt-howto [data-hbtn]:hover { background: #B1382B; }
.gt-howto [data-hfig] img { display: block; width: 100%; height: auto; max-width: 880px; }
.gt-howto [data-hsteps] { padding-left: 2.2em; } .gt-howto [data-hsteps] li { margin: 0 0 8px; font: 400 17px/1.6 var(--serif, Merriweather, Georgia, serif); }
.gt-howto [data-hbtn] { display: inline-flex; align-items: center; min-height: 48px; padding: 0 22px; background: #E34234; color: #fff; text-decoration: none;
  font: 600 15px/1.2 var(--sans, 'Merriweather Sans', Arial, sans-serif); letter-spacing: .05em; text-transform: uppercase; }
.rd-gcont .gt-inbtn { margin-left: auto; }
:is(.rd-ghead .rd-gbtn, body.v3 .pstrip .pbtns a, .gp .ptop .pbtns a, header[data-ptop-wrap] [data-strip] a) { gap: 8px !important; }
/* a signed-in reader's question page on phones: row 2 = SEE THE FULL GUIDE, CONTENTS, SEARCH, HOW TO USE (DOWNLOADS is one tap away in
   the guide that CONTENTS opens; five tiles do not fit at 360) */
@media (max-width: 40rem) { header.ptop[data-reader-signed] .pbtns a.dl { display: none !important; } }
/* a signed-in reader's question page carries six buttons: the reader rule (two rows below 1,100 px, the label above 1,320 px only),
   row-2 tiles in the reader's order: SEE THE FULL GUIDE, SEARCH, HOW TO USE, CONTENTS, DOWNLOADS */
@media (max-width: 1320px) { header.ptop[data-reader-signed] .pstrip .brand { display: none !important; } }
@media (max-width: 1099px) {
  header.ptop[data-reader-signed] .pstrip { display: flex !important; flex-wrap: wrap !important; align-items: center !important; column-gap: 8px !important; row-gap: 0 !important;
    padding-top: 8px !important; padding-bottom: 8px !important; }
  header.ptop[data-reader-signed] .pbtns { display: contents !important; }
  header.ptop[data-reader-signed] .pleft { order: 0; flex: 1 1 auto !important; }
  header.ptop[data-reader-signed] .pbtns a.sup { order: 1; flex: 0 0 auto !important; }
  header.ptop[data-reader-signed] .pstrip::after { content: ""; order: 2; flex-basis: 100%; height: 0; }
  header.ptop[data-reader-signed] .pbtns a:not(.sup) { flex: 1 1 0 !important; min-width: 0 !important; margin-top: 8px !important; flex-direction: column !important;
    min-height: 52px !important; padding: 4px 4px !important; gap: 3px !important; font-size: 11.5px !important; letter-spacing: .03em !important; white-space: normal !important;
    text-align: center !important; line-height: 1.15 !important; }
  header.ptop[data-reader-signed] .pbtns a.req { order: 3 !important; } header.ptop[data-reader-signed] .pbtns a.gt-btn { order: 4 !important; }
  header.ptop[data-reader-signed] .pbtns a.cnt { order: 5 !important; } header.ptop[data-reader-signed] .pbtns a.dl { order: 6 !important; }
}
.gt-try[hidden] { display: none !important; }
.gt-l { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }   /* the panel heading says it; the label stays for screen readers */
.gt-howto [data-a-intro], .gt-howto [data-hp] { font: 400 17px/1.6 var(--serif, Merriweather, Georgia, serif) !important; color: #000 !important; max-width: 72ch; }
.gt-howto a[data-hzoom]::after, .gt-howto a[data-hzoom]::before { display: none !important; content: none !important; }
/* the label hides by measurement too (guide-tools.js adds .gt-nolabel when it would touch the buttons) */
.gt-nolabel .rd-glabel, .gt-nolabel .pstrip .brand, .gt-nolabel [data-strip] > div:first-child > span:not([data-vg-wordmark]) { display: none !important; }
/* phones: the reader tiles hold every word on at most two lines at 360 (11 px, no tracking, 2 px sides) */
@media (max-width: 40rem) {
  .rd-ghead:not(:has(.rd-gget)) .rd-gfull, .rd-ghead:not(:has(.rd-gget)) .rd-gback, .rd-ghead:not(:has(.rd-gget)) .gt-btn, .rd-ghead:not(:has(.rd-gget)) .rd-gcontents-btn,
  .rd-ghead:not(:has(.rd-gget)) .rd-gmore > summary.rd-gbtn, header.ptop[data-reader-signed] .pbtns a:not(.sup) {
    font-size: 11px !important; letter-spacing: 0 !important; padding-left: 2px !important; padding-right: 2px !important; }
}
/* narrow phones: the readers' red SUPPORT keeps its heart AND its place beside the wordmark on row 1 */
@media (max-width: 400px) {
  .rd-ghead:not(:has(.rd-gget)) .rd-gsup, header.ptop[data-reader-signed] .pbtns a.sup {
    font-size: 12px !important; letter-spacing: .02em !important; padding-left: 8px !important; padding-right: 8px !important; gap: 6px !important; }
  .rd-ghead:not(:has(.rd-gget)) .rd-gsup .gt-ico, header.ptop[data-reader-signed] .pbtns a.sup .gt-ico { width: 14px; height: 14px; }
}

/* 13. ONE PHONE RULE (the seat, 2026-10-07): row 2 opens with SEARCH and HOW TO USE on every view, at most four tiles, each word on at
   most two lines. Static, hubs, landing: SEARCH · HOW TO USE · SUPPORT. Public /guide/: SEARCH · HOW TO USE · CONTENTS · SUPPORT.
   Personal guide (and its pages): SEARCH · HOW TO USE · SEE THE FULL GUIDE · CONTENTS. Signed /guide/: SEARCH · HOW TO USE · MY GUIDE ·
   CONTENTS. DOWNLOADS lives in the CONTENTS panel on phones (option c). */
@media (max-width: 40rem) {
  .rd-ghead .gt-btn[data-guide-tool="search"] { display: inline-flex !important; }
  .rd-ghead:not(:has(.rd-gget)) .rd-gmore, header.ptop[data-reader-signed] .pbtns a.dl { display: none !important; }
  .rd-ghead .gt-btn[data-guide-tool="search"], header.ptop .pbtns a.gt-btn[data-guide-tool="search"] { order: 3 !important; }
  .rd-ghead .gt-btn[data-guide-tool="howto"], header.ptop .pbtns a.gt-btn[data-guide-tool="howto"] { order: 4 !important; }
  .rd-ghead .rd-gfull, .rd-ghead .rd-gback, header.ptop[data-reader-signed] .pbtns a.req { order: 5 !important; }
  .rd-ghead .rd-gcontents-btn, header.ptop[data-reader-signed] .pbtns a.cnt { order: 6 !important; }
  .rd-ghead:has(.rd-gget) .rd-gsup { order: 7 !important; }
  .rd-ghead:has(.rd-gget) .gt-btn, .rd-ghead:has(.rd-gget) .rd-gcontents-btn, .rd-ghead:has(.rd-gget) .rd-gsup {
    font-size: 11px !important; letter-spacing: 0 !important; padding-left: 2px !important; padding-right: 2px !important; }
}
@media (max-width: 40rem) {
  :is(body.v3, .gp) header.ptop:not([data-reader-signed]) .pbtns a.sup, header[data-ptop-wrap] [data-strip] a[href*="support-kim"] { order: 7 !important; }
  header[data-ptop-wrap] [data-strip] a.gt-btn[data-guide-tool="search"] { order: 3 !important; }
  header[data-ptop-wrap] [data-strip] a.gt-btn[data-guide-tool="howto"] { order: 4 !important; }
}
@media (max-width: 40rem) { .rd-ghead:has(.rd-gget) .rd-gsup { flex-grow: 1.35 !important; } }   /* "SUPPORT KIM'S WORK" holds two lines in a four-tile row at 360 */
/* one tile height and one wrap rule on every view's phone row 2: 60 px tiles (room for the icon and two lines), stretched to the row,
   labels balanced when they wrap */
@media (max-width: 40rem) {
  .rd-ghead .gt-btn, .rd-ghead .rd-gcontents-btn, .rd-ghead .rd-gfull, .rd-ghead .rd-gback, .rd-ghead:has(.rd-gget) .rd-gsup,
  :is(body.v3, .gp) header.ptop .pbtns a:not(.req):not(.sup), :is(body.v3, .gp) header.ptop:not([data-reader-signed]) .pbtns a.sup, header.ptop[data-reader-signed] .pbtns a.req,
  header[data-ptop-wrap] [data-strip] a.gt-btn, header[data-ptop-wrap] [data-strip] a[href*="support-kim"] {
    min-height: 60px !important; height: 60px !important; align-self: stretch !important; text-wrap: balance; }
  .rd-ghead .gt-btn span, .rd-ghead .rd-gcontents-btn, .rd-ghead .rd-gfull, header.ptop .pbtns a, header[data-ptop-wrap] [data-strip] a { text-wrap: balance; }
}
@media (max-width: 40rem) {   /* the signed question page's tiles in the same type as the reader's (no tracking, 11 px, 2 px sides) */
  :is(body.v3, .gp) header.ptop[data-reader-signed] .pbtns a.gt-btn, :is(body.v3, .gp) header.ptop[data-reader-signed] .pbtns a.req, :is(body.v3, .gp) header.ptop[data-reader-signed] .pbtns a.cnt {
    font-size: 11px !important; letter-spacing: 0 !important; padding-left: 2px !important; padding-right: 2px !important; }
}
