.election-summary{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:16px;margin-bottom:18px}.election-vote{padding:20px 23px;background:linear-gradient(115deg,#eeedff,#f6f5ff 80%);border:1px solid #dcd8f7;border-radius:17px;color:#30235b}.election-vote h2{font-size:21px;margin:11px 0}.election-date{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:19px;font-weight:700;margin:0}.election-date>span{font-size:14px;font-weight:500;margin-left:4px}.election-metrics{display:flex;gap:12px 22px;flex-wrap:wrap;margin-top:12px;font-size:14px}.election-metrics strong{font-size:17px;margin-right:4px}.election-grao{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:7px;padding:19px;border-radius:17px;background:linear-gradient(135deg,#5144a4,#7760c4);color:#fff;text-decoration:none}.election-grao:hover{color:#fff;box-shadow:0 7px 20px #5144a426}.election-grao .card-heading-icon{background:#ffffff1c;color:#fff;border-color:#ffffff30}.election-grao>strong{font-size:18px}.election-grao>span:not(.card-heading-icon){font-size:14px;color:#f1ebff}.election-grao>.icon{position:absolute;right:17px;top:22px}.election-filters{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(140px,1fr) minmax(140px,.8fr) auto;gap:12px;align-items:end}.election-filters label{font-size:14px;font-weight:600;min-width:0}.election-filters input,.election-filters select{margin-top:7px;font-size:15px;min-height:45px}.election-input{position:relative}.election-input>.icon{position:absolute;left:12px;top:14px;color:var(--muted);width:19px;height:19px}.election-input input{padding-left:39px}.election-filters .btn{min-height:45px}.election-tools{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:13px 0}.election-result-count{flex:1;margin:0;font-size:14px;font-weight:600;min-width:130px}.election-tools .btn{font-size:14px;min-height:40px;padding:8px 12px}.election-tools>.text-link{border:0;background:none;font-size:14px}.election-location-status:empty{display:none}.election-location-status{font-size:14px;margin:8px 0 14px}.election-map-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:16px;align-items:start}.election-map-column{min-width:0}.election-map{height:490px;z-index:0;border-radius:16px;border:1px solid var(--line);background:#e9edf3}.election-map-fallback{padding:25px;font-size:15px}.election-map-legend{display:flex;gap:8px 15px;flex-wrap:wrap;font-size:14px;line-height:1.5;padding:12px 0}.election-map-legend span{display:inline-flex;align-items:center;gap:6px}.election-map-legend i{width:10px;height:10px;border-radius:50%;background:#6159c7}.election-map-legend i.institution{background:#667789}.election-results{display:grid;gap:12px;max-height:540px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-right:5px}.election-place{padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:15px;min-width:0;overflow-wrap:anywhere}.election-place:focus-within{border-color:#6159c7}.election-place-heading{display:flex;align-items:center;gap:9px;font-size:14px;color:var(--muted)}.election-place-heading .card-heading-icon{width:31px;height:31px;flex-basis:31px}.election-place h3{font-size:16px;line-height:1.5;margin:11px 0 7px;font-weight:700}.election-place p{font-size:15px;line-height:1.6;margin:0 0 11px}.election-section-tags{display:flex;flex-wrap:wrap;gap:6px}.election-section-tag{display:inline-block;padding:4px 7px;font-size:14px;font-weight:700;border-radius:7px;color:#5144a4;background:#eeedff}.election-type-institution,.election-type-mobile{color:var(--muted);background:var(--bg)}.election-type-service{background:#fff3d8;color:#845c17}.election-place-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin-top:12px;font-size:14px}.election-place-actions a,.election-place-actions button{font-size:14px;border:0;background:none;padding:0;color:var(--section-deep);font-weight:600}.election-place-actions>span{color:var(--muted)}.election-place-actions .icon{width:16px;height:16px}.election-note{display:flex;align-items:flex-start;gap:11px;padding:16px 18px;background:var(--section-soft);border-radius:14px;margin:15px 0}.election-note>.icon{color:var(--section-deep);flex:none;margin-top:2px}.election-note p{margin:0;font-size:14px;line-height:1.7}.election-sources{font-size:14px;line-height:1.7;padding:10px 0}.election-sources summary{font-weight:600;cursor:pointer}.election-sources p{margin:11px 0}.election-no-results{padding:22px;font-size:15px;line-height:1.65;background:var(--surface);border-radius:14px}.election-marker{border:2px solid #fff;background:#6159c7;color:#fff;border-radius:11px 11px 11px 2px;box-shadow:0 2px 8px #25235040;display:grid;place-items:center}.election-marker .place-symbol-wrap,.election-marker .place-symbol{display:block;width:22px;height:22px}.election-marker-institution{background:#667789}.election-popup h3{font-size:15px;margin:5px 0 8px}.election-popup p{font-size:14px;line-height:1.6;margin:6px 0}.election-popup .election-section-tags{margin:10px 0}.election-popup a{font-size:14px}.election-map .leaflet-popup-content{max-width:calc(100vw - 90px)}
[data-theme=dark] .election-vote{background:linear-gradient(115deg,#2c2544,#242638);border-color:#47405e;color:#f0eaff}[data-theme=dark] .election-section-tag{background:#393052;color:#e3d4ff}[data-theme=dark] .election-type-institution,[data-theme=dark] .election-type-mobile{background:var(--bg);color:var(--muted)}[data-theme=dark] .election-type-service{background:#453b26;color:#f4d79b}[data-theme=dark] .election-note{background:#2d2941}[data-theme=dark] .election-note .icon{color:#d4bfff}[data-theme=dark] .election-place-actions a,[data-theme=dark] .election-place-actions button{color:#d5bdff}[data-theme=dark] .election-map .leaflet-popup-content-wrapper{background:var(--surface);color:var(--ink)}
@media(max-width:1020px){.election-filters{grid-template-columns:minmax(0,1.4fr) minmax(130px,1fr)}.election-map-layout{grid-template-columns:minmax(0,1fr) minmax(280px,.85fr)}.election-submit{align-self:end}.election-map{height:470px}.election-summary{grid-template-columns:minmax(0,1fr) 220px}}
@media(max-width:760px){.election-summary{grid-template-columns:minmax(0,1fr);gap:10px}.election-vote{padding:17px}.election-vote h2{font-size:18px}.election-grao{display:grid;grid-template-columns:34px minmax(0,1fr) 20px;gap:3px 10px;padding:14px}.election-grao .card-heading-icon{grid-row:1/3}.election-grao>strong{font-size:16px;grid-column:2}.election-grao>span:not(.card-heading-icon){grid-column:2}.election-grao>.icon{position:static;grid-column:3;grid-row:1/3}.election-map-layout{grid-template-columns:minmax(0,1fr)}.election-map{height:330px}.election-results{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;overflow:visible;padding:0}.election-filters{gap:10px}.election-query-label{grid-column:1/-1}.election-filters .election-submit{grid-column:1/-1}.elections-app.js-ready .election-submit{display:none}.election-tools .btn{font-size:14px}.election-map-legend{font-size:14px}.election-result-count{flex-basis:100%;min-width:0}.election-map-fallback{padding:18px}}
@media(max-width:500px){.election-results{grid-template-columns:minmax(0,1fr)}.election-date{font-size:18px}.election-date>span{margin-left:0}.election-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.election-filters label{font-size:14px}.election-filters .form-select{padding-left:9px;font-size:14px}.election-metrics{gap:5px 15px}.election-tools{gap:9px}.election-map{height:300px}.election-note{padding:14px}.election-place{padding:15px}}

.election-more{grid-column:1/-1;justify-self:start;margin-bottom:5px;font-size:14px}.election-vote h2,.election-vote .election-date{color:inherit}.election-map-column .leaflet-control-attribution{font-size:14px}

@media(max-width:760px){.is-interior[data-section=elections] .page-heading .page-breadcrumbs{display:none}.is-interior[data-section=elections] .page-heading{padding:14px 52px 14px 14px}.is-interior[data-section=elections] .page-heading h1{font-size:20px}.is-interior[data-section=elections] .page-heading .page-section-mark{width:38px;height:38px;flex-basis:38px}.is-interior[data-section=elections] .page-heading p{font-size:14px}.election-grao{min-height:48px;padding:10px 13px}.election-grao .card-heading-icon{grid-row:1}.election-grao>span:not(.card-heading-icon){display:none}.election-grao>.icon{grid-row:1}.election-vote h2{font-size:16px}.election-metrics{gap:7px 14px}.election-metrics strong{font-size:16px}.election-summary{margin-bottom:15px}}

.public-site[data-section=elections][data-theme=dark]{--section-soft:#2e2847;--section-deep:#d4c3ff}
