/* G2 pages. These assets are excluded unless --glass is on. */
.g-lawmakers-page .g-main{max-width:1000px}
.g-member-controls{margin:0 0 18px}
.g-member-controls .g-fold-body{display:flex;flex-wrap:wrap;gap:12px 22px}
.g-member-controls fieldset{margin:0;padding:0;border:0;min-width:0}
.g-member-controls legend{padding:0 0 5px;font-size:12px;font-weight:700;color:var(--g-muted)}
.g-pills{display:flex;flex-wrap:wrap;gap:6px}
.g-pills label{position:relative;cursor:pointer;display:flex}
.g-pills input{position:absolute;opacity:0;width:100%;height:100%;inset:0;margin:0;cursor:pointer}
.g-pills span{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:8px 14px;border:1px solid #ffffff35;border-radius:999px;background:#10162c;color:#e1e6fc;font-size:14px;font-weight:650}
.g-pills input:checked+span{background:#e1e6fc;color:#080d21;border-color:#fff}
.g-pills input:focus-visible+span{outline:3px solid var(--g-teal);outline-offset:3px}
.g-member-count{margin:16px 4px;color:var(--g-muted);font-size:14px}
.g-member-wall{display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;padding:3px}
.g-directory:has(#sort-name:checked) [data-sort="name"],.g-directory:has(#sort-money:checked) [data-sort="money"],.g-directory:has(#sort-scams:checked) [data-sort="scams"]{display:grid}
.g-member-face{display:flex;flex-direction:column;border-radius:26px;box-shadow:0 0 0 1px #ffffff40,0 14px 28px -18px #000c;background:linear-gradient(150deg,#1b2037,#0b1024)}
.g-member-face>img{aspect-ratio:5/6;object-fit:cover;object-position:50% 15%}
.g-member-face .g-plate{position:static;flex:1;padding:12px 10px 14px;gap:8px;background:#0b1023}
.g-member-face .g-plate>strong{font:750 18px/1.13 var(--g-display);overflow-wrap:anywhere}
.g-member-face .g-face-meta{font-size:12px}
.g-member-face .g-plate>b{font-size:23px}
.g-member-grades{font-size:12px;font-weight:700;color:#fff}
.g-member-grades>span{color:var(--g-muted);font-weight:500}
.g-directory:has(#sort-money:checked) .g-member-face{box-shadow:0 0 0 3px var(--amount),0 14px 28px -18px #000c}
.glass-site .g-scale{background:#0b1023;border-radius:18px;padding:12px}
.glass-site.g-lawmaker .g-ambient img{opacity:.18}
.g-directory:has(#chamber-House:checked) .g-member-face:not([data-chamber="House"]),
.g-directory:has(#chamber-Senate:checked) .g-member-face:not([data-chamber="Senate"]),
.g-directory:has(#party-R:checked) .g-member-face:not([data-party="R"]),
.g-directory:has(#party-D:checked) .g-member-face:not([data-party="D"]),
.g-directory:has(#party-Unknown:checked) .g-member-face:not([data-party="Unknown"]){display:none}
.g-member-empty{display:none;padding:22px;border:1px solid #ffffff30;border-radius:24px;color:var(--g-muted);background:#11172c}
.g-directory[data-empty="true"] .g-member-empty{display:block}
.g-directory:has(#chamber-House:checked):has(#party-Unknown:checked):not(:has(.g-member-face[data-chamber="House"][data-party="Unknown"])) .g-member-empty,
.g-directory:has(#chamber-Senate:checked):has(#party-Unknown:checked):not(:has(.g-member-face[data-chamber="Senate"][data-party="Unknown"])) .g-member-empty,
.g-directory:has(#party-Unknown:checked):not(:has(.g-member-face[data-party="Unknown"])) .g-member-empty{display:block}
@media(min-width:600px){.g-member-wall{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}}
@media(min-width:900px){.g-member-wall{grid-template-columns:repeat(5,minmax(0,1fr))}.g-member-face .g-plate>strong{font-size:19px}}
/* G2 patterns and About. Long lists use painted glass, without backdrop blur. */
.g-patterns-page .g-main{max-width:1000px}
.g-pattern-page .g-main{max-width:780px}
.glass-site .g-pattern-grid{display:grid;gap:16px}
.glass-site .g-pattern-card{min-width:0;padding:20px 16px 14px;border:1px solid #ffffff30;border-radius:28px;background:linear-gradient(145deg,#1b2037,#0b1024 70%);box-shadow:inset 0 1px 0 #ffffff25}
.glass-site .g-pattern-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.glass-site .g-pattern-top h2{min-width:0;margin:0;font:750 clamp(25px,4vw,32px)/1.12 var(--g-display);letter-spacing:-.025em;overflow-wrap:anywhere}
.glass-site .g-pattern-top h2 a{display:flex;align-items:center;min-height:44px;text-decoration:none}
.glass-site .g-pattern-top h2 a:hover{text-decoration:underline}
.glass-site .g-pattern-count{flex:none;display:grid;gap:2px;min-width:62px;padding:9px 10px;text-align:center;border-radius:17px;background:#080d20;color:#fff;font:800 28px/1 var(--g-display)}
.glass-site .g-pattern-count>span{font:600 11px/1.4 var(--g-body);color:var(--g-muted)}
.glass-site .g-pattern-definition{color:var(--g-muted);font-size:16px;line-height:1.5;overflow-wrap:anywhere}
.glass-site .g-pattern-examples{list-style:none;margin:18px 0 12px;padding:0;display:grid;gap:7px}
.glass-site .g-pattern-examples a{display:grid;gap:9px;min-height:44px;padding:13px;border-radius:17px;background:#080d20;text-decoration:none;font:650 16px/1.35 var(--g-display);overflow-wrap:anywhere}
.glass-site .g-pattern-examples a:hover{background:#161e39}
.glass-site .g-pattern-example-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;color:var(--g-muted);font:650 12px/1.3 var(--g-body)}
.glass-site .g-pattern-example-meta .g-stamp{font-size:12px;min-height:28px;padding:4px 8px}
.glass-site .g-pattern-empty{color:var(--g-muted);font-size:14px}
.glass-site .g-pattern-rows{margin-top:20px}
.glass-site .g-pattern-tally{font:750 20px/1.25 var(--g-display)}
.glass-site .g-about-fold{margin-top:14px;background:linear-gradient(145deg,#1b2037,#0b1024 70%)}
.glass-site .g-about-fold>summary{min-height:70px;padding:20px;font:750 25px/1.2 var(--g-display);letter-spacing:-.02em}
.glass-site .g-about-fold .g-fold-body{padding:0 20px 20px}
.glass-site .g-about-fold h2{font:750 24px/1.2 var(--g-display);margin:24px 0 8px}
.glass-site .g-about-grades{display:flex;flex-wrap:wrap;gap:14px;margin:20px 0}
.glass-site .g-about-sources{margin:0;padding:0;list-style:none;color:var(--g-muted);font-size:14px;line-height:1.6}
.glass-site .g-about-sources li{margin:0;padding:16px 0;border-bottom:1px solid #ffffff24;overflow-wrap:anywhere}
.glass-site .g-about-sources strong{color:#fff}
.glass-site .g-about-build{margin:0;font-size:14px}
.glass-site .g-about-build>div{display:grid;grid-template-columns:80px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid #ffffff24}
.glass-site .g-about-build dt{color:var(--g-muted)}
.glass-site .g-about-build dd{margin:0;min-width:0;overflow-wrap:anywhere}
@media(min-width:760px){.glass-site .g-pattern-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.glass-site .g-pattern-card{padding:24px 22px 18px}}
/* G2 voting record: native folds and painted rows. */
.glass-site.g-votes-page .g-main{max-width:780px}
.glass-site .g-votes-person{display:flex;align-items:stretch;gap:14px;text-decoration:none;border-radius:24px;background:#0b1024;border:1px solid #ffffff30;padding:12px;margin-bottom:20px}
.glass-site .g-votes-person>img{width:88px;height:116px;object-fit:cover;object-position:center 15%;border-radius:17px;flex:none}
.glass-site .g-votes-name{display:flex;flex-direction:column;justify-content:center;gap:12px;min-width:0;background:#0b1024;border-radius:16px;padding:4px}
.glass-site .g-votes-name>strong{font:800 27px/1.15 var(--g-display);letter-spacing:-.03em;overflow-wrap:anywhere}
.glass-site .g-votes-name>span{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:var(--g-muted);font-size:13px}
.glass-site .g-vote-overview{padding:20px;border-radius:26px;background:linear-gradient(145deg,#1b2037,#0b1024 70%)}
.glass-site .g-vote-bar{height:23px}
.glass-site .g-vote-counts{display:flex;flex-wrap:wrap;gap:14px 24px;margin:18px 0 0}
.glass-site .g-vote-counts>div{display:flex;flex-direction:column-reverse;gap:4px;min-width:62px}
.glass-site .g-vote-counts dt{font-size:12px;color:var(--g-muted)}
.glass-site .g-vote-counts dd{margin:0;font:800 30px/1 var(--g-display);font-variant-numeric:tabular-nums}
.glass-site .g-vote-bar .g-position-yea{background:#91eacb}
.glass-site .g-vote-bar .g-position-nay{background:#e5aeff}
.glass-site .g-vote-bar .g-position-absent{background:#c6cde4}
.glass-site .g-vote-bar .g-position-present_not_voting{background:#8ebcff}
.glass-site .g-vote-bar .g-position-excused{background:#f5caa3}
.glass-site .g-vote-bar .g-position-conflict{background:#ff9299}
.glass-site .g-vote-bar .g-position-candidate{background:#efeaa3}
.glass-site .g-count-yea dd{color:#91eacb}
.glass-site .g-count-nay dd{color:#e5aeff}
.glass-site .g-count-absent dd{color:#c6cde4}
.glass-site .g-count-present_not_voting dd{color:#8ebcff}
.glass-site .g-count-excused dd{color:#f5caa3}
.glass-site .g-count-conflict dd{color:#ff9299}
.glass-site .g-count-candidate dd{color:#efeaa3}
.glass-site .g-vote-row{border:1px solid #ffffff29;background:linear-gradient(145deg,#1b2037,#0b1024 70%);border-radius:22px;margin:10px 0;overflow-wrap:anywhere}
.glass-site .g-vote-row>summary{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;gap:5px 10px;padding:14px;min-height:80px}
.glass-site .g-vote-row>summary:after{grid-column:3;grid-row:1/3}
.glass-site .g-vote-date{grid-column:1;font-size:12px;color:var(--g-muted);font-weight:500}
.glass-site .g-vote-bills{grid-column:1;font:700 17px/1.3 var(--g-display)}
.glass-site .g-vote-position{grid-column:2;grid-row:1/3;max-width:115px;padding:7px 10px;border-radius:13px;border:1px solid #ffffff30;background:#080d20;font-size:12px;text-align:center}
.glass-site .g-vote-position.g-position-yea{color:#91eacb}
.glass-site .g-vote-position.g-position-nay{color:#e5aeff}
.glass-site .g-vote-position.g-position-absent{color:#c6cde4}
.glass-site .g-vote-position.g-position-present_not_voting{color:#8ebcff}
.glass-site .g-vote-position.g-position-excused{color:#f5caa3}
.glass-site .g-vote-position.g-position-conflict{color:#ff9299}
.glass-site .g-vote-position.g-position-candidate{color:#efeaa3}
.glass-site .g-vote-links>div{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.glass-site .g-vote-row .g-fold-body{overflow-wrap:anywhere}
.glass-site .g-vote-loader{margin:20px 0}
.glass-site .g-vote-pages{display:flex;justify-content:space-between;gap:12px}
.glass-site .g-vote-loader button{cursor:pointer}
.glass-site .g-vote-loader button:disabled{opacity:.7;cursor:default}
.glass-site .g-vote-download{margin-top:20px}
