.cn7ap {
  --ap-bg: #f7f7f5;
  --ap-card: #ffffff;
  --ap-card2: #f0efeb;
  --ap-ink: #22211d;
  --ap-muted: #5b5953;
  --ap-border: #d5d3cd;
  --ap-control-border: #858278;
  --ap-c1: #d7262e;
  --ap-c2: #2e5bdb;
  --ap-c1-text: #ad1926;
  --ap-c2-text: #244bb5;
  --ap-accent: #6a5200;
  --ap-focus: #7048aa;
  --ap-radius: 12px;
  --ap-font: Poppins, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ap-grid: #d5d3cd;
  --ap-map-neutral: #cac8c1;
  --ap-map-line: #eeede8;
  color-scheme: light;
  box-sizing: border-box;
  position: relative;
  isolation: isolate;
  clear: both;
  width: 100%;
  max-width: 1320px;
  margin: 0 auto 24px;
  padding: 16px 20px;
  border: 1px solid var(--ap-border);
  border-radius: var(--ap-radius);
  background: var(--ap-bg);
  color: var(--ap-ink);
  font: 13px/1.45 var(--ap-font);
  font-variant-numeric: tabular-nums;
  text-align: start;
}
.cn7ap[data-tema="escuro"] {
  --ap-bg: #151514;
  --ap-card: #1e1e1b;
  --ap-card2: #2a2a25;
  --ap-ink: #f9f8f4;
  --ap-muted: #c7c5bb;
  --ap-border: #4d4c43;
  --ap-control-border: #939082;
  --ap-c1-text: #ff929a;
  --ap-c2-text: #a2b7ff;
  --ap-accent: #f1d46b;
  --ap-focus: #f8d477;
  --ap-grid: #4d4c43;
  --ap-map-neutral: #414139;
  --ap-map-line: #25251f;
  color-scheme: dark;
}
.cn7ap [hidden] { display: none !important; }
.cn7ap button, .cn7ap input, .cn7ap select, .cn7ap textarea { font: inherit; letter-spacing: normal; text-transform: none; }
.cn7ap button, .cn7ap select, .cn7ap input { min-height: 44px; color: var(--ap-ink); background: var(--ap-card2); border: 1px solid var(--ap-control-border); border-radius: 8px; box-shadow: none; }
.cn7ap button { cursor: pointer; padding: 8px 12px; line-height: 1.25; margin: 0; }
.cn7ap button:hover:not(:disabled):not([aria-pressed="true"]):not([aria-selected="true"]) { background: var(--ap-border); }
.cn7ap button:disabled { cursor: not-allowed; opacity: .66; }
.cn7ap button[aria-pressed="true"], .cn7ap button[aria-selected="true"] { background: var(--ap-ink); border-color: var(--ap-ink); color: var(--ap-bg); }
.cn7ap select { padding: 7px 30px 7px 10px; max-width: 100%; }
.cn7ap input { padding: 10px 12px; width: 100%; }
.cn7ap a { color: inherit; text-underline-offset: 3px; }
.cn7ap a:hover { text-decoration-thickness: 2px; }
.cn7ap button svg { display: block; flex: none; }
.cn7ap :focus-visible { outline: 3px solid var(--ap-focus); outline-offset: 3px; }
.cn7ap h1, .cn7ap h2, .cn7ap h3, .cn7ap h4, .cn7ap p { margin: 0 0 10px; color: inherit; font-family: var(--ap-font); }
.cn7ap h1, .cn7ap h2, .cn7ap h3, .cn7ap h4 { line-height: 1.25; font-weight: 600; text-transform: none; letter-spacing: normal; }
.cn7ap h2 { font-size: 21px; }
.cn7ap h3 { font-size: 15px; }
.cn7ap h4 { font-size: 14px; }
.cn7ap img { max-width: 100%; }
.cn7ap .ap-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.cn7ap .ap-skip { position: absolute; top: 8px; left: 8px; z-index: 40; padding: 12px 20px; background: var(--ap-ink); color: var(--ap-bg); clip-path: inset(100%); }
.cn7ap .ap-skip:focus { clip-path: none; }
.cn7ap #ap-root { min-width: 0; display: flex; flex-direction: column; }
.cn7ap .ap-loading { min-height: 680px; align-items: center; justify-content: center; }
.cn7ap .ap-header { min-height: 44px; height: auto; display: flex; align-items: center; gap: 16px; margin-bottom: 10px; padding: 0; border: 0; background: transparent; }
.cn7ap .ap-brand { display: flex; align-items: center; gap: 9px; text-decoration: none; flex: none; }
.cn7ap .ap-brand > strong { font-size: 25px; font-weight: 800; letter-spacing: -2px; line-height: 1; color: #fff; background: #171717; padding: 6px 8px; border-radius: 6px; }
.cn7ap .ap-brand strong span { color: #ffd215; }
.cn7ap .ap-brand > span { color: var(--ap-muted); font-size: 10px; line-height: 1.3; }
.cn7ap .ap-brand > span b { display: block; color: var(--ap-ink); font-weight: 600; font-size: 12px; letter-spacing: 2px; }
.cn7ap .ap-offices { display: flex; gap: 3px; border: 1px solid var(--ap-border); background: var(--ap-card); padding: 2px; border-radius: 99px; }
.cn7ap .ap-offices button { border: 0; border-radius: 99px; background: transparent; padding-inline: 14px; font-weight: 600; font-size: 12px; }
.cn7ap .ap-offices button[aria-pressed="true"] { color: var(--ap-bg); background: var(--ap-ink); }
.cn7ap .ap-gov-picker { display: flex; gap: 7px; align-items: center; font-size: 11px; }
.cn7ap .ap-gov-picker select { max-width: 200px; }
.cn7ap .ap-tools { margin-inline-start: auto; display: flex; align-items: center; gap: 5px; }
.cn7ap .ap-tools button { width: 44px; padding: 0; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: transparent; }
.cn7ap .ap-tools button[aria-pressed="true"] { background: var(--ap-ink); }
.cn7ap .ap-tools .ap-search-button { width: auto; padding: 0 12px; gap: 7px; border-radius: 99px; }
.cn7ap .ap-fixture { margin: 0 0 8px; padding: 5px 10px; border: 1px solid var(--ap-border); border-radius: 8px; color: var(--ap-ink); background: var(--ap-card2); font-size: 10px; text-align: center; }
.cn7ap #ap-main { display: flex; flex-direction: column; min-width: 0; outline-offset: 0; }
.cn7ap .ap-duel { border: 1px solid var(--ap-border); border-radius: var(--ap-radius); padding: 10px 16px; background: var(--ap-card); position: relative; flex-shrink: 0; }
.cn7ap .ap-race-heading { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin-bottom: 8px; }
.cn7ap .ap-race-heading h2 { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .05em; margin: 0; color: var(--ap-muted); }
.cn7ap .ap-live-state { display: flex; align-items: center; gap: 6px; font-size: 11px; color: var(--ap-accent); }
.cn7ap .ap-live-state::before { content: ''; display: block; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.cn7ap .ap-live-state.is-replay { color: var(--ap-muted); }
.cn7ap .ap-candidates { display: grid; grid-template-columns: 1fr 1fr; gap: 44px; }
.cn7ap .ap-candidate { display: flex; align-items: center; gap: 16px; justify-content: space-between; min-width: 0; }
.cn7ap .ap-candidate-1 { flex-direction: row-reverse; text-align: end; }
.cn7ap .ap-person { display: flex; align-items: center; gap: 10px; min-width: 0; }
.cn7ap .ap-person img { width: 44px; height: 50px; flex: none; object-fit: cover; object-position: center top; border-radius: 7px; background: var(--ap-card2); }
.cn7ap .ap-person strong { display: block; font-size: 14px; line-height: 1.25; overflow-wrap: anywhere; }
.cn7ap .ap-person span { font-size: 11px; color: var(--ap-muted); }
.cn7ap .ap-candidate-1 .ap-person { flex-direction: row-reverse; }
.cn7ap .ap-candidate-value { flex: none; }
.cn7ap .ap-candidate-value b { display: block; font: 600 32px/1.1 var(--ap-font); letter-spacing: -.04em; color: var(--ap-c1-text); }
.cn7ap .ap-candidate-1 .ap-candidate-value b { color: var(--ap-c2-text); }
.cn7ap .ap-candidate-value span { display: block; font-size: 11px; color: var(--ap-muted); margin-top: 3px; }
.cn7ap .ap-candidate-status { display: block; font-size: 10px; color: var(--ap-muted); margin-top: 3px; }
.cn7ap .ap-countdown { text-align: center; font-size: 21px; font-weight: 600; margin: 12px 0 16px; }
.cn7ap .ap-dual-bar { height: 17px; border-radius: 4px; background: var(--ap-card2); position: relative; display: flex; justify-content: space-between; margin: 15px 0 7px; }
.cn7ap .ap-dual-bar > i { height: 100%; display: block; transition: width 350ms ease-out; }
.cn7ap #ap-bar-a { background: var(--ap-c1); border-radius: 4px 0 0 4px; }
.cn7ap #ap-bar-b { background: var(--ap-c2); border-radius: 0 4px 4px 0; }
.cn7ap .ap-half { position: absolute; top: -4px; bottom: -4px; left: 50%; width: 1px; background: var(--ap-ink); }
.cn7ap .ap-half b { font: 600 10px/1.3 var(--ap-font); position: absolute; top: -9px; left: 50%; transform: translateX(-50%); background: var(--ap-card); color: var(--ap-ink); padding: 0 3px; }
.cn7ap .ap-duel-meta { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 4px 16px; font-size: 10px; color: var(--ap-muted); }
.cn7ap #ap-counted { color: var(--ap-accent); }
.cn7ap .ap-separator { padding-inline: 4px; }
.cn7ap .ap-tabs { display: flex; gap: 5px; margin: 8px 0; overflow-x: auto; padding: 3px; flex-shrink: 0; }
.cn7ap .ap-tabs button { flex: none; border-color: transparent; background: transparent; font-size: 12px; font-weight: 600; }
.cn7ap .ap-tabs button[aria-selected="true"] { color: #1c1b17; background: #ffd215; border-color: #a58600; }
.cn7ap .ap-views { height: 380px; min-width: 0; }
.cn7ap .ap-tabpanel { height: 100%; min-width: 0; min-height: 0; overflow: auto; }
.cn7ap .ap-map-section { position: relative; display: flex; flex-direction: column; }
.cn7ap .ap-map-toolbar { display: flex; align-items: center; gap: 10px; justify-content: space-between; flex-shrink: 0; }
.cn7ap .ap-modes { display: flex; gap: 3px; flex-wrap: wrap; }
.cn7ap .ap-modes button { font-size: 11px; border-radius: 99px; border-color: transparent; background: transparent; padding: 6px 10px; }
.cn7ap .ap-modes button[aria-pressed="true"] { background: var(--ap-ink); color: var(--ap-bg); }
.cn7ap .ap-uf-control { max-width: 210px; min-width: 0; }
.cn7ap .ap-uf-control select { font-size: 11px; background: transparent; }
.cn7ap .ap-map-frame { position: relative; width: 100%; height: 270px; min-height: 190px; flex: 1; overflow: hidden; border-radius: 10px; margin-top: 4px; isolation: isolate; }
.cn7ap #ap-map-canvas, .cn7ap #ap-map-overlay { position: absolute; inset: 0; width: 100%; height: 100%; }
.cn7ap #ap-map-canvas { touch-action: none; cursor: grab; }
.cn7ap #ap-map-overlay { pointer-events: none; }
.cn7ap .ap-map-location { position: absolute; bottom: 10px; left: 8px; max-width: calc(100% - 100px); background: var(--ap-card); border: 1px solid var(--ap-border); border-radius: 99px; padding: 6px 10px; font-size: 10px; color: var(--ap-muted); pointer-events: none; }
.cn7ap .ap-map-message { position: absolute; inset: 0; display: flex; gap: 16px; flex-direction: column; align-items: center; justify-content: center; color: var(--ap-muted); background: var(--ap-bg); z-index: 2; text-align: center; padding: 16px; }
.cn7ap .ap-map-tooltip { position: absolute; width: min(272px, calc(100% - 16px)); padding: 12px; background: var(--ap-card); border: 1px solid var(--ap-control-border); border-radius: 10px; box-shadow: 0 8px 24px #0003; z-index: 3; pointer-events: none; font-size: 11px; }
.cn7ap .ap-map-tooltip > strong { display: block; font-size: 13px; margin-bottom: 8px; }
.cn7ap .ap-map-tooltip > div { display: grid; grid-template-columns: 1fr auto; gap: 2px 10px; margin-bottom: 6px; }
.cn7ap .ap-map-tooltip > div small { grid-column: 1 / -1; color: var(--ap-muted); }
.cn7ap .ap-map-tooltip p { margin: 6px 0 4px; }
.cn7ap .ap-map-tooltip > small { color: var(--ap-muted); }
.cn7ap .ap-map-legend { margin: 4px 0; font-size: 10px; color: var(--ap-muted); flex-shrink: 0; }
.cn7ap .ap-map-legend > strong { font-size: 11px; font-weight: 500; display: block; margin-bottom: 4px; }
.cn7ap .ap-map-legend > div { display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: center; }
.cn7ap .ap-map-legend span { display: inline-flex; align-items: center; gap: 5px; }
.cn7ap .ap-map-legend i { width: 14px; height: 10px; border: 1px solid var(--ap-control-border); border-radius: 2px; }
.cn7ap .ap-map-access { font-size: 11px; color: var(--ap-muted); flex-shrink: 0; }
.cn7ap summary { cursor: pointer; min-height: 32px; padding-block: 8px; }
.cn7ap .ap-map-access > div { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 8px; border: 1px solid var(--ap-border); border-radius: 8px; }
.cn7ap .ap-map-access select { min-width: 0; flex: 1; }
.cn7ap .ap-exterior { min-height: 200px; flex: 1; overflow: auto; margin-top: 8px; padding: 12px; border: 1px solid var(--ap-border); border-radius: var(--ap-radius); background: var(--ap-card); }
.cn7ap .ap-exterior h2 { font-size: 20px; margin-bottom: 4px; }
.cn7ap table { border-collapse: collapse; width: 100%; text-align: start; font-size: 12px; margin: 0; }
.cn7ap th, .cn7ap td { padding: 8px 6px; border: 0; border-bottom: 1px solid var(--ap-border); text-align: start; overflow-wrap: anywhere; }
.cn7ap thead th { color: var(--ap-muted); font-weight: 500; font-size: 11px; }
.cn7ap td small { display: block; color: var(--ap-muted); }
.cn7ap table button { background: transparent; border: 0; text-decoration: underline; text-underline-offset: 3px; padding: 5px 0; text-align: start; }
.cn7ap .ap-detail { position: absolute; top: 48px; right: 8px; width: min(380px, calc(100% - 16px)); max-height: calc(100% - 54px); overflow-y: auto; padding: 14px; border: 1px solid var(--ap-control-border); border-radius: var(--ap-radius); background: var(--ap-card); box-shadow: 0 14px 35px #0003; z-index: 5; }
.cn7ap .ap-detail-heading { display: flex; gap: 12px; align-items: flex-start; justify-content: space-between; margin-bottom: 12px; }
.cn7ap .ap-detail-heading h2 { margin: 0; font-size: 22px; }
.cn7ap .ap-detail-heading > button, .cn7ap .ap-dialog-close { flex: none; min-width: 44px; font-size: 23px; padding: 2px 10px; border-radius: 50%; }
.cn7ap .ap-eyebrow { color: var(--ap-muted); font-size: 10px; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 5px; }
.cn7ap .ap-detail-candidates { display: flex; flex-direction: column; gap: 12px; padding-bottom: 12px; border-bottom: 1px solid var(--ap-border); }
.cn7ap .ap-candidate-compact, .cn7ap .ap-candidate-compact.ap-candidate-1 { flex-direction: row; text-align: start; gap: 8px; }
.cn7ap .ap-candidate-compact .ap-person { flex-direction: row; gap: 8px; }
.cn7ap .ap-candidate-compact .ap-person img { width: 34px; height: 40px; }
.cn7ap .ap-candidate-compact .ap-person strong { font-size: 12px; }
.cn7ap .ap-candidate-compact .ap-candidate-value { text-align: end; }
.cn7ap .ap-candidate-compact .ap-candidate-value b { font-size: 25px; }
.cn7ap .ap-candidate-compact .ap-candidate-value span { font-size: 10px; }
.cn7ap .ap-metric-groups { margin-block: 14px; }
.cn7ap .ap-metric-groups > section { margin-bottom: 14px; }
.cn7ap .ap-metric-groups h3 { color: var(--ap-ink); font-size: 13px; margin-bottom: 4px; }
.cn7ap .ap-metrics { display: flex; flex-direction: column; gap: 0; margin: 0; font-size: 11px; }
.cn7ap .ap-metrics > div { display: flex; align-items: baseline; gap: 10px; justify-content: space-between; padding: 5px 0; border-bottom: 1px solid var(--ap-border); }
.cn7ap .ap-metrics dt { color: var(--ap-muted); }
.cn7ap .ap-metrics dd { margin: 0; font-weight: 600; flex: none; text-align: end; }
.cn7ap .ap-metrics dd small { display: block; color: var(--ap-muted); font-weight: 400; }
.cn7ap .ap-detail-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 10px; }
.cn7ap .ap-detail-actions button { font-size: 11px; }
.cn7ap .ap-note { color: var(--ap-muted); font-size: 11px; line-height: 1.6; margin-bottom: 10px; }
.cn7ap .ap-footer { display: flex; align-items: center; gap: 8px 14px; padding-top: 10px; color: var(--ap-muted); font-size: 10px; flex-shrink: 0; }
.cn7ap #ap-vivo { flex: 1; min-width: 0; }
.cn7ap #ap-freshness { max-width: 210px; }
.cn7ap .ap-footer > a, .cn7ap .ap-footer > button { flex-shrink: 0; }
.cn7ap .ap-footer > button { border-color: var(--ap-border); font-size: 10px; }
.cn7ap .ap-toast { position: absolute; bottom: 16px; left: 50%; transform: translateX(-50%); background: var(--ap-ink); color: var(--ap-bg); width: max-content; max-width: calc(100% - 32px); padding: 12px 18px; border-radius: 10px; box-shadow: 0 6px 30px #0004; z-index: 30; }
.cn7ap .ap-autocomplete { position: relative; min-width: 0; }
@media (max-width: 1336px) {
  .cn7ap { width: 85%; }
  .cn7ap .ap-header { flex-wrap: wrap; gap: 8px 12px; }
  .cn7ap .ap-gov-picker { order: 3; width: 100%; }
  .cn7ap .ap-tools { gap: 4px; }
}
@media (max-width: 958px) {
  .cn7ap { width: 95%; padding: 14px; }
  .cn7ap .ap-footer { flex-wrap: wrap; }
  .cn7ap #ap-vivo { flex-basis: 100%; }
  .cn7ap #ap-freshness { margin-inline-end: auto; }
  .cn7ap #ap-search-detail-host .ap-metric-groups { grid-template-columns: 1fr; gap: 4px; }
  .cn7ap .ap-search-controls { grid-template-columns: 1fr 1fr; }
  .cn7ap .ap-autocomplete { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
  .cn7ap { margin-block: 16px; padding: 12px; }
  .cn7ap .ap-header { gap: 10px 6px; }
  .cn7ap .ap-brand { gap: 7px; }
  .cn7ap .ap-brand > strong { font-size: 27px; }
  .cn7ap .ap-brand > span { font-size: 9px; }
  .cn7ap .ap-brand > span b { font-size: 11px; }
  .cn7ap .ap-offices { margin-inline-start: auto; gap: 0; }
  .cn7ap .ap-offices button { font-size: 10px; padding-inline: 8px; }
  .cn7ap .ap-tools { margin: 0; width: 100%; justify-content: space-between; gap: 3px; }
  .cn7ap .ap-tools .ap-search-button { padding-inline: 10px; }
  .cn7ap .ap-fixture { padding: 5px; }
  .cn7ap .ap-duel { padding: 10px; }
  .cn7ap .ap-race-heading { margin-bottom: 12px; }
  .cn7ap .ap-candidates { gap: 16px; }
  .cn7ap .ap-candidate { flex-direction: column; align-items: flex-start; gap: 9px; }
  .cn7ap .ap-candidate-1 { align-items: flex-end; }
  .cn7ap .ap-person { gap: 5px; align-items: flex-start; }
  .cn7ap .ap-person img { width: 32px; height: 40px; }
  .cn7ap .ap-person strong { font-size: 11px; max-width: 105px; }
  .cn7ap .ap-person span { font-size: 10px; }
  .cn7ap .ap-candidate-value b { font-size: 29px; }
  .cn7ap .ap-candidate-value span { font-size: 10px; }
  .cn7ap .ap-countdown { font-size: 18px; }
  .cn7ap .ap-dual-bar { margin-top: 18px; }
  .cn7ap .ap-duel-meta { gap: 5px; }
  .cn7ap .ap-tabs button { font-size: 11px; }
  .cn7ap .ap-views { height: 540px; }
  .cn7ap .ap-map-toolbar { flex-wrap: wrap; gap: 3px; }
  .cn7ap .ap-modes { gap: 2px; width: 100%; }
  .cn7ap .ap-modes button { padding-inline: 7px; font-size: 10px; }
  .cn7ap .ap-uf-control { max-width: none; width: 100%; }
  .cn7ap .ap-uf-control select { width: 100%; }
  .cn7ap .ap-map-frame { height: 320px; min-height: 240px; }
  .cn7ap .ap-map-location { font-size: 9px; padding: 5px 7px; }
  .cn7ap .ap-map-access summary { min-height: 44px; }
  .cn7ap .ap-map-access > div { align-items: stretch; flex-direction: column; }
  .cn7ap .ap-detail { width: calc(100% - 8px); right: 4px; padding: 12px; }
  .cn7ap .ap-detail-heading h2 { font-size: 20px; }
  .cn7ap .ap-candidate-compact .ap-person strong { max-width: none; }
  .cn7ap .ap-candidate-compact .ap-candidate-value b { font-size: 23px; }
  .cn7ap .ap-exterior { padding: 9px; }
  .cn7ap .ap-exterior table { font-size: 10px; }
  .cn7ap .ap-exterior th, .cn7ap .ap-exterior td { padding: 6px 3px; }
  .cn7ap .ap-exterior table button { font-size: 11px; }
  .cn7ap .ap-exterior thead th { font-size: 9px; }
  .cn7ap .ap-exterior td small { font-size: 9px; }
  .cn7ap #ap-freshness { flex-basis: 100%; max-width: none; }
}
@media (prefers-reduced-motion: reduce) {
.cn7ap .ap-candidate-value b, .cn7ap .ap-dual-bar > i, .cn7ap .ap-map-tooltip, .cn7ap .ap-chart-line { animation: none !important; transition: none !important; }
}
@media (forced-colors: active) {
  .cn7ap button, .cn7ap input, .cn7ap select, .cn7ap .ap-duel, .cn7ap .ap-detail, .cn7ap dialog { border: 1px solid ButtonText; }
  .cn7ap button[aria-pressed="true"], .cn7ap button[aria-selected="true"] { outline: 2px solid Highlight; }
  .cn7ap .ap-dual-bar, .cn7ap .ap-map-legend i { forced-color-adjust: none; }
}
.cn7ap {
  --ap-bg: #fff;
  --ap-card: #fff;
  --ap-card2: #f7f7f7;
  --ap-ink: #171717;
  --ap-muted: #666;
  --ap-border: #e5e5e5;
  --ap-control-border: #e5e5e5;
  --ap-accent: #d2ad00;
  --ap-focus: #d2ad00;
  --ap-radius: 6px;
  --ap-font: Poppins, Arial, sans-serif;
  --ap-grid: #e5e5e5;
  --ap-map-neutral: #d0d0d0;
  --ap-map-line: #fff;
  font-family: var(--ap-font);
  font-size: 13px;
  line-height: 1.45;
}
.cn7ap, .cn7ap::before, .cn7ap::after, .cn7ap div, .cn7ap section, .cn7ap header, .cn7ap footer, .cn7ap article, .cn7ap label, .cn7ap input, .cn7ap select, .cn7ap button, .cn7ap textarea, .cn7ap canvas, .cn7ap svg, .cn7ap table, .cn7ap th, .cn7ap td { box-sizing: border-box; }
.cn7ap button, .cn7ap input, .cn7ap select, .cn7ap textarea { font: inherit; }
.cn7ap button, .cn7ap input, .cn7ap select { border: 1px solid var(--ap-border); border-radius: 6px; background-color: var(--ap-card); color: var(--ap-ink); box-shadow: none; }
.cn7ap button { min-height: 40px; }
.cn7ap select { appearance: none; padding: 8px 32px 8px 10px; background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%); background-position: calc(100% - 14px) 50%, calc(100% - 9px) 50%; background-size: 5px 5px; background-repeat: no-repeat; }
.cn7ap select option { background: var(--ap-card); color: var(--ap-ink); }
.cn7ap :focus-visible { outline: 2px solid var(--ap-focus); outline-offset: 2px; }
.cn7ap h1, .cn7ap h2, .cn7ap h3, .cn7ap h4, .cn7ap p { font-family: inherit; }
.cn7ap .ap-header { display: flex; flex-direction: column; align-items: stretch; gap: 12px; margin-bottom: 12px; }
.cn7ap .ap-header-top { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; min-height: 42px; }
.cn7ap .ap-brand > strong { border-radius: 6px; }
.cn7ap .ap-election-title { font-size: 15px; font-weight: 700; letter-spacing: .04em; }
.cn7ap .ap-live-badge { padding: 5px 9px; border-radius: 6px; background: #d7262e; color: #fff; font-size: 10px; font-weight: 700; letter-spacing: .05em; }
.cn7ap .ap-resultsbar { display: grid; grid-template-columns: minmax(125px, .75fr) minmax(150px, .9fr) minmax(190px, 1.15fr) minmax(290px, 2fr); align-items: end; gap: 10px; }
.cn7ap .ap-toolbar-select { display: flex; flex-direction: column; gap: 5px; min-width: 0; color: var(--ap-muted); font-size: 11px; font-weight: 600; }
.cn7ap .ap-toolbar-select select, .cn7ap .ap-toolbar-select input { width: 100%; min-width: 0; min-height: 42px; font-size: 13px; }
.cn7ap .ap-scope-combobox { min-width: 0; }
.cn7ap .ap-autocomplete { position: relative; min-width: 0; }
.cn7ap #ap-municipality-results { position: absolute; inset: calc(100% + 4px) 0 auto; z-index: 8; max-height: 240px; overflow-y: auto; margin: 0; padding: 4px; list-style: none; border: 1px solid var(--ap-border); border-radius: 6px; background: var(--ap-card); }
.cn7ap #ap-municipality-results li { min-height: 40px; padding: 10px; border-radius: 6px; cursor: pointer; }
.cn7ap #ap-municipality-results li:hover, .cn7ap #ap-municipality-results li[aria-selected="true"] { background: var(--ap-card2); }
.cn7ap .ap-totalized { min-width: 0; padding: 9px 11px; border: 1px solid var(--ap-border); border-radius: 6px; background: var(--ap-card); }
.cn7ap .ap-totalized-heading { display: flex; flex-wrap: wrap; align-items: baseline; gap: 3px 8px; }
.cn7ap .ap-totalized-heading strong { font-size: 22px; line-height: 1.1; }
.cn7ap .ap-totalized-heading > span { color: var(--ap-muted); font-size: 11px; }
.cn7ap .ap-totalized-heading b { margin-inline-start: auto; font-size: 11px; font-weight: 600; }
.cn7ap .ap-totalized-bar { height: 7px; overflow: hidden; margin: 6px 0; border-radius: 6px; background: var(--ap-card2); }
.cn7ap .ap-totalized-bar i { display: block; width: 0; height: 100%; background: #ffd215; }
.cn7ap .ap-totalized p { display: flex; flex-wrap: wrap; gap: 2px 6px; margin: 0; color: var(--ap-muted); font-size: 10px; }
.cn7ap .ap-live-chart { margin: 0 0 10px; padding: 10px 12px 8px; border: 1px solid var(--ap-border); border-radius: 6px; background: var(--ap-card); }
.cn7ap .ap-live-chart h2 { margin: 0 0 6px; font-size: 13px; font-weight: 700; }
.cn7ap .ap-live-chart svg { display: block; max-width: 100%; height: auto; overflow: visible; }
.cn7ap .ap-live-chart svg text { fill: var(--ap-muted); font-family: inherit; font-size: 10px; }
.cn7ap .ap-live-chart .ap-chart-tick line, .cn7ap .ap-live-chart .ap-chart-base { stroke: #cfccc4; stroke-width: 1; }
.cn7ap .ap-live-chart .ap-chart-y-tick line { stroke: #eeece6; stroke-width: 1; }
.cn7ap .ap-live-chart .ap-chart-mid { stroke: #9a978f; stroke-width: 1; stroke-dasharray: 4 4; }
.cn7ap .ap-live-chart .ap-chart-line { fill: none; stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; }
.cn7ap .ap-live-chart .ap-chart-line-a { stroke: #d7262e; }
.cn7ap .ap-live-chart .ap-chart-line-b { stroke: #2e5bdb; }
.cn7ap .ap-chart-legend { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 16px; margin: 0 0 6px; font-size: 12px; }
.cn7ap .ap-chart-legend span { display: inline-flex; align-items: center; gap: 6px; }
.cn7ap .ap-chart-legend b { font-weight: 700; }
.cn7ap .ap-chart-legend i { width: 12px; height: 3px; border-radius: 2px; background: #d7262e; }
.cn7ap .ap-chart-legend .ap-chart-key-b { background: #2e5bdb; }
.cn7ap .ap-chart-legend .ap-chart-axis { margin-inline-start: auto; color: var(--ap-muted); font-size: 10px; }
.cn7ap .ap-chart-note { margin: 4px 0 0; color: var(--ap-muted); font-size: 10px; }
.cn7ap .ap-countdown { margin: 8px 0 0; color: #666; font-size: 13px; font-weight: 400; text-align: start; }
.cn7ap .ap-tabs { gap: 16px; margin: 8px 0; padding: 0; border-bottom: 1px solid var(--ap-border); }
.cn7ap .ap-tabs button, .cn7ap .ap-modes button { min-height: 38px; padding: 7px 2px; border: 0; border-radius: 0; border-bottom: 3px solid transparent; background: transparent; color: var(--ap-ink); font-weight: 700; }
.cn7ap .ap-tabs button[aria-selected="true"], .cn7ap .ap-modes button[aria-pressed="true"] { border-bottom-color: #ffd215; background: transparent; color: var(--ap-ink); }
.cn7ap .ap-views { height: 650px; min-width: 0; }
.cn7ap .ap-tabpanel { overflow: auto; }
.cn7ap .ap-map-toolbar { margin-bottom: 4px; }
.cn7ap .ap-modes { gap: 12px; }
.cn7ap .ap-modes button { min-height: 34px; font-size: 11px; }
.cn7ap .ap-map-frame { height: 540px; min-height: 540px; flex: 0 0 540px; border: 1px solid var(--ap-border); border-radius: 6px; background: var(--ap-card); }
.cn7ap .ap-map-location { max-width: calc(100% - 16px); border-radius: 6px; }
.cn7ap .ap-map-tooltip { border-color: var(--ap-border); border-radius: 6px; box-shadow: none; }
.cn7ap .ap-detail { position: static; width: 100%; max-height: none; overflow: visible; margin: 8px 0; border-color: var(--ap-border); border-radius: 6px; box-shadow: none; }
.cn7ap .ap-detail-heading > button, .cn7ap .ap-dialog-close { border-radius: 6px; font-size: 13px; }
.cn7ap .ap-detail-candidates, .cn7ap .ap-duel, .cn7ap .ap-exterior { border-radius: 6px; }
.cn7ap .ap-candidate-value b { font-family: inherit; }
.cn7ap .ap-half b { font-family: inherit; }
.cn7ap .ap-footer { border-top: 1px solid var(--ap-border); }
@media (max-width: 1336px) {
  .cn7ap .ap-resultsbar { grid-template-columns: minmax(120px, .8fr) minmax(140px, .9fr) minmax(180px, 1.1fr) minmax(250px, 1.8fr); }
}
@media (max-width: 958px) {
  .cn7ap .ap-resultsbar { grid-template-columns: 1fr 1fr; }
  .cn7ap .ap-scope-combobox, .cn7ap .ap-totalized { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
  .cn7ap { width: 95%; padding: 12px; }
  .cn7ap .ap-header-top { gap: 8px; }
  .cn7ap .ap-election-title { flex: 1; font-size: 12px; letter-spacing: 0; }
  .cn7ap .ap-resultsbar { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; }
  .cn7ap .ap-totalized { padding: 8px; }
  .cn7ap .ap-totalized-heading strong { font-size: 19px; }
  .cn7ap .ap-totalized p { flex-direction: column; }
  .cn7ap .ap-live-chart { padding: 8px; }
  .cn7ap .ap-live-chart h2 { font-size: 13px; }
  .cn7ap { overflow-x: clip; }
  .cn7ap .ap-candidates { gap: 12px; }
  .cn7ap .ap-candidate { flex-direction: column; align-items: flex-start; gap: 7px; }
  .cn7ap .ap-candidate-1 { align-items: flex-end; }
  .cn7ap .ap-person { gap: 5px; }
  .cn7ap .ap-person img { width: 32px; height: 40px; }
  .cn7ap .ap-person strong { max-width: 110px; font-size: 11px; }
  .cn7ap .ap-candidate-value b { font-size: 25px; }
  .cn7ap .ap-tabs { gap: 12px; }
  .cn7ap .ap-tabs button { font-size: 11px; }
  .cn7ap .ap-views { height: 860px; }
  .cn7ap .ap-map-toolbar { flex-wrap: wrap; gap: 4px; }
  .cn7ap .ap-modes { gap: 8px; width: 100%; overflow-x: auto; }
  .cn7ap .ap-modes button { flex: none; padding-inline: 1px; font-size: 10px; }
  .cn7ap .ap-map-frame { height: 640px; min-height: 640px; flex-basis: 640px; }
  .cn7ap .ap-map-access > div { align-items: stretch; flex-direction: column; }
  .cn7ap .ap-detail-heading h2 { font-size: 20px; }
  .cn7ap .ap-exterior { padding: 9px; }
  .cn7ap .ap-exterior table { font-size: 10px; }
}
.cn7ap .ap-candidate-value b { font-size: 32px; font-weight: 600; line-height: 1.1; }
.cn7ap .ap-half b { font-size: 10px; font-weight: 600; line-height: 1.3; }
.cn7ap .ap-tabs, .cn7ap .ap-modes { overflow: visible; flex-wrap: wrap; }
.cn7ap .ap-tabs { border: 0; }
.cn7ap .ap-tabs button, .cn7ap .ap-modes button {
  min-height: 34px;
  margin-right: 14px;
  padding: 6px 2px;
  border: 0;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--ap-ink);
  font-weight: 600;
}
.cn7ap .ap-tabs button[aria-selected="true"], .cn7ap .ap-modes button[aria-pressed="true"] {
  border-bottom-color: #ffd215;
  background: transparent;
  font-weight: 700;
}
.cn7ap .ap-tabs button:hover:not([aria-selected="true"]), .cn7ap .ap-modes button:hover:not([aria-pressed="true"]) {
  border-bottom-color: #e6e2d8;
  background: transparent;
}
@media (max-width: 600px) {
  .cn7ap .ap-modes { width: auto; overflow: visible; }
}
