/* Victoria Election 2026 — independent public-information theme.
   Civic styling inspired by accessible government information design;
   this website is NOT associated with the Victorian Government or VEC. */
@import url('https://fonts.googleapis.com/css2?family=Public+Sans:wght@400;500;600;700;800&display=swap');
:root {
  --paper:#f3f6fa;
  --ink:#172b43;
  --sub:#52637b;
  --line:#d5dfeb;
  --accent:#0052c2;
  --blue:#0052c2;
  --panel:#fff;
  --display:'Public Sans',Arial,Helvetica,sans-serif;
  --body:'Public Sans',Arial,Helvetica,sans-serif;
  --mono:Arial,Helvetica,sans-serif;
}
html{scroll-padding-top:80px}
body{background:var(--paper);color:var(--ink);font-size:13px}
.accent{height:5px;background:linear-gradient(90deg,#003174 0 32%,#0052c2 32% 77%,#0095ec 77%)}
.topbar{background:#fff;border-color:#d5dfeb;box-shadow:0 2px 8px rgba(22,48,86,.035)}
.topbar-inner{height:74px;gap:20px}
.civic-identity{display:flex;align-items:center;gap:13px;min-width:0}
.civic-mark{width:43px;height:43px;display:grid;place-items:center;background:#003174;border-radius:3px;flex:0 0 auto}
.civic-mark svg{width:29px;height:29px}
.civic-name{display:flex;flex-direction:column;gap:5px;min-width:0}
.civic-name strong{font:800 20px/1.09 var(--display);letter-spacing:-.035em;color:#102b4c}
.civic-name small{font:700 9px/1.1 var(--body);letter-spacing:.115em;color:#63758b}
.header-right{gap:12px}
.header-status{font:700 9px/1.3 var(--body);color:#46627b;letter-spacing:.025em}
.header-status i{background:#0052c2}
.header-right>a{padding:9px 13px;border:1px solid #bfd1e5;background:#f7faff;color:#003174;font:700 10px/1.2 var(--body)}
.header-right>a:hover{background:#e6f5fd;border-color:#0052c2;color:#003174}
.header-right>a.official-link{background:#003174;border-color:#003174;color:#fff}
.header-right>a.official-link:hover{background:#0052c2}
.header-right>a>span{color:inherit}
.independence-notice{border-top:1px solid #e8eef5;color:#506581;background:#f4f8fd;font-size:10px;line-height:1.3}
.independence-notice .shell{padding:7px 0;display:flex;align-items:center;gap:7px}
.independence-notice strong{color:#003174}
.notice-icon{display:inline-grid;place-items:center;width:15px;height:15px;background:#d9e8fa;color:#003174;font-weight:800;font-size:10px;border-radius:50%;flex:0 0 auto}
.lead{padding:23px 0 18px;gap:28px}
.overline{font:750 10px/1.4 var(--body);color:#0052c2;letter-spacing:.075em}
.overline-marker{width:7px;height:7px;background:#0052c2;border-radius:2px}
.lead h1{font:800 clamp(32px,3.55vw,46px)/1.08 var(--display);letter-spacing:-.043em;margin:8px 0 10px;color:#0e2d4b}
.lead h1 em{font-style:normal;text-decoration:underline;text-decoration-color:#9bcdef;text-decoration-thickness:3px;text-underline-offset:7px}
.lead p{color:#52647b;font:450 12px/1.55 var(--body)}
.lead-right{border-left-color:#cbd9e7}
.time-label{color:#5a7189;font:700 9px/1.4 var(--body);letter-spacing:.035em}
.countdown{color:#003174;letter-spacing:-.06em;font-size:43px}
.election-time{font:700 10px/1.45 var(--body);color:#415c78}
.election-time b{color:#0052c2}
.quiet-link{color:#0052c2;text-decoration:underline;text-underline-offset:3px}
.fact-strip{background:#fff;border-color:#d6e0ec;box-shadow:0 2px 6px rgba(24,56,84,.02)}
.fact-strip>div{border-right:1px solid #e2e9f2}
.fact-number{color:#003174;font-weight:800;letter-spacing:-.04em}
.fact-strip strong{font-weight:750;color:#102d49}
.fact-strip small{color:#657892}
.fact-action{background:#003174;color:white;font-weight:750}
.fact-action:hover{background:#0052c2}
.fact-action b{color:#c9e9ff}
.workspace{border-color:#d4e0ed;background:white;box-shadow:0 3px 13px rgba(23,55,89,.035)}
.tabs{background:#f5f8fc;border-bottom-color:#d7e3f1}
.tab{color:#5a6c80;font-weight:700}
.tab:hover{background:#eaf1fb;color:#003174}
.tab.active{border-bottom:3px solid #0052c2;color:#003174;background:#fff}
.tab span,.tab.active span{color:#507ba8}
.panel{background:#fff}
.panel-eyebrow{color:#0052c2;font:750 10px/1.4 var(--body);letter-spacing:.045em}
.bullet{background:#0095ec;border-radius:2px}
.feature-panel{background:#003174;color:#fff;border:1px solid #003174}
.feature-panel .panel-eyebrow{color:#b9e6ff}
.feature-panel h2{font-weight:750;letter-spacing:-.035em}
.feature-panel>p{color:#e1ecf7}
.feature-panel>p strong{color:#fff}
.primary-button{background:#0052c2;color:#fff;border:1px solid #0052c2;font-weight:750}
.primary-button:hover{background:#003174;color:#fff}
.feature-panel .primary-button{background:#fff;border:1px solid #fff;color:#003174}
.feature-panel .primary-button:hover{background:#e6f5fd;border-color:#e6f5fd;color:#003174}
.inline-button{color:#d8efff;text-decoration:underline;text-underline-offset:3px}
.feature-note{color:#d1e4f5}
.feature-note b{color:#fff}
.baseline-panel{border-color:#d7e2ee;background:#fff}
.baseline-panel h2{letter-spacing:-.03em;color:#102c4a}
.tiny-tag{background:#edf3fa;color:#2b5179;border:1px solid #d6e3f1;font:750 8px/1.25 var(--body)}
.baseline-bar{background:#edf2f8}
.party-key>div{color:#354d66}
.party-key b{color:#142c49}
.source-line{color:#586e84}
.source-line>a,.overview-bottom a,.voting-panel>a,.district-item>button{color:#0052c2;text-decoration:underline;text-underline-offset:3px}
.overview-bottom>div{border-top:1px solid #d9e4ef}
.overview-bottom strong{color:#193c60}
.overview-bottom span{color:#64768a}
.builder-heading h2,.district-head h2,.polls-layout h2{letter-spacing:-.03em;color:#143554}
.builder-heading p,.district-head p,.polls-main>p{color:#586c83}
.quiet-button,.outline-button{border-color:#c5d6e8;background:#fff;color:#003174}
.quiet-button:hover,.outline-button:hover{border-color:#0052c2;background:#eff6fd;color:#0052c2}
.scenario-main{background:#f5f8fc;border-color:#d7e2ed}
.scenario-bar-label{color:#50667e;font-weight:750}
.scenario-bar-label b{color:#71849a}
.scenario-bar{background:#e7eff8}
.scenario-legend span{color:#485f75}
.scenario-legend b{color:#183652}
.scenario-controls>span{color:#647890}
.preset{border-color:#c8d7e6;background:white;color:#345470;font-weight:700}
.preset:hover{background:#e8f2fe}
.preset.is-active{background:#003174;border-color:#003174;color:#fff}
.scenario-footer{border-top-color:#d7e3ed;color:#586d82}
.share-button{background:#0052c2;color:white}
.share-button:hover{background:#003174;color:white}
.majority-panel{background:#07345f;color:#fff}
.majority-panel .panel-eyebrow{color:#a7deff}
.maj-count span{color:#c5d6e7}
.maj-track{background:#365d83}
.maj-track span{background:#61c0ff}
.majority-panel>p{color:#d2dfec}
.coalition-choices label{color:#fff}
.coalition-choices input{accent-color:#58b8ff}
.edit-districts{border-top-color:#dbe5f1}
.edit-head span,.micro-note{color:#64788c}
.search-box{border-color:#c8d9e9;background:#fff}
.search-box>span{color:#5e7690}
.search-box input{color:#102e4d}
.builder-district,.district-item{border-color:#d9e4f0;background:#fff}
.builder-district.changed{border-color:#86b5e5;background:#eff6ff}
.builder-district select{border-color:#c8d9e9;color:#203e59}
.district-controls>select{border-color:#c8d9e9;color:#2d4b65}
.record-count,.district-item>span{color:#667e96}
.polls-empty{background:#f0f6fc;border-color:#d5e4f1}
.polls-icon{background:#d9ecff;color:#0052c2}
.polls-empty span:last-child{color:#5e7185}
.poll-cta>a{color:#0052c2;text-decoration:underline}
.voting-panel{border-color:#d6e2ef;background:#fbfdff}
.date-item{border-bottom-color:#e0e9f3}
.date-item>span{background:#e6f0fa;color:#486984}
.date-item b{color:#003174}
.date-item small{color:#657b93}
.below-workspace{color:#5f7285}
.below-workspace strong{color:#23476d}
.below-workspace>span{color:#6c7c90}
.below-workspace a{color:#0052c2}
.small-dot{background:#0052c2}
.footer{background:#e8eef5;border-top-color:#d8e3ef}
.footer-inner{color:#556c82}
.footer-inner strong{color:#214362}
.footer-inner a{color:#0052c2;text-decoration:underline}
/* A compact civic header that preserves room for data above the fold. */
@media(max-width:840px){.topbar-inner{height:67px}.header-right .header-status{display:none}.civic-name strong{font-size:19px}}
@media(max-width:600px){
 .topbar-inner{height:auto;min-height:64px;gap:8px}
 .civic-mark{width:33px;height:33px}.civic-mark svg{width:24px;height:24px}
 .civic-identity{gap:8px}.civic-name strong{font-size:14px}.civic-name small{font-size:7px;letter-spacing:.06em}
 .header-right{gap:5px}.header-right>a{font-size:9px;padding:7px 8px}
 .header-right>a.all-elections-link{display:none}
 .independence-notice{font-size:9px}
 .lead{padding-top:17px}.lead h1{font-size:clamp(28px,7vw,37px);line-height:1.12}
 .lead-right{gap:8px}.countdown{font-size:29px}
 .feature-panel{padding:16px}.feature-panel h2{font-size:22px}
 .panel{padding:12px}.tab.active{border-color:#0052c2}
}
@media(max-width:360px){.civic-name strong{font-size:13px}.header-right>a{padding:7px 5px;font-size:8px}.civic-name small{letter-spacing:0}}
