.ballot-issue-card { position: relative; min-width: 0; }
.ballot-issue-card > .precinct-race-card { height: 100%; padding-right: 42px; box-sizing: border-box; }
.ballot-proposal-trigger { position: absolute; right: 10px; top: 10px; width: 24px; height: 24px; padding: 0; display: grid; place-items: center; border: 1px solid #55766f; border-radius: 50%; color: #173d48; background: #f8f5e9; font: bold 14px/1 Georgia, serif; cursor: pointer; }
.ballot-proposal-trigger:hover, .ballot-proposal-trigger:focus-visible { background: #efd18c; outline: 2px solid #173d48; outline-offset: 2px; }
.ballot-proposal-popup { position: fixed; z-index: 1000; width: min(480px, calc(100vw - 32px)); max-height: min(480px, calc(100dvh - 32px)); overflow-y: auto; box-sizing: border-box; padding: 20px; border: 1px solid #be9b4b; border-top: 4px solid #d6b967; border-radius: 4px; background: #fffdf6; color: #183c4a; box-shadow: 0 8px 30px #092b4933; text-align: left; }
.ballot-proposal-popup[hidden] { display: none; }
.ballot-proposal-popup h5 { margin: 0 36px 12px 0; font: 700 21px Georgia, serif; }
.ballot-proposal-popup p { margin: 0 0 12px; font: 400 15px/1.6 Arial, sans-serif; text-transform: none; letter-spacing: normal; }
.ballot-proposal-popup a { color: #23675e; font: 700 13px/1.5 Arial, sans-serif; }
.ballot-proposal-close { position: absolute; top: 10px; right: 10px; width: 32px; height: 32px; border: 0; background: transparent; color: #183c4a; font-size: 24px; cursor: pointer; }
