/* Fala Reto · shared site identity. Every page links this file; colours and logo come only from here. */
:root{
 --navy:#0A1A33;--navy2:#12284A;--navy-deep:#050D1C;--y:#FFC20E;--white:#FFFFFF;
 --soft:#F2F4F7;--line:#E1E5EA;--gray:#9AA5B1;--muted:#5B6474;--ink:#0D1117;
 --flavio:#1F8A4C;--lula:#D62828; /* data only */
 --radius:14px;--shadow:0 6px 20px #0A1A3314;--max:1200px;
 color-scheme:light;
}
html{background:var(--soft)}
body{margin:0;font-family:Montserrat,system-ui,sans-serif;color:var(--ink);background:var(--soft);-webkit-font-smoothing:antialiased}
a{color:inherit}
:focus-visible{outline:3px solid var(--y);outline-offset:2px}
.fr-wrap{max-width:var(--max);margin:0 auto;padding:0 16px}
/* header: logo image is exported from the artwork system, never redrawn */
.fr-header{position:sticky;top:0;z-index:50;background:var(--navy);color:var(--white);border-bottom:4px solid var(--y)}
.fr-header .fr-wrap{display:flex;align-items:center;gap:18px;min-height:64px}
.fr-logo{display:block;flex:none;line-height:0}.fr-logo img{height:40px;width:auto}
.fr-nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;flex:1}
.fr-nav::-webkit-scrollbar{display:none}
.fr-nav a{white-space:nowrap;text-decoration:none;font-weight:700;font-size:14px;padding:10px 12px;border-radius:10px;color:#FFFFFFD8}
.fr-nav a:hover{background:#FFFFFF14;color:var(--white)}
.fr-nav a[aria-current=page]{color:var(--navy);background:var(--y)}
.fr-nav a.fr-hot{color:var(--y)}
.fr-actions{display:flex;gap:8px;flex:none}
.fr-btn{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 14px;border-radius:10px;border:0;background:var(--y);color:var(--navy);font:800 14px Montserrat,sans-serif;cursor:pointer;text-decoration:none}
.fr-btn.ghost{background:transparent;color:var(--white);border:2px solid #FFFFFF33}
.fr-tag{display:inline-block;background:var(--y);color:var(--navy);font-weight:900;font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:4px 8px;border-radius:5px}
.fr-live{display:inline-flex;align-items:center;gap:6px;font-weight:900;font-size:11px;letter-spacing:.12em;color:var(--y)}
.fr-live:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--y);animation:fr-pulse 1.6s infinite}
@keyframes fr-pulse{50%{opacity:.3}}
@media (prefers-reduced-motion:reduce){.fr-live:before{animation:none}}
.fr-footer{background:var(--navy-deep);color:#FFFFFFC0;margin-top:48px;padding:32px 0;font-size:13px;line-height:1.6}
.fr-footer a{color:var(--white)}
@media(max-width:760px){.fr-header .fr-wrap{flex-wrap:wrap;gap:8px 12px;padding-top:8px}.fr-nav{order:3;flex-basis:100%;padding-bottom:6px}.fr-logo img{height:34px}}
/* elections area sub-navigation */
.fr-sub{background:var(--navy2)}
.fr-sub .fr-wrap{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;min-height:44px;align-items:center}
.fr-sub a{white-space:nowrap;text-decoration:none;font-weight:700;font-size:13px;padding:8px 12px;border-radius:8px;color:#FFFFFFC8}
.fr-sub a[aria-current=page]{color:var(--y);box-shadow:inset 0 -3px 0 var(--y)}
@media(max-width:760px){.fr-sub .fr-wrap{flex-wrap:nowrap;padding-top:0}}
