/* Election Day pages (/election-day, /vote-jou-eleksyon). Builds on early-voting.v1.css and each page's inline :root tokens. */
.ed-h1{max-width:26ch}
.ed-callout{background:var(--gold);color:var(--navy-deep);border-left:8px solid var(--red);border-radius:var(--r);padding:20px 24px;max-width:70ch;margin:8px 0 18px;box-shadow:0 8px 24px rgba(4,12,34,.35)}
.ed-callout p{font-size:clamp(18px,2.3vw,22px);line-height:1.45;font-weight:600;color:var(--navy-deep)}
.ed-callout strong{font-weight:900}
.ed-cand{color:var(--cloud);font-weight:700;font-size:17px;margin-bottom:16px}
.ed-acts{display:flex;flex-wrap:wrap;gap:12px}
.ev-hero .ed-acts .ev-btn--ghost{border-color:var(--gold);color:var(--navy-deep)}
.ed-search label{display:block;font-weight:800;color:var(--navy);font-size:17px;margin-bottom:6px}
.ed-searchrow{display:flex;flex-wrap:wrap;gap:12px}
.ed-searchrow input{flex:1 1 280px;min-height:52px;padding:10px 14px;border:2px solid #5b6b86;border-radius:var(--r-sm);background:#fff;color:var(--ink);font:400 16px/1.4 Archivo,system-ui,sans-serif}
.ed-searchrow input:focus,.ev-tools input:focus{outline:3px solid var(--gold);outline-offset:2px}
.ed-searchrow .ev-btn{flex:0 0 auto;min-height:52px}
.ed-priv{margin:8px 0 0;font-size:15px!important;color:var(--ink-soft)!important}
.ed-result{margin:16px 0 0;min-height:0}
.ed-result:focus{outline:none}
.ed-card{background:#fff;border:var(--edge);border-left:8px solid var(--red);border-radius:var(--r);padding:18px 20px;box-shadow:0 8px 24px rgba(21,37,86,.1)}
.ed-card h3{margin:0 0 6px;font-size:22px;color:var(--navy)}
.ed-card .where{font-size:20px;font-weight:800;color:var(--navy);margin:0}
.ed-card .addr{font-size:17px;margin:2px 0 12px}
.ed-card .small{font-size:15px;color:var(--ink-soft);margin:10px 0 0}
.ed-card .acts{display:flex;flex-wrap:wrap;gap:10px}
.ed-card.warn{border-left-color:var(--gold)}
.ed-card.warn a{font-weight:700}
.ed-official{margin-top:22px;padding:18px 20px;background:var(--paper-dim);border-radius:var(--r)}
.ed-official h3{margin-top:0}
.ed-offlinks{display:flex;flex-wrap:wrap;gap:10px}
.ed-tablewrap{margin:8px 0 22px}
.ed-table{width:100%;border-collapse:collapse;background:#fff;font-size:16px;border:var(--edge);border-radius:var(--r-sm);overflow:hidden}
.ed-table th,.ed-table td{padding:12px 14px;border-bottom:1px solid rgba(21,37,86,.14);text-align:left;vertical-align:top}
.ed-table thead th{background:var(--navy);color:#fff;font-size:14px;letter-spacing:.06em;text-transform:uppercase}
.ed-table tbody th{color:var(--red-deep);font-weight:900;white-space:nowrap}
.ed-table td b{color:var(--navy)}
.ed-table a.dir{display:inline-flex;align-items:center;min-height:44px;font-weight:800;color:#0b3d91}
.ed-table tr[hidden]{display:none}
.ed-table tr.hit{outline:3px solid var(--gold);outline-offset:-3px;background:#fff8dc}
@media (max-width:719px){
  .ed-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .ed-table,.ed-table tbody,.ed-table tr,.ed-table th,.ed-table td{display:block;width:100%}
  .ed-table tr{padding:12px 14px;border-bottom:1px solid rgba(21,37,86,.14);border-left:6px solid var(--red)}
  .ed-table th,.ed-table td{padding:2px 0;border:0}
  .ed-table tbody th{font-size:18px}
  .ed-table td[data-label]::before{content:attr(data-label) ": ";font-weight:700;color:var(--ink-soft);font-size:13px;text-transform:uppercase;letter-spacing:.05em}
  .ed-table td[data-label="Directions"]::before,.ed-table td[data-label="Wout"]::before{content:""}
}
.ed-map{height:min(70vh,520px);min-height:340px;border-radius:var(--r);border:var(--edge);background:#dfe6f0;overflow:hidden;margin:6px 0}
.ed-map[hidden]{display:none}
.ed-pin{width:26px;height:26px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--red);border:3px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.45)}
.ed-pin.on{background:var(--gold);border-color:var(--navy-deep);width:32px;height:32px}
.ed-pop b{display:block;color:var(--navy);font-size:15px}
.ed-pop span{display:block;font-size:14px;color:var(--ink)}
.ed-pop a{display:inline-block;margin-top:6px;font-weight:800;color:#0b3d91}
.ed-noscript{padding:16px clamp(20px,5vw,56px);background:var(--gold);color:var(--navy-deep);font-weight:700}
.ed #mail p{max-width:68ch}
.ed #mail p+p{margin-top:2px}
.ed-ptip{font:800 14px/1.2 Archivo,system-ui,sans-serif;color:var(--navy);padding:4px 8px;border-radius:6px}
