/* American History & Civics Ladder visuals (static/civics/viz/civics.js): styles on top of math/viz/viz.css.
   Follows the site's light or dark theme (html[data-theme="dark"]). Ladder accent #14213d (dark #c2cde0), gold #b8963e. */
.ml-viz.cvv{--cv-acc:#14213d;--cv-accs:rgba(20,33,61,.08);--cv-ink:#1d2330;--cv-mut:#5b6170;--cv-ok:#00703c;--cv-bad:#c92a2a;--cv-gold:#b8963e;--cv-paper:#fffdf6;--cv-line:#d6dbe4;--cv-sea:#e8f1f8;--cv-land:#f1ece0;--cv-lake:#bcd6ea;--cv-coast:#6f7d8f;--cv-ghost:#eef0f3;--cv-hl:#f2c94c;--cv-later:#e4e4e4;
  --f0:#f3c6c6;--f1:#c9daf2;--f2:#f6dfa4;--f3:#cfe6c8;--f4:#e2d2f0;--f5:#f8cfa8;--f6:#bfe3e0;--f7:#e6d5c0;--f8:#d5dbe3;--f9:#f2c9df;
  --ca:#d9a441;--cb:#4d8fb8;overflow:hidden}
html[data-theme="dark"] .ml-viz.cvv{--cv-acc:#c2cde0;--cv-accs:rgba(194,205,224,.12);--cv-ink:#e7ebf2;--cv-mut:#a9b2c2;--cv-ok:#6cc79a;--cv-bad:#ff8787;--cv-gold:#e2c27a;--cv-paper:#1f2430;--cv-line:#3a4152;--cv-sea:#1a2533;--cv-land:#3a3a36;--cv-lake:#2c4660;--cv-coast:#9aa6b8;--cv-ghost:#252a35;--cv-hl:#a78427;--cv-later:#2b2d33;
  --f0:#6b3a3f;--f1:#34507a;--f2:#6e5a22;--f3:#3d6340;--f4:#54456f;--f5:#7a4e2a;--f6:#2f6461;--f7:#5e4c38;--f8:#4a5260;--f9:#6e3a57;
  --ca:#a87a24;--cb:#2f6f99}
.cvv .cvf-0{fill:var(--f0);background:var(--f0)}.cvv .cvf-1{fill:var(--f1);background:var(--f1)}.cvv .cvf-2{fill:var(--f2);background:var(--f2)}.cvv .cvf-3{fill:var(--f3);background:var(--f3)}.cvv .cvf-4{fill:var(--f4);background:var(--f4)}
.cvv .cvf-5{fill:var(--f5);background:var(--f5)}.cvv .cvf-6{fill:var(--f6);background:var(--f6)}.cvv .cvf-7{fill:var(--f7);background:var(--f7)}.cvv .cvf-8{fill:var(--f8);background:var(--f8)}.cvv .cvf-9{fill:var(--f9);background:var(--f9)}
.cvv .cvv-task{margin:0 0 .6rem;padding:.5rem .7rem;border-radius:10px;background:var(--mv-card);border:1px solid var(--mv-line);border-left:4px solid var(--cv-gold);font-size:.95rem;line-height:1.45}
.cvv .cvv-readme{margin:0 0 .6rem;padding:.45rem .7rem;border-radius:10px;background:rgba(184,150,62,.12);border:1px dashed rgba(184,150,62,.6);font-size:.88rem;line-height:1.45}
.cvv-readme-tag{display:inline-block;font:700 .72rem system-ui,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:#7a5c12;margin-right:.3rem}
html[data-theme="dark"] .cvv-readme-tag{color:#e2c27a}
.cv-big{font-size:1.3em;line-height:1.5;font-weight:600}
.cv-readme{margin:0 0 .5rem;padding:.4rem .65rem;border-radius:10px;background:rgba(184,150,62,.12);border:1px dashed rgba(184,150,62,.6);font-size:.88rem}
.cv-readme b:first-child{font:700 .72rem system-ui,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:#7a5c12;margin-right:.3rem}
html[data-theme="dark"] .cv-readme b:first-child{color:#e2c27a}
.cvv .cvv-ctl:empty{display:none}
.cvv .cvv-out{overflow-wrap:anywhere}
.cvv .cvv-hint,.cvv .cvv-note{margin:.45rem 0;font-size:.85rem;color:var(--mv-muted);line-height:1.45}
.cvv .cvv-ok{color:var(--cv-ok);font-weight:700}.cvv .cvv-bad{color:var(--cv-bad);font-weight:700}
.cvv .ml-btn[aria-pressed="true"]{background:var(--cv-accs);border-color:var(--cv-acc)}
.cvv .ml-btn.pri{background:var(--cv-acc);border-color:var(--cv-acc);color:#fff}
html[data-theme="dark"] .cvv .ml-btn.pri{color:#141a26}
.cvv .ml-btn:disabled{opacity:.45;cursor:default}
.cvv .ml-seg button[aria-pressed="true"]{background:var(--cv-acc);border-color:var(--cv-acc);color:#fff}
html[data-theme="dark"] .cvv .ml-seg button[aria-pressed="true"]{color:#141a26}
.cvv button:focus-visible,.cvv input:focus-visible,.cvv [tabindex]:focus-visible{outline:3px solid #b8963e;outline-offset:2px}
.cvv .cvv-svg{display:block;width:100%;height:auto;max-width:100%}
.cvv.cvv-big{font-size:1.15rem}
.cvv .cvv-legend{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.3rem .9rem;font-size:.85rem;line-height:1.35}
.cvv .cvv-legend li{display:flex;align-items:flex-start;gap:.35rem;max-width:100%}
.cvv .cvv-sw{flex:0 0 auto;display:inline-block;width:.95em;height:.95em;border-radius:3px;margin-top:.15em;border:1px solid rgba(0,0,0,.25);vertical-align:-.1em}
@media (prefers-reduced-motion:reduce){.cvv *{transition:none!important;animation:none!important}}

/* cv-sort */
.cvv .cvs-pool{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:0 0 .6rem;padding:.5rem;border:1px dashed var(--mv-line);border-radius:10px;min-height:2.5rem}
.cvv .cvs-bins{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:.5rem}
@media (max-width:560px){.cvv .cvs-bins{grid-template-columns:1fr}}
.cvv .cvs-bin{border-radius:12px;padding:.35rem;min-height:4rem}
.cvv .cvs-binhead{display:flex;align-items:center;gap:.35rem;width:100%;font:700 .92rem system-ui,sans-serif;color:var(--cv-ink);background:rgba(255,255,255,.55);border:1px solid rgba(0,0,0,.12);border-radius:8px;padding:.35rem .5rem;text-align:left;min-height:38px}
html[data-theme="dark"] .cvv .cvs-binhead{background:rgba(0,0,0,.25);border-color:rgba(255,255,255,.12)}
.cvv button.cvs-binhead{cursor:pointer}
.cvv .cvs-num{display:inline-grid;place-items:center;width:1.4em;height:1.4em;border-radius:50%;background:var(--mv-card);font-size:.75rem;border:1px solid var(--mv-line)}
.cvv .cvs-list{list-style:none;margin:.35rem 0 0;padding:0;display:flex;flex-direction:column;gap:.3rem}
.cvv .cvs-card{list-style:none}
.cvv .cvs-cbtn{display:block;width:100%;text-align:left;font:inherit;font-size:.92rem;line-height:1.35;color:var(--cv-ink);background:var(--mv-card);border:1px solid var(--mv-line);border-radius:9px;padding:.4rem .55rem;min-height:38px;box-sizing:border-box}
.cvv button.cvs-cbtn{cursor:pointer}
.cvv .cvs-pool .cvs-card{flex:1 1 12rem;max-width:100%}
.cvv .cvs-cbtn[aria-pressed="true"]{border-color:var(--cv-acc);box-shadow:0 0 0 2px var(--cv-acc)}
.cvv .cvs-card.ok .cvs-cbtn{border-color:var(--cv-ok);box-shadow:inset 3px 0 0 var(--cv-ok)}.cvv .cvs-card.no .cvs-cbtn{border-color:var(--cv-bad);box-shadow:inset 3px 0 0 var(--cv-bad)}
.cvv .cvs-let{display:inline-block;min-width:1.2em;color:var(--cv-acc)}

/* cv-order */
.cvv .cvo-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}
.cvv .cvo-item{display:flex;gap:.35rem;align-items:stretch;border-radius:10px}
.cvv .cvo-list.quiet .cvo-item,.cvv .cvo-item:not(:has(button)){gap:.5rem;align-items:center;padding:.4rem .55rem;border:1px solid var(--mv-line);background:var(--mv-card);font-size:.95rem;line-height:1.4}
.cvv .cvo-btn{flex:1 1 auto;display:flex;gap:.5rem;align-items:center;text-align:left;font:inherit;font-size:.95rem;line-height:1.4;color:var(--cv-ink);background:var(--mv-card);border:1px solid var(--mv-line);border-radius:10px;padding:.4rem .55rem;cursor:pointer;min-height:40px}
.cvv .cvo-btn[aria-pressed="true"]{border-color:var(--cv-acc);box-shadow:0 0 0 2px var(--cv-acc)}
.cvv .cvo-num{flex:0 0 auto;display:inline-grid;place-items:center;min-width:1.7em;height:1.7em;border-radius:50%;background:var(--cv-accs);border:1px solid var(--mv-line);font:700 .8rem system-ui,sans-serif}
.cvv .cvo-mv{min-width:40px;padding:.2rem .4rem}
.cvv .cvo-item.ok .cvo-btn{border-color:var(--cv-ok);box-shadow:inset 3px 0 0 var(--cv-ok)}.cvv .cvo-item.no .cvo-btn{border-color:var(--cv-bad);box-shadow:inset 3px 0 0 var(--cv-bad)}

/* cv-timeline */
.cvv .cvt-wrap{touch-action:pan-y;user-select:none}
.cvv .cvt-svg{display:block;width:100%}
.cvv .cvt-axis{stroke:var(--cv-ink);stroke-width:2.5}.cvv .cvt-tick{stroke:var(--cv-ink);stroke-width:1.5}
.cvv .cvt-ticktext{font:12px system-ui,sans-serif;fill:var(--cv-mut)}
.cvv .cvt-era{opacity:.95}.cvv .cvt-eratext{font:700 11px system-ui,sans-serif;fill:var(--cv-ink)}
.cvv .cvt-lead{stroke:var(--cv-mut);stroke-width:1.2}
.cvv .cvt-dot{fill:var(--cv-acc);stroke:var(--mv-paper);stroke-width:2}
.cvv .cvt-span{fill:var(--cv-gold);opacity:.75}
.cvv .cvt-box{fill:var(--mv-card);stroke:var(--mv-line);stroke-width:1.2}
.cvv .cvt-label{font-family:system-ui,sans-serif;fill:var(--cv-ink)}
.cvv .cvt-yr{font-weight:700;fill:var(--cv-acc)}
.cvv .cvt-ev.hl .cvt-box{fill:var(--cv-hl);stroke:var(--cv-gold)}.cvv .cvt-ev.ask .cvt-box{stroke:var(--cv-gold);stroke-width:2.5;stroke-dasharray:5 3}
.cvv .cvt-vlist{list-style:none;margin:0;padding:0 0 0 .2rem;position:relative}
.cvv .cvt-vlist::before{content:"";position:absolute;left:4.35rem;top:.4rem;bottom:.4rem;width:3px;background:var(--cv-acc);border-radius:2px}
.cvv .cvt-vrow{position:relative;display:flex;align-items:flex-start;gap:.6rem;padding:.3rem 0;line-height:1.35}
.cvv .cvt-vyr{flex:0 0 3.6rem;text-align:right;font:700 .9rem system-ui,sans-serif;color:var(--cv-acc);padding-top:.15rem}
.cvv .cvt-vdot{flex:0 0 auto;width:.75rem;height:.75rem;border-radius:50%;background:var(--cv-acc);border:2px solid var(--mv-paper);margin-top:.3rem;position:relative;z-index:1}
.cvv .cvt-vtext{flex:1 1 auto;min-width:0;padding:.25rem .5rem;border:1px solid var(--mv-line);border-radius:8px;background:var(--mv-card);font-size:.93rem}
.cvv .cvt-vrow.hl .cvt-vtext{background:var(--cv-hl);border-color:var(--cv-gold)}.cvv .cvt-vrow.ask .cvt-vtext{border:2px dashed var(--cv-gold)}
.cvv .cvt-vera{list-style:none;margin:.5rem 0 .2rem 5rem;padding:.15rem .5rem;border-radius:6px;font:700 .82rem system-ui,sans-serif;color:var(--cv-ink)}
.cvv .cvt-vera small{font-weight:400;color:var(--cv-ink);opacity:.8}
.cvv .cvt-vlist.big .cvt-vtext{font-size:1.1rem}
.cvv .cvt-cards{margin-top:.6rem}.cvv .cvt-cardlist{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}
.cvv .cvt-card{flex:1 1 13rem;max-width:100%}
.cvv .cvt-cbtn{display:block;width:100%;box-sizing:border-box;text-align:left;font:inherit;font-size:.92rem;color:var(--cv-ink);background:var(--mv-card);border:1px solid var(--mv-line);border-radius:9px;padding:.4rem .55rem;min-height:38px;cursor:pointer}
.cvv .cvt-cbtn[aria-pressed="true"]{box-shadow:0 0 0 2px var(--cv-acc);border-color:var(--cv-acc)}
.cvv .cvt-eras{margin-top:.2rem}

/* cv-map */
.cvv .cvm-box{max-width:760px;margin:0 auto}
.cvv .cvm-tile rect{stroke:rgba(0,0,0,.18);stroke-width:1}
html[data-theme="dark"] .cvv .cvm-tile rect{stroke:rgba(255,255,255,.14)}
.cvv .cvm-plain{fill:var(--mv-card)}.cvv .cvm-ghost{fill:var(--cv-ghost)}.cvv .cvm-hl{fill:var(--cv-hl)}
.cvv .cvm-ab{font:700 15px system-ui,sans-serif;fill:var(--cv-ink)}.cvv .cvm-ab.g{fill:var(--cv-mut);font-weight:400}
.cvv .cvm-val{font:600 12px system-ui,sans-serif;fill:var(--cv-ink);opacity:.85}
.cvv .cvm-tile.picked rect{stroke:var(--cv-acc);stroke-width:4}
.cvv .cvm-tile[role="button"]:hover rect{stroke:var(--cv-acc);stroke-width:2.5}
.cvv .cvm-sea{fill:var(--cv-sea)}.cvv .cvm-land{fill:var(--cv-land);stroke:none}.cvv .cvm-later{fill:var(--cv-later)}
.cvv .cvm-lake{fill:var(--cv-lake);stroke:var(--cv-coast);stroke-width:.8}
.cvv .cvm-coast{fill:none;stroke:var(--cv-coast);stroke-width:1.6;stroke-linejoin:round}
.cvv .cvm-acq{stroke:rgba(0,0,0,.35);stroke-width:1;stroke-dasharray:4 3}
html[data-theme="dark"] .cvv .cvm-acq{stroke:rgba(255,255,255,.35)}
.cvv .cvm-inset path{stroke:var(--cv-coast);stroke-width:1}
.cvv .cvm-insetbox{fill:none;stroke:var(--cv-coast);stroke-width:1;stroke-dasharray:3 3}
.cvv .cvm-maplab{font:700 17px system-ui,sans-serif;fill:var(--cv-ink);paint-order:stroke;stroke:var(--cv-paper);stroke-width:4px;stroke-linejoin:round}
.cvv .cvm-placelab{font:600 15px system-ui,sans-serif;fill:var(--cv-ink);paint-order:stroke;stroke:var(--cv-paper);stroke-width:4px;stroke-linejoin:round}
.cvv .cvm-pin{fill:var(--cv-acc);stroke:var(--cv-paper);stroke-width:2.5}.cvv .cvm-pin.ask{fill:var(--cv-gold)}.cvv .cvm-pin.hl{fill:#b23a48}
.cvv .cvm-pinnum{font:700 17px system-ui,sans-serif;fill:var(--cv-paper)}
.cvv .cvm-trail{fill:none;stroke-width:4;stroke-dasharray:9 5;stroke-linecap:round}
.cvv .cvm-trail0{stroke:#b23a48}.cvv .cvm-trail1{stroke:#2f6f99}.cvv .cvm-trail2{stroke:#7a5c12}
html[data-theme="dark"] .cvv .cvm-trail0{stroke:#ff8f9c}html[data-theme="dark"] .cvv .cvm-trail1{stroke:#8fc8ef}html[data-theme="dark"] .cvv .cvm-trail2{stroke:#e2c27a}
.cvv .cvv-sw.cvm-pinsw{background:var(--cv-acc);border-radius:50%}.cvv .cvv-sw.cvm-trailsw{height:.3em;margin-top:.45em;border:0}
.cvv .cvv-sw.cvm-trail0{background:#b23a48}.cvv .cvv-sw.cvm-trail1{background:#2f6f99}.cvv .cvv-sw.cvm-trail2{background:#7a5c12}
.cvv .cvv-sw.cvm-later{background:var(--cv-later)}.cvv .cvv-sw.cvm-plain{background:var(--mv-card)}.cvv .cvv-sw.cvm-hl{background:var(--cv-hl)}

/* cv-flag */
.cvv .cvf-svg{max-width:560px;margin:0 auto}
.cvv .cvf-edge{stroke:rgba(0,0,0,.35);stroke-width:1}
html[data-theme="dark"] .cvv .cvf-edge{stroke:rgba(255,255,255,.3)}
.cvv .cvf-star.hl{fill:#f2c94c}
.cvv .cvf-num{font:600 11px system-ui,sans-serif;fill:var(--cv-ink)}.cvv .cvf-year{font:700 16px system-ui,sans-serif;fill:var(--cv-ink)}
.cvv .cvv-sw.cvf-sw-red{background:linear-gradient(#b22234 50%,#fff 50%)}.cvv .cvv-sw.cvf-sw-blue{background:#3c3b6e}

/* cv-picture */
.cvv .cvp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.6rem}
.cvv .cvp-grid.one{grid-template-columns:minmax(0,260px);justify-content:center}
.cvv .cvp-grid.small{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}
.cvv .cvp-card{margin:0;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem;border-radius:14px;background:#f8f4ea;border:1px solid var(--mv-line);font:inherit;color:#1d2330}
html[data-theme="dark"] .cvv .cvp-card{background:#d9d2c0}
.cvv button.cvp-card{cursor:pointer}.cvv .cvp-card[aria-pressed="true"]{box-shadow:0 0 0 3px var(--cv-acc)}
.cvv .cvp-svg{width:100%;max-width:150px}
.cvv .cvp-cap{font-size:.92rem;font-weight:600;text-align:center;line-height:1.3;color:#1d2330}
.cvv.cvv-big .cvp-cap{font-size:1.1rem}

/* cv-branches, cv-court, cv-amend shared */
.cvv .cvb-rect,.cvv .cvc-rect{stroke:rgba(0,0,0,.25);stroke-width:1.2}
html[data-theme="dark"] .cvv .cvb-rect,html[data-theme="dark"] .cvv .cvc-rect{stroke:rgba(255,255,255,.2)}
.cvv .cvb-name,.cvv .cvc-name{font:700 18px system-ui,sans-serif;fill:var(--cv-ink)}
.cvv .cvb-job,.cvv .cvc-note{font:13px system-ui,sans-serif;fill:var(--cv-ink)}
.cvv .cvc-head{font:700 15px system-ui,sans-serif;fill:var(--cv-acc)}.cvv .cvc-small{font:italic 12px system-ui,sans-serif;fill:var(--cv-mut)}
.cvv .cvb-arrow{stroke:var(--cv-mut);stroke-width:2.2;opacity:.75}.cvv .cvb-arrow.on{stroke:#b23a48;stroke-width:4;opacity:1}
html[data-theme="dark"] .cvv .cvb-arrow.on{stroke:#ff8f9c}
.cvv .cvb-arrowhead{fill:var(--cv-mut)}.cvv .cvb-arrowhead.on{fill:#b23a48}html[data-theme="dark"] .cvv .cvb-arrowhead.on{fill:#ff8f9c}
.cvv .cvb-box.picked .cvb-rect{stroke:var(--cv-acc);stroke-width:4}
.cvv .cvb-box[role="button"]:hover .cvb-rect{stroke:var(--cv-acc);stroke-width:2.5}
.cvv .cvb-power{margin:0 0 .5rem;font-size:1rem}
.cvv .cvb-checks{list-style:none;margin:.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.35rem}
.cvv .cvb-chip{display:flex;gap:.45rem;align-items:flex-start;width:100%;box-sizing:border-box;text-align:left;font:inherit;font-size:.88rem;line-height:1.35;color:var(--cv-ink);background:var(--mv-card);border:1px solid var(--mv-line);border-radius:9px;padding:.4rem .5rem;min-height:38px}
.cvv button.cvb-chip{cursor:pointer}.cvv .cvb-chip.on{border-color:#b23a48;box-shadow:inset 3px 0 0 #b23a48}
.cvv .cvc-box.hl .cvc-rect,.cvv .cvc-box.from .cvc-rect{stroke:#b23a48;stroke-width:3.5}
.cvv .cvc-box.bound .cvc-rect{stroke:var(--cv-ok);stroke-width:3.5;stroke-dasharray:6 3}
.cvv .cvc-box.ask .cvc-rect{stroke:var(--cv-gold);stroke-width:3;stroke-dasharray:6 3}
.cvv .cva-box.on .cvc-rect{stroke:#b23a48;stroke-width:4}.cvv .cva-box[role="button"]{cursor:pointer}

/* cv-bill */
.cvv .cvbl-flow{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem;position:relative}
.cvv .cvbl-step{display:flex;gap:.6rem;align-items:flex-start;padding:.45rem .6rem;border:1px solid var(--mv-line);border-radius:10px;background:var(--mv-card);line-height:1.4;font-size:.93rem}
.cvv .cvbl-step+.cvbl-step::before{content:"↓";position:absolute;margin:-1.15rem 0 0 .45rem;color:var(--cv-mut);font-size:.8rem}
.cvv .cvbl-step.cur{border-color:var(--cv-acc);box-shadow:inset 4px 0 0 var(--cv-acc)}
.cvv .cvbl-step.law{border-color:var(--cv-ok);background:rgba(0,112,60,.08)}.cvv .cvbl-step.dies{border-color:var(--cv-bad);background:rgba(201,42,42,.07)}
.cvv .cvbl-step.ask{border:2px dashed var(--cv-gold)}
.cvv .cvbl-n{flex:0 0 auto;display:inline-grid;place-items:center;width:1.7em;height:1.7em;border-radius:50%;background:var(--cv-accs);font:700 .8rem system-ui,sans-serif}
.cvv .cvbl-body span{color:var(--mv-muted);font-size:.88rem}
.cvv .cvbl-seg{flex-basis:100%}

/* cv-amend list */
.cvv .cva-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.3rem}
.cvv .cva-row{display:flex;gap:.5rem;align-items:baseline;padding:.3rem .5rem;border:1px solid var(--mv-line);border-radius:8px;background:var(--mv-card);font-size:.88rem;line-height:1.35}
.cvv .cva-row.bor{border-left:4px solid var(--cv-gold)}.cvv .cva-row.hl{background:var(--cv-hl)}.cvv .cva-row.ask{border:2px dashed var(--cv-gold)}
.cvv .cva-n{flex:0 0 2.6em;font-weight:700;color:var(--cv-acc)}.cvv .cva-y{flex:0 0 2.6em;color:var(--mv-muted);font-variant-numeric:tabular-nums}

/* cv-ec */
.cvv .cve-a{fill:var(--ca);background:var(--ca)}.cvv .cve-b{fill:var(--cb);background:var(--cb)}.cvv .cve-none{background:var(--cv-ghost)}
.cvv .cve-totals{margin:0 0 .5rem}
.cvv .cve-meter{position:relative;display:flex;height:22px;border-radius:6px;overflow:hidden;border:1px solid var(--mv-line)}
.cvv .cve-meter i{display:block;height:100%}
.cvv .cve-270{position:absolute;top:-2px;bottom:-2px;width:3px;background:var(--cv-ink);margin-left:-1px}
.cvv .cve-nums{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.3rem .8rem;margin:.35rem 0 0;font-size:.9rem}
.cvv .cve-bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}
.cvv .cve-bar{display:grid;grid-template-columns:minmax(7rem,12rem) 1fr 2.5rem;gap:.5rem;align-items:center;font-size:.92rem}
.cvv .cve-track{height:18px;background:var(--cv-ghost);border-radius:5px;overflow:hidden}.cvv .cve-track i{display:block;height:100%}
.cvv .cve-num{font-weight:700;font-variant-numeric:tabular-nums}

/* cv-doc */
.cvv .cvd-doc{background:var(--cv-paper);border:1px solid var(--mv-line);border-radius:10px;padding:.7rem .9rem;font-family:Georgia,"Times New Roman",serif;font-size:1.02rem;line-height:1.65;max-height:30rem;overflow:auto}
.cvv .cvd-doc.big{font-size:1.2rem}
.cvv .cvd-title{margin:0 0 .4rem;font:700 1rem system-ui,sans-serif;color:var(--cv-acc)}
.cvv .cvd-p{margin:0 0 .6rem}
.cvv .cvd-src{margin:.3rem 0 0;font:italic .8rem system-ui,sans-serif;color:var(--mv-muted)}
.cvv .cvd-mark{font:inherit;color:var(--cv-ink);border:0;border-bottom:2px solid rgba(0,0,0,.35);border-radius:3px;padding:0 .1em;line-height:inherit;text-align:inherit}
html[data-theme="dark"] .cvv .cvd-mark{border-bottom-color:rgba(255,255,255,.4)}
.cvv button.cvd-mark{cursor:pointer}.cvv .cvd-mark.on{box-shadow:0 0 0 2px var(--cv-acc)}
.cvv .cvd-mark sup{font:700 .7rem system-ui,sans-serif;margin-right:.15em;color:var(--cv-acc)}
.cvv .cvd-note{margin:.5rem 0 0;padding:.45rem .65rem;border-left:4px solid var(--cv-gold);background:var(--mv-card);border-radius:8px;font-size:.93rem;line-height:1.45}

/* cv-case */
.cvv .cvk-card{background:var(--cv-paper);border:1px solid var(--mv-line);border-top:5px solid var(--cv-acc);border-radius:10px;padding:.7rem .9rem}
.cvv .cvk-name{margin:0;font:700 1.08rem Georgia,serif;color:var(--cv-ink);overflow-wrap:anywhere}
.cvv .cvk-meta{margin:.15rem 0 0;font-size:.85rem;color:var(--mv-muted)}
.cvv .cvk-vote{margin:.3rem 0 0;font-size:.85rem;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}
.cvv .cvk-vnote{flex-basis:100%;font-size:.8rem;color:var(--cv-mut);line-height:1.35}
.cvv .cvk-votes{display:inline-flex;gap:3px}.cvv .cvk-v{display:inline-block;width:12px;height:16px;border-radius:3px 3px 1px 1px}
.cvv .cvk-v.maj{background:var(--cv-acc)}.cvv .cvk-v.dis{background:transparent;border:2px solid var(--cv-mut);box-sizing:border-box}
.cvv .cvk-parts{margin:.6rem 0 0}
.cvv .cvk-parts dt{font:700 .75rem system-ui,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:#7a5c12;margin-top:.5rem}
.cvv .cvk-parts dd{margin:.1rem 0 0;font-size:.95rem;line-height:1.5}
.cvv .cvk-parts dd.cvk-holding{font-weight:600}

/* cv-scrutiny */
.cvv .cvz-q{margin:.2rem 0 .4rem;font-size:.95rem}
.cvv .cvz-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.6rem}
.cvv .cvz-chip{font:600 .85rem system-ui,sans-serif;color:var(--cv-ink);background:var(--mv-card);border:1px solid var(--mv-line);border-radius:999px;padding:.35rem .7rem;min-height:36px;text-align:left}
.cvv button.cvz-chip{cursor:pointer}.cvv .cvz-chip.on{background:var(--cv-acc);border-color:var(--cv-acc);color:#fff}
html[data-theme="dark"] .cvv .cvz-chip.on{color:#141a26}
.cvv .cvz-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem}
.cvv .cvz-tier{border-radius:12px;padding:.55rem .7rem;color:var(--cv-ink);border:1px solid rgba(0,0,0,.15)}
.cvv .cvz-tier h5{margin:0 0 .3rem;font:700 1rem system-ui,sans-serif}.cvv .cvz-tier p{margin:.15rem 0;font-size:.9rem;line-height:1.4}
.cvv .cvz-tier.on{box-shadow:0 0 0 3px var(--cv-acc)}.cvv .cvz-tier.ask{border:2px dashed var(--cv-gold);text-align:center}
.cvv .cvz-res{font-style:italic}.cvv .cvz-cases{font-size:.88rem;color:var(--mv-muted)}

/* cv-clause */
.cvv .cvc-search{width:100%;box-sizing:border-box;font:inherit;padding:.45rem .6rem;border:1px solid var(--mv-line);border-radius:8px;background:var(--mv-card);color:var(--cv-ink);margin-bottom:.5rem}
.cvv .cvc-tabs{margin-bottom:.5rem}
.cvv .cvc-pane{max-height:26rem;overflow:auto;border:1px solid var(--mv-line);border-radius:10px;background:var(--cv-paper);padding:.5rem .7rem}
.cvv .cvc-arttitle{margin:.1rem 0 .3rem;font:700 1rem Georgia,serif;color:var(--cv-acc)}.cvv .cvc-sectitle{margin:.6rem 0 .2rem;font:700 .9rem system-ui,sans-serif;color:var(--cv-ink)}
.cvv .cvc-list{list-style:none;margin:0;padding:0}
.cvv .cvc-clause{display:flex;gap:.6rem;padding:.3rem .2rem;border-bottom:1px solid var(--mv-line);font-size:.9rem;line-height:1.45}
.cvv .cvc-clause.hl{background:var(--cv-hl);border-radius:6px;padding:.3rem .4rem}
.cvv .cvc-id{flex:0 0 3.6rem;font:700 .8rem ui-monospace,monospace;color:var(--cv-acc);padding-top:.1rem}

/* cv-court and cv-amend (HTML diagrams) */
.cvv .cvc-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1rem;align-items:start}
.cvv .cvc-grid.one{grid-template-columns:minmax(0,420px);justify-content:center}
@media (max-width:520px){.cvv .cvc-grid{grid-template-columns:1fr}}
.cvv .cvc-col{display:flex;flex-direction:column;align-items:stretch}
.cvv .cvc-colhead{margin:0 0 .35rem;font:700 .95rem system-ui,sans-serif;color:var(--cv-acc);text-align:center}
.cvv .cvc-court{position:relative;border-radius:12px;padding:.5rem .7rem;border:1px solid rgba(0,0,0,.18);color:var(--cv-ink);text-align:center;line-height:1.35}
html[data-theme="dark"] .cvv .cvc-court{border-color:rgba(255,255,255,.18)}
.cvv .cvc-court b{display:block;font-size:1.02rem}.cvv .cvc-court span{display:block;font-size:.85rem;margin-top:.15rem}
.cvv .cvc-court em{position:absolute;top:-.55rem;right:.5rem;font:700 .7rem system-ui,sans-serif;font-style:normal;text-transform:uppercase;letter-spacing:.05em;padding:.05rem .4rem;border-radius:999px;background:var(--cv-ok);color:#fff}
.cvv .cvc-court.from em{background:#b23a48}
.cvv .cvc-court.hl,.cvv .cvc-court.from{box-shadow:0 0 0 3px #b23a48}.cvv .cvc-court.bound{box-shadow:0 0 0 3px var(--cv-ok)}
.cvv .cvc-court.ask{outline:3px dashed var(--cv-gold);outline-offset:2px}
.cvv .cvc-up{text-align:center;font-size:.78rem;color:var(--cv-mut);padding:.2rem 0;line-height:1.2}
.cvv .cvc-up span{display:block;font-size:1rem}.cvv .cvc-up.on{color:#b23a48;font-weight:700}
html[data-theme="dark"] .cvv .cvc-up.on,html[data-theme="dark"] .cvv .cvc-cert.on{color:#ff8f9c}
.cvv .cvc-cert{grid-column:1/-1;margin:.2rem 0 0;font-size:.85rem;color:var(--cv-mut);text-align:center}.cvv .cvc-cert.on{color:#b23a48;font-weight:600}
.cvv .cva-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:.5rem;align-items:center}
@media (max-width:520px){.cvv .cva-grid{grid-template-columns:1fr}.cvv .cva-arrow{transform:rotate(90deg)}}
.cvv .cva-col{display:flex;flex-direction:column;gap:.45rem}
.cvv .cva-opt{display:block;width:100%;box-sizing:border-box;text-align:left;font:inherit;color:var(--cv-ink);border-radius:12px;padding:.55rem .7rem;border:1px solid rgba(0,0,0,.18);line-height:1.35}
html[data-theme="dark"] .cvv .cva-opt{border-color:rgba(255,255,255,.18)}
.cvv button.cva-opt{cursor:pointer}.cvv .cva-opt b{display:block;font-size:.98rem}.cvv .cva-opt span{display:block;font-size:.85rem;margin-top:.2rem}
.cvv .cva-opt.on{box-shadow:0 0 0 3px #b23a48}
.cvv .cva-arrow{font-size:1.6rem;color:#b23a48;text-align:center}
/* narrow containers (class set by the kit): bigger text inside scaled drawings */
.cvv.cvv-narrow .cvm-ab{font-size:21px}.cvv.cvv-narrow .cvm-val{font-size:17px}
.cvv.cvv-narrow .cvm-pin{r:24px}.cvv.cvv-narrow .cvm-pinnum{font-size:26px;transform:translateY(3px);transform-box:fill-box}
.cvv.cvv-narrow .cvt-ticktext{font-size:13px}
.cvv .cvb-svg{max-width:640px;margin:0 auto}
.cvv.cvv-narrow .cvb-name{font-size:28px}
.cvv .cvb-stack .cvb-name,.cvv.cvv-narrow .cvb-stack .cvb-name{font-size:21px}.cvv .cvb-stack .cvb-job{font-size:16px}
html[data-theme="dark"] .cvv .cvk-parts dt{color:#e2c27a}
