/* ===== futebol-viseu-home-legacy.css ===== */
/* Consolidado da homepage em 17-09-2026. Mantém a cascata dos estilos legados. */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
:root{--green:#63b300;--green2:#7bdc13;--dark:#071710;--dark2:#0d2519;--ink:#132018;--muted:#67756d;--line:#dde6df;--soft:#f4f7f5;--white:#fff;--shadow:0 18px 48px rgba(7,23,16,.10);--radius:26px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#edf2ef;-webkit-font-smoothing:antialiased}body.z-menu-open{overflow:hidden}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}button,input{font:inherit}.z-container{width:min(94%,1460px);margin:0 auto}.z-header{position:sticky;top:0;z-index:2000;background:rgba(7,23,16,.96);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(16px);box-shadow:0 10px 28px rgba(0,0,0,.18)}.z-nav-shell{width:min(94%,1460px);min-height:78px;margin:0 auto;display:flex;align-items:center;gap:20px}.z-brand{display:flex;align-items:center;gap:12px;margin-right:auto;min-width:230px}.z-brand img{width:48px;height:48px;object-fit:contain;background:#fff;border-radius:15px;padding:4px}.z-brand span{display:block}.z-brand strong{display:block;color:#fff;font-size:21px;line-height:1;letter-spacing:-.04em;text-transform:uppercase}.z-brand strong em{font-style:normal;color:var(--green2)}.z-brand small{display:block;color:#b8c9be;font-size:10px;font-weight:700;margin-top:5px;letter-spacing:.04em}.z-menu{display:flex;align-items:center;gap:4px}.z-menu>a,.z-dropdown>summary{display:flex;align-items:center;justify-content:center;min-height:42px;padding:10px 13px;border-radius:11px;color:#dce7df;font-size:13px;font-weight:800;cursor:pointer;list-style:none;transition:.18s}.z-dropdown>summary::-webkit-details-marker{display:none}.z-dropdown>summary:after{content:'⌄';margin-left:7px;color:var(--green2)}.z-menu>a:hover,.z-dropdown>summary:hover,.z-dropdown[open]>summary,.z-menu .is-active{background:rgba(255,255,255,.08);color:#fff}.z-menu .z-viseu-link{background:var(--green);color:#fff}.z-menu .z-viseu-link:hover{background:#71c500}.z-search{font-size:20px!important;width:42px;padding:9px!important}.z-search span{display:none}.z-dropdown{position:relative}.z-dropdown-panel{display:none;position:absolute;right:0;top:calc(100% + 14px);width:680px;grid-template-columns:repeat(3,1fr);gap:12px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 28px 80px rgba(0,0,0,.26)}.z-dropdown[open] .z-dropdown-panel{display:grid}.z-dropdown-panel section{padding:14px;background:#f6f8f6;border:1px solid #e8eee9;border-radius:16px}.z-dropdown-panel section:last-child{background:#eff8e7;border-color:#d8ebc7}.z-dropdown-panel b{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#52625a;margin-bottom:8px}.z-dropdown-panel a{display:block;padding:9px;border-radius:10px;font-size:13px;font-weight:750;color:#26372d}.z-dropdown-panel a:hover{background:#dff0ce;color:#315c0e}.z-menu-button{display:none;align-items:center;justify-content:center;gap:4px;width:48px;height:48px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.07);border-radius:14px;color:#fff}.z-menu-button span{display:block;width:20px;height:2px;background:#fff;position:absolute;transition:.2s}.z-menu-button span:nth-child(1){transform:translateY(-6px)}.z-menu-button span:nth-child(3){transform:translateY(6px)}.z-menu-button b{display:none}.z-menu-button.is-open span:nth-child(1){transform:rotate(45deg)}.z-menu-button.is-open span:nth-child(2){opacity:0}.z-menu-button.is-open span:nth-child(3){transform:rotate(-45deg)}
.z-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,#000,transparent)}.z-eyebrow,.z-section-heading span,.z-block-heading span,.z-region-panel>span{display:inline-flex;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:900;color:#b7f27b}.z-hero h1{font-size:clamp(48px,6vw,92px);line-height:.92;letter-spacing:-.065em;color:#fff;margin:14px 0 22px;max-width:880px}.z-hero h1 mark{display:block;background:none;color:var(--green2)}.z-hero-copy>p{max-width:720px;color:#c8d4cc;font-size:18px;line-height:1.65;margin:0}.z-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.z-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;border-radius:13px;font-size:14px;font-weight:900}.z-primary{background:linear-gradient(135deg,var(--green),#79d30b);color:#fff;box-shadow:0 14px 30px rgba(99,179,0,.28)}.z-ghost{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff}.z-hero-features{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px;color:#b7c5bc;font-size:12px;font-weight:750}.z-hero-features span:first-child{color:#d8f7bb}.z-card-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.z-card-top span{background:var(--green);color:#fff;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:900;text-transform:uppercase}.z-card-top b{color:#bcd0c2;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.z-match-main{display:grid;grid-template-columns:1fr 90px 1fr;gap:14px;align-items:center;margin:28px 0}.z-match-team{text-align:center}.z-match-team img{width:100px;height:100px;object-fit:contain;margin:0 auto 12px;filter:drop-shadow(0 14px 22px rgba(0,0,0,.3))}.z-match-team strong{display:block;color:#fff;font-size:16px;line-height:1.25}.z-match-time{text-align:center;border-left:1px solid rgba(255,255,255,.1);border-right:1px solid rgba(255,255,255,.1);padding:12px 4px}.z-match-time span{display:block;color:#fff;font-size:24px;font-weight:950}.z-match-time b,.z-match-time em{display:block;color:#aebdb3;font-size:12px;font-style:normal;margin-top:7px}.z-match-time em{color:var(--green2);font-size:18px;font-weight:900}.z-match-place{text-align:center;color:#aebdb3;font-size:12px;font-weight:700}.z-featured-link{display:flex;justify-content:center;margin-top:18px;padding:13px;background:rgba(255,255,255,.06);border-radius:12px;color:#e4ede7;font-size:13px;font-weight:850}.z-empty-match{text-align:center;color:#fff;padding:26px}.z-empty-match img{width:84px;margin:0 auto 12px}.z-empty-match p{color:#9fb1a5;font-size:13px}.z-section{padding:68px 0}.z-teams-section{background:#fff}.z-section-heading,.z-block-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:24px}.z-section-heading h2,.z-block-heading h2,.z-region-panel h2{margin:7px 0 0;font-size:clamp(28px,3vw,42px);line-height:1;letter-spacing:-.045em}.z-section-heading p{color:var(--muted);max-width:760px;line-height:1.55;margin:10px 0 0}.z-section-heading>a,.z-block-heading>a{color:#477b1a;font-size:13px;font-weight:900;white-space:nowrap}.z-section-heading span,.z-block-heading span{color:#528d20}.z-team-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.z-team-card{background:linear-gradient(180deg,#fff,#f7faf8);border:1px solid var(--line);border-radius:22px;padding:20px;text-align:center;box-shadow:0 12px 30px rgba(10,36,20,.06);transition:.2s}.z-team-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#bcd6a7}.z-team-logo{height:100px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}.z-team-logo img{max-width:88px;max-height:88px;object-fit:contain}.z-team-card strong{display:block;font-size:15px;line-height:1.25}.z-team-card span{display:block;color:var(--muted);font-size:11px;font-weight:750;margin-top:6px;min-height:28px}.z-team-card em{display:block;font-style:normal;color:#528d20;font-size:11px;font-weight:900;text-transform:uppercase;margin-top:12px}.z-main-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:22px;align-items:start}.z-block,.z-market-panel,.z-region-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.z-fixture-list{display:grid;gap:10px}.z-fixture-row{border:1px solid #e6ece8;border-radius:17px;padding:15px;background:#fafcfb}.z-fixture-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:11px}.z-fixture-meta span{background:#e1f1d2;color:#3c6b13;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900;text-transform:uppercase}.z-fixture-meta b{font-size:11px;color:#6d7d73}.z-fixture-teams{display:grid;grid-template-columns:1fr 42px 1fr;align-items:center;gap:8px}.z-fixture-teams>div{display:flex;align-items:center;gap:9px}.z-fixture-teams>div:last-child{justify-content:flex-end;text-align:right}.z-fixture-teams img{width:34px;height:34px;object-fit:contain}.z-fixture-teams strong{font-size:13px;line-height:1.25}.z-fixture-teams em{font-style:normal;text-align:center;color:#9aa69f;font-size:11px;font-weight:900}.z-region-panel{background:linear-gradient(145deg,#071710,#12301f);color:#fff}.z-region-panel>span{color:#b7f27b}.z-region-panel h2{font-size:34px}.z-region-panel>p{color:#b6c5bc;line-height:1.55}.z-region-links{display:grid;gap:10px;margin-top:20px}.z-region-links a{display:block;padding:15px;border-radius:15px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}.z-region-links a:hover{background:rgba(99,179,0,.15)}.z-region-links b{display:block;font-size:14px}.z-region-links small{display:block;color:#9fb1a5;margin-top:5px}.z-news-market{background:#f7f9f8}.z-news-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:14px}.z-lead-news{position:relative;min-height:365px;border-radius:20px;overflow:hidden;background:#071710}.z-lead-news:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.88),rgba(0,0,0,.06) 60%)}.z-lead-news>img{width:100%;height:100%;object-fit:cover;position:absolute}.z-lead-news>div{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;color:#fff}.z-lead-news span{display:inline-flex;background:var(--green);padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900;text-transform:uppercase}.z-lead-news h3{font-size:24px;line-height:1.12;margin:10px 0 8px}.z-lead-news p{color:#d6dfd9;font-size:13px;line-height:1.5;margin:0}.z-news-list{display:grid;gap:10px}.z-news-list a{display:grid;grid-template-columns:86px 1fr;gap:11px;background:#f8faf9;border:1px solid #e5ebe7;border-radius:15px;padding:10px}.z-news-list img{width:86px;height:68px;object-fit:cover;border-radius:10px}.z-news-list b{display:block;font-size:13px;line-height:1.25}.z-news-list small{display:block;color:#7b8980;font-size:10px;margin-top:7px}.z-market-panel{background:#fff}.z-market-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.z-market-stats div{text-align:center;background:#f1f6ed;border-radius:14px;padding:13px 6px}.z-market-stats b{display:block;font-size:24px;color:#477b1a}.z-market-stats span{font-size:10px;font-weight:800;color:#6f7d74}.z-transfer-list{display:grid;gap:8px}.z-transfer-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e8ede9;border-radius:14px;padding:12px}.z-transfer-list b{display:block;font-size:13px}.z-transfer-list small{display:block;color:#839087;font-size:10px;margin-top:4px}.z-transfer-list em{font-style:normal;color:#477b1a;font-size:11px;font-weight:850;text-align:right}.z-competitions{background:#fff}.z-competition-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:13px}.z-competition-grid>a{background:#f7faf8;border:1px solid var(--line);border-radius:19px;padding:16px;min-height:178px;display:flex;flex-direction:column;transition:.2s}.z-competition-grid>a:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#bdd8a7}.z-comp-icon{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#071710,#2a5d34);color:#b7f27b;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;margin-bottom:auto}.z-competition-grid span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#748179;font-weight:850;margin-top:18px}.z-competition-grid strong{display:block;font-size:13px;line-height:1.25;margin-top:7px}.z-competition-grid em{font-style:normal;color:#528d20;font-size:10px;font-weight:900;text-transform:uppercase;margin-top:12px}.z-footer{background:#06130d;color:#dce6df;padding:52px 0 18px}.z-footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:28px}.z-footer-brand img{width:56px;background:#fff;border-radius:16px;padding:4px;margin-bottom:12px}.z-footer-brand strong{font-size:20px;text-transform:uppercase}.z-footer-brand strong em{color:var(--green2);font-style:normal}.z-footer p{color:#91a298;font-size:13px}.z-footer-grid>div>b{display:block;color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.07em;margin-bottom:12px}.z-footer-grid a{display:block;color:#9fb0a6;font-size:12px;padding:5px 0}.z-footer-grid a:hover{color:#fff}.z-footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:32px;padding-top:17px;color:#718078;font-size:11px}.z-empty{padding:22px;background:#f5f8f6;border:1px dashed #cbd7cf;border-radius:15px;color:#6f7c74;font-size:13px;font-weight:700}
@media(max-width:1180px){.z-menu-button{display:flex;position:relative}.z-menu{position:fixed;inset:78px 0 0 auto;width:min(420px,100%);height:calc(100dvh - 78px);background:#071710;display:none;flex-direction:column;align-items:stretch;padding:18px;overflow-y:auto;box-shadow:-20px 20px 60px rgba(0,0,0,.35)}.z-menu.is-open{display:flex}.z-menu>a,.z-dropdown>summary{width:100%;justify-content:flex-start;min-height:50px;font-size:14px;padding:13px}.z-search{width:100%;font-size:14px!important}.z-search span{display:inline;margin-left:8px}.z-dropdown{width:100%}.z-dropdown-panel{position:static;width:100%;grid-template-columns:1fr;padding:8px;margin-top:8px;box-shadow:none;border-radius:15px}.z-team-grid{grid-template-columns:repeat(4,1fr)}.z-competition-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:900px){.z-main-grid,.z-news-layout,.z-footer-grid{grid-template-columns:1fr}.z-team-grid{grid-template-columns:repeat(3,1fr)}.z-section{padding:54px 0}.z-competition-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.z-container,.z-nav-shell{width:92%}.z-nav-shell{min-height:70px}.z-brand{min-width:0}.z-brand img{width:42px;height:42px}.z-brand strong{font-size:17px}.z-brand small{font-size:8.5px;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.z-menu{top:70px;height:calc(100dvh - 70px)}.z-hero h1{font-size:44px}.z-hero-copy>p{font-size:16px}.z-hero-actions{display:grid}.z-button{width:100%}.z-hero-features{display:grid;gap:8px}.z-card-top{align-items:flex-start;flex-direction:column}.z-match-main{grid-template-columns:1fr 64px 1fr}.z-match-team img{width:70px;height:70px}.z-match-team strong{font-size:12px}.z-match-time span{font-size:18px}.z-team-grid{grid-template-columns:repeat(2,1fr);gap:10px}.z-team-card{padding:14px}.z-team-logo{height:76px}.z-team-logo img{max-width:68px;max-height:68px}.z-section-heading,.z-block-heading{align-items:flex-start;flex-direction:column}.z-block,.z-market-panel,.z-region-panel{padding:18px;border-radius:21px}.z-fixture-teams{grid-template-columns:1fr 26px 1fr}.z-fixture-teams img{width:27px;height:27px}.z-fixture-teams strong{font-size:11px}.z-news-layout{grid-template-columns:1fr}.z-lead-news{min-height:310px}.z-news-list a{grid-template-columns:76px 1fr}.z-news-list img{width:76px;height:62px}.z-market-stats{gap:5px}.z-competition-grid{grid-template-columns:repeat(2,1fr)}.z-competition-grid>a{min-height:160px}.z-footer-grid{gap:20px}}
@media(max-width:380px){.z-team-grid,.z-competition-grid{grid-template-columns:1fr}.z-brand small{display:none}}

/* Homepage reorganizada - foco regional */

.z-hero h1{font-size:clamp(44px,5.2vw,76px);max-width:760px}
.z-hero-copy>p{max-width:620px}
.z-team-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
.z-standings-panel{background:linear-gradient(145deg,#071710,#12301f);color:#fff;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}
.z-standings-head>span{display:inline-flex;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:900;color:#b7f27b}
.z-standings-head h2{margin:7px 0 5px;font-size:32px;line-height:1;letter-spacing:-.04em}
.z-standings-head>a{color:#b7f27b;font-size:11px;font-weight:850}
.z-standing-tabs{display:flex;gap:7px;margin:20px 0 14px}
.z-standing-tabs a{flex:1;text-align:center;padding:9px 6px;border-radius:10px;background:rgba(255,255,255,.07);color:#b7c5bc;font-size:10px;font-weight:900;text-transform:uppercase}
.z-standing-tabs .is-active{background:var(--green);color:#fff}
.z-standing-table{display:grid;gap:6px}
.z-standing-row{display:grid;grid-template-columns:28px minmax(0,1fr) 30px 38px;align-items:center;gap:8px;min-height:46px;padding:0 10px;border-radius:11px;background:rgba(255,255,255,.06);color:#fff}
.z-standing-row:hover{background:rgba(99,179,0,.16)}
.z-standing-title{background:transparent;color:#8ea098;min-height:28px;font-size:10px;text-transform:uppercase}
.z-standing-row b{color:#b7f27b;font-size:12px}.z-standing-row strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.z-standing-row span{font-size:11px;color:#9fb1a5;text-align:center}.z-standing-row em{font-style:normal;font-size:13px;font-weight:900;text-align:right}.z-standing-empty{padding:20px;text-align:center;color:#9fb1a5;font-size:12px}
.z-transfer-groups{display:grid;gap:10px}
.z-transfer-group{border:1px solid #e5ebe7;border-radius:15px;padding:12px;background:#fafcfb}
.z-transfer-group h3{margin:0 0 9px;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.z-transfer-group>div{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid #edf1ee}
.z-transfer-group>div:first-of-type{border-top:0}
.z-transfer-group b{font-size:12px}.z-transfer-group span{font-size:10px;color:#728078;text-align:right}.z-transfer-group small{display:block;color:#86938b;font-size:10px}
.z-transfer-entrada h3{color:#477b1a}.z-transfer-saida h3{color:#b23a3a}.z-transfer-renovacao h3{color:#315b9b}
.z-socials{display:flex;gap:8px;margin-top:14px}.z-socials a{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:#fff!important;font-weight:900;padding:0!important}.z-send-info{margin-top:8px!important;color:#b7f27b!important;font-weight:800}
@media(max-width:1180px){.z-team-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.z-hero h1{font-size:39px}.z-team-grid{grid-template-columns:repeat(2,1fr)}.z-standing-row{grid-template-columns:24px minmax(0,1fr) 26px 34px}.z-standings-panel{padding:18px}}
@media(max-width:380px){.z-team-grid{grid-template-columns:1fr}}

@media(max-width:1000px){
html,body{max-width:100%!important;overflow-x:hidden!important}
.fv-global-header{position:sticky!important;top:0!important;z-index:30000!important;background:#071421!important;border-bottom:1px solid rgba(255,255,255,.1)!important}
.fv-global-nav{width:calc(100% - 16px)!important;min-height:62px!important;margin:auto!important;display:flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:9px!important}
.fv-global-brand{display:flex!important;align-items:center!important;min-width:0!important;flex:1 1 auto!important}
.fv-global-brand img{width:40px!important;height:40px!important;flex:0 0 40px!important;border-radius:11px!important;background:#fff!important;padding:2px!important}
.fv-global-brand strong{display:block!important;font-size:15px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.fv-global-brand>span>span{display:none!important}
.fv-menu-button{display:grid!important;place-items:center!important;width:46px!important;height:46px!important;min-width:46px!important;flex:0 0 46px!important;margin-left:auto!important;border:0!important;border-radius:14px!important;background:#78c800!important;color:#071421!important;font-size:25px!important;font-weight:900!important;box-shadow:0 6px 18px rgba(120,200,0,.28)!important}
.fv-global-menu{display:block!important;position:fixed!important;top:0!important;right:-100%!important;bottom:0!important;left:auto!important;z-index:30002!important;width:min(90vw,390px)!important;height:100dvh!important;margin:0!important;padding:calc(76px + env(safe-area-inset-top)) 14px calc(24px + env(safe-area-inset-bottom))!important;overflow-y:auto!important;background:#071421!important;box-shadow:-24px 0 60px rgba(0,0,0,.5)!important;transition:right .22s ease!important}
.fv-global-menu.is-open{right:0!important}
.fv-global-menu>a,.fv-global-menu>details>summary{display:flex!important;align-items:center!important;width:100%!important;min-height:50px!important;margin:5px 0!important;padding:11px 13px!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:13px!important;background:#0d1c2c!important;color:#eef5fb!important;font-size:14px!important;font-weight:800!important;white-space:normal!important}
.fv-global-menu>a.is-active,.fv-global-menu>a:hover,.fv-global-menu>details[open]>summary{background:#78c800!important;color:#071421!important;border-color:#78c800!important}
.fv-global-drop{width:100%!important}
.fv-global-panel{position:static!important;width:100%!important;max-width:none!important;display:grid!important;grid-template-columns:1fr!important;gap:7px!important;margin:5px 0 10px!important;padding:8px!important;border-radius:12px!important;background:#0a1827!important;box-shadow:none!important}
.fv-global-panel section{padding:8px!important;border-radius:10px!important;background:rgba(255,255,255,.035)!important}
.fv-global-panel a{display:flex!important;align-items:center!important;min-height:43px!important;padding:8px 9px!important;border-radius:8px!important;color:#dce7ef!important;white-space:normal!important}
.fv-menu-backdrop{display:none;position:fixed!important;inset:0!important;z-index:30001!important;background:rgba(0,0,0,.62)!important}
.fv-menu-backdrop.is-open{display:block!important}
body.fv-menu-lock{overflow:hidden!important}
}

@media(max-width:1000px){

  /* painel inteiro */
  .fv-global-menu{
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:6px!important;
    width:min(92vw,390px)!important;
    max-width:390px!important;
    overflow-x:hidden!important;
  }

  /* todos os itens principais ocupam a largura toda */
  .fv-global-menu > a,
  .fv-global-menu > details,
  .fv-global-menu > .fv-global-drop{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:0 0 auto!important;
    margin:0!important;
  }

  .fv-global-menu > a,
  .fv-global-menu > details > summary,
  .fv-global-menu > .fv-global-drop > summary{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:50px!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    margin:4px 0!important;
    padding:11px 13px!important;
    box-sizing:border-box!important;
    white-space:normal!important;
  }

  /* remover qualquer layout horizontal herdado */
  .fv-global-menu,
  .fv-global-menu *,
  .fv-global-drop,
  .fv-global-panel{
    float:none!important;
  }

  /* submenu competições integrado no mesmo painel */
  .fv-global-drop{
    position:static!important;
  }

  .fv-global-drop[open]{
    display:block!important;
  }

  .fv-global-panel{
    position:static!important;
    inset:auto!important;
    transform:none!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:4px 0 8px!important;
    padding:8px!important;
    display:block!important;
    background:#0a1827!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:12px!important;
    box-shadow:none!important;
    color:#dce7ef!important;
    box-sizing:border-box!important;
  }

  .fv-global-panel section{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 0 8px!important;
    padding:8px!important;
    background:rgba(255,255,255,.035)!important;
    border-radius:10px!important;
  }

  .fv-global-panel section:last-child{
    margin-bottom:0!important;
  }

  .fv-global-panel strong{
    display:block!important;
    margin:0 0 5px!important;
    color:#79c900!important;
  }

  .fv-global-panel a{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:42px!important;
    align-items:center!important;
    justify-content:flex-start!important;
    margin:2px 0!important;
    padding:8px 10px!important;
    color:#e6edf5!important;
    background:transparent!important;
    border:0!important;
    border-radius:8px!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    box-sizing:border-box!important;
  }

  .fv-global-panel a:hover,
  .fv-global-panel a.is-active{
    background:rgba(121,201,0,.16)!important;
    color:#fff!important;
  }

  /* garantir que Mercado e restantes ficam abaixo, nunca ao lado */
  .fv-global-menu > *{
    clear:both!important;
  }

  /* botão e painel */
  .fv-menu-button{
    display:grid!important;
    place-items:center!important;
    z-index:30003!important;
  }

  .fv-menu-backdrop{
    z-index:30001!important;
  }

  .fv-global-menu{
    z-index:30002!important;
  }
}

@media(max-width:560px){
  .fv-global-menu{
    width:92vw!important;
    max-width:360px!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
}

@media(max-width:1000px){

  .fv-global-header{
    background:linear-gradient(180deg,#07131f 0%,#0a1827 100%)!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    box-shadow:0 8px 24px rgba(0,0,0,.22)!important;
    backdrop-filter:blur(12px)!important;
    -webkit-backdrop-filter:blur(12px)!important;
  }

  .fv-global-header .fv-global-nav{
    width:calc(100% - 16px)!important;
    min-height:64px!important;
    gap:10px!important;
  }

  .fv-global-brand{
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    flex:1 1 auto!important;
    gap:10px!important;
  }

  .fv-global-brand img{
    width:42px!important;
    height:42px!important;
    flex:0 0 42px!important;
    padding:3px!important;
    border-radius:13px!important;
    background:#fff!important;
    box-shadow:0 6px 16px rgba(0,0,0,.22)!important;
  }

  .fv-global-brand strong{
    font-size:16px!important;
    color:#fff!important;
    letter-spacing:-.2px!important;
  }

  .fv-global-brand strong em{
    color:#79c900!important;
  }

  .fv-global-brand>span>span{
    display:none!important;
  }

  .fv-menu-button{
    display:grid!important;
    place-items:center!important;
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    flex:0 0 46px!important;
    margin-left:auto!important;
    border:1px solid rgba(255,255,255,.12)!important;
    border-radius:14px!important;
    background:linear-gradient(135deg,#8ce116,#63aa00)!important;
    color:#07131f!important;
    font-size:24px!important;
    font-weight:900!important;
    box-shadow:0 8px 22px rgba(121,201,0,.32)!important;
  }

  .fv-global-menu{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:7px!important;
    position:fixed!important;
    top:0!important;
    right:-100%!important;
    bottom:0!important;
    left:auto!important;
    z-index:32002!important;
    width:min(92vw,390px)!important;
    height:100dvh!important;
    margin:0!important;
    padding:calc(82px + env(safe-area-inset-top)) 14px calc(24px + env(safe-area-inset-bottom))!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    background:
      radial-gradient(circle at top right,rgba(121,201,0,.16),transparent 30%),
      linear-gradient(180deg,#07131f 0%,#06101b 100%)!important;
    border-left:1px solid rgba(255,255,255,.08)!important;
    box-shadow:-26px 0 64px rgba(0,0,0,.50)!important;
    transition:right .24s ease!important;
  }

  .fv-global-menu.is-open{
    right:0!important;
  }

  .fv-global-menu:before{
    content:"MENU";
    display:block!important;
    margin:0 2px 4px!important;
    color:#7f92a5!important;
    font-size:10px!important;
    font-weight:900!important;
    letter-spacing:.16em!important;
  }

  .fv-global-menu > a,
  .fv-global-menu > details > summary,
  .fv-global-menu > .fv-global-drop > summary{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:52px!important;
    margin:0!important;
    padding:12px 14px!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:15px!important;
    background:rgba(255,255,255,.045)!important;
    color:#ecf3f8!important;
    font-size:14px!important;
    font-weight:800!important;
    white-space:normal!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  }

  .fv-global-menu > a:after,
  .fv-global-menu > details > summary:after{
    content:"›";
    margin-left:auto!important;
    color:#7890a4!important;
    font-size:21px!important;
    font-weight:500!important;
  }

  .fv-global-menu > details[open] > summary:after{
    content:"⌄";
  }

  .fv-global-menu > a:hover,
  .fv-global-menu > a.is-active,
  .fv-global-menu > details[open] > summary{
    background:linear-gradient(135deg,#79c900,#62a900)!important;
    color:#07131f!important;
    border-color:#79c900!important;
    box-shadow:0 8px 18px rgba(121,201,0,.18)!important;
  }

  .fv-global-menu > a.is-active:after,
  .fv-global-menu > a:hover:after,
  .fv-global-menu > details[open] > summary:after{
    color:#07131f!important;
  }

  /* ícones */
  .fv-global-menu > a:before,
  .fv-global-menu > details > summary:before{
    width:26px!important;
    flex:0 0 26px!important;
    text-align:center!important;
    font-size:17px!important;
    margin-right:8px!important;
  }

  .fv-global-menu > a[href*="index.php"]:before{content:"🏠"}
  .fv-global-menu > a[href*="jogos"]:before{content:"⚽"}
  .fv-global-menu > a[href*="clubes.php"]:before{content:"🛡️"}
  .fv-global-menu > a[href*="mercado.php"]:before{content:"🔄"}
  .fv-global-menu > a[href*="noticias.php"]:before{content:"📰"}
  .fv-global-menu > a[href*="pesquisa.php"]:before{content:"🔎"}
  .fv-global-menu > a[href*="publicidade.php"]:before{content:"📣"}
  .fv-global-menu > a[href*="sobre.php"]:before{content:"ℹ️"}
  .fv-global-menu > .fv-global-drop > summary:before{content:"🏆"}

  .fv-global-drop{
    width:100%!important;
    margin:0!important;
  }

  .fv-global-panel{
    position:static!important;
    width:100%!important;
    max-width:100%!important;
    margin:7px 0 2px!important;
    padding:9px!important;
    display:block!important;
    background:rgba(255,255,255,.035)!important;
    border:1px solid rgba(255,255,255,.07)!important;
    border-radius:14px!important;
    box-shadow:none!important;
  }

  .fv-global-panel section{
    width:100%!important;
    margin:0 0 8px!important;
    padding:10px!important;
    border-radius:12px!important;
    background:rgba(255,255,255,.035)!important;
  }

  .fv-global-panel section:last-child{
    margin-bottom:0!important;
  }

  .fv-global-panel strong{
    display:block!important;
    margin:0 0 6px!important;
    color:#8ddc26!important;
    font-size:10px!important;
    font-weight:900!important;
    text-transform:uppercase!important;
    letter-spacing:.12em!important;
  }

  .fv-global-panel a{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:44px!important;
    margin:2px 0!important;
    padding:9px 10px!important;
    border-radius:10px!important;
    background:transparent!important;
    color:#dce6ef!important;
    font-size:13px!important;
    font-weight:750!important;
    white-space:normal!important;
    transition:.15s ease!important;
  }

  .fv-global-panel a:before{
    content:"•";
    margin-right:9px!important;
    color:#79c900!important;
    font-size:18px!important;
  }

  .fv-global-panel a:hover,
  .fv-global-panel a.is-active{
    background:rgba(121,201,0,.14)!important;
    color:#fff!important;
    transform:translateX(2px)!important;
  }

  .fv-menu-backdrop{
    position:fixed!important;
    inset:0!important;
    z-index:32001!important;
    background:rgba(2,7,13,.66)!important;
    backdrop-filter:blur(4px)!important;
    -webkit-backdrop-filter:blur(4px)!important;
  }

  .fv-menu-backdrop.is-open{
    display:block!important;
  }

  body.fv-menu-lock{
    overflow:hidden!important;
  }
}

@media(max-width:560px){
  .fv-global-header .fv-global-nav{
    width:calc(100% - 12px)!important;
    min-height:60px!important;
  }

  .fv-global-brand img{
    width:38px!important;
    height:38px!important;
    flex-basis:38px!important;
  }

  .fv-global-brand strong{
    font-size:14px!important;
  }

  .fv-menu-button{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    flex-basis:42px!important;
    font-size:22px!important;
  }

  .fv-global-menu{
    width:92vw!important;
    max-width:360px!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
}

@media(max-width:1000px){

  .fv-global-header{
    background:linear-gradient(180deg,#081522 0%,#0b1b2b 100%)!important;
    border-bottom:1px solid rgba(255,255,255,.07)!important;
    box-shadow:0 8px 26px rgba(0,0,0,.22)!important;
  }

  .fv-global-header .fv-global-nav{
    width:calc(100% - 14px)!important;
    min-height:62px!important;
    gap:10px!important;
  }

  .fv-global-brand img{
    width:40px!important;
    height:40px!important;
    flex:0 0 40px!important;
    border-radius:12px!important;
    background:#fff!important;
    padding:3px!important;
    box-shadow:0 6px 16px rgba(0,0,0,.18)!important;
  }

  .fv-global-brand strong{
    font-size:15px!important;
    color:#fff!important;
  }

  .fv-menu-button{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    flex:0 0 44px!important;
    border:0!important;
    border-radius:13px!important;
    background:linear-gradient(135deg,#8de21a,#65b100)!important;
    color:#07131f!important;
    box-shadow:0 7px 18px rgba(121,201,0,.30)!important;
  }

  .fv-global-menu{
    width:min(92vw,380px)!important;
    max-width:380px!important;
    padding:calc(76px + env(safe-area-inset-top)) 12px calc(24px + env(safe-area-inset-bottom))!important;
    gap:8px!important;
    background:
      radial-gradient(circle at top right,rgba(121,201,0,.13),transparent 28%),
      linear-gradient(180deg,#081522 0%,#06101b 100%)!important;
    border-left:1px solid rgba(255,255,255,.07)!important;
    box-shadow:-26px 0 64px rgba(0,0,0,.50)!important;
  }

  .fv-global-menu:before{
    content:"FUTEBOL VISEU";
    display:block!important;
    margin:1px 4px 5px!important;
    color:#7890a4!important;
    font-size:10px!important;
    font-weight:900!important;
    letter-spacing:.14em!important;
  }

  /* cartões principais */
  .fv-global-menu > a,
  .fv-global-menu > details > summary,
  .fv-global-menu > .fv-global-drop > summary{
    min-height:50px!important;
    padding:11px 13px!important;
    margin:0!important;
    border:1px solid rgba(255,255,255,.075)!important;
    border-radius:14px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025))!important;
    color:#eaf2f8!important;
    font-size:14px!important;
    font-weight:800!important;
    box-shadow:none!important;
  }

  .fv-global-menu > a:after,
  .fv-global-menu > details > summary:after{
    content:"›";
    margin-left:auto!important;
    color:#73879a!important;
    font-size:20px!important;
  }

  .fv-global-menu > details[open] > summary:after{
    content:"⌄";
    color:#07131f!important;
  }

  .fv-global-menu > a:hover,
  .fv-global-menu > a.is-active,
  .fv-global-menu > details[open] > summary{
    background:linear-gradient(135deg,#83d70f,#69b500)!important;
    color:#07131f!important;
    border-color:#83d70f!important;
    box-shadow:0 8px 20px rgba(121,201,0,.18)!important;
  }

  /* submenu sem caixa branca */
  .fv-global-panel{
    position:static!important;
    width:100%!important;
    max-width:100%!important;
    display:block!important;
    margin:6px 0 0!important;
    padding:8px!important;
    background:linear-gradient(180deg,#0b1a29,#091523)!important;
    border:1px solid rgba(255,255,255,.075)!important;
    border-radius:13px!important;
    color:#dce6ee!important;
    box-shadow:none!important;
  }

  .fv-global-panel section{
    width:100%!important;
    margin:0 0 7px!important;
    padding:9px!important;
    border-radius:11px!important;
    background:rgba(255,255,255,.025)!important;
    border:1px solid rgba(255,255,255,.035)!important;
  }

  .fv-global-panel section:last-child{
    margin-bottom:0!important;
  }

  .fv-global-panel strong{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    margin:0 0 5px!important;
    color:#90dd2b!important;
    font-size:10px!important;
    font-weight:900!important;
    text-transform:uppercase!important;
    letter-spacing:.12em!important;
  }

  .fv-global-panel strong:before{
    content:"";
    width:6px!important;
    height:6px!important;
    border-radius:50%!important;
    background:#79c900!important;
    box-shadow:0 0 0 4px rgba(121,201,0,.10)!important;
  }

  .fv-global-panel a{
    min-height:42px!important;
    margin:2px 0!important;
    padding:8px 10px!important;
    border:0!important;
    border-radius:9px!important;
    background:transparent!important;
    color:#dce6ee!important;
    font-size:13px!important;
    font-weight:730!important;
  }

  .fv-global-panel a:before{
    content:"›";
    margin-right:8px!important;
    color:#79c900!important;
    font-size:17px!important;
    line-height:1!important;
  }

  .fv-global-panel a:hover,
  .fv-global-panel a.is-active{
    background:rgba(121,201,0,.11)!important;
    color:#fff!important;
    transform:none!important;
  }

  .fv-menu-backdrop{
    background:rgba(2,8,14,.68)!important;
    backdrop-filter:blur(5px)!important;
    -webkit-backdrop-filter:blur(5px)!important;
  }
}

@media(max-width:560px){
  .fv-global-menu{
    width:92vw!important;
    max-width:355px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }

  .fv-global-menu > a,
  .fv-global-menu > details > summary{
    min-height:48px!important;
    font-size:13px!important;
  }

  .fv-global-panel a{
    font-size:12.5px!important;
  }
}

@media(max-width:1000px){
  .fv-global-menu .fv-global-drop,
  .fv-global-menu .fv-global-drop[open],
  .fv-global-menu .fv-global-panel,
  .fv-global-menu .fv-global-panel *,
  .fv-global-menu details,
  .fv-global-menu details[open],
  .fv-global-menu details > div,
  .fv-global-menu details > section,
  .fv-global-menu details ul,
  .fv-global-menu details li{
    box-shadow:none!important;
  }

  .fv-global-menu .fv-global-panel{
    background:#0b1a29!important;
    background-color:#0b1a29!important;
    color:#e8f0f6!important;
    border:1px solid rgba(255,255,255,.09)!important;
  }

  .fv-global-menu .fv-global-panel section,
  .fv-global-menu .fv-global-panel div,
  .fv-global-menu .fv-global-panel ul,
  .fv-global-menu .fv-global-panel li{
    background:#0d1e2f!important;
    background-color:#0d1e2f!important;
    color:#e8f0f6!important;
    border-color:rgba(255,255,255,.05)!important;
  }

  .fv-global-menu .fv-global-panel a,
  .fv-global-menu .fv-global-panel a:link,
  .fv-global-menu .fv-global-panel a:visited{
    background:transparent!important;
    background-color:transparent!important;
    color:#e8f0f6!important;
    opacity:1!important;
  }

  .fv-global-menu .fv-global-panel a:hover,
  .fv-global-menu .fv-global-panel a.is-active{
    background:rgba(121,201,0,.14)!important;
    background-color:rgba(121,201,0,.14)!important;
    color:#fff!important;
  }

  .fv-global-menu .fv-global-panel strong,
  .fv-global-menu .fv-global-panel h3,
  .fv-global-menu .fv-global-panel h4{
    color:#91df2d!important;
    opacity:1!important;
  }
}

@media(max-width:1000px){
.fv-global-panel a{position:relative!important;padding-left:46px!important;min-height:50px!important}
.fv-global-panel a:before{
 content:""!important;position:absolute!important;left:9px!important;top:50%!important;
 transform:translateY(-50%)!important;width:30px!important;height:30px!important;
 margin:0!important;background-repeat:no-repeat!important;background-position:center!important;
 background-size:contain!important;
}
.fv-global-panel a[href*="liga-portugal-betclic.php"]:before{
 background-image:url("assets/menu-logos/liga-portugal-betclic.png")!important;
}
.fv-global-panel a[href*="liga-portugal-2-meu-super.php"]:before{
 background-image:url("assets/menu-logos/liga-portugal-2.png")!important;
}
.fv-global-panel a[href*="campeonato-portugal"]:before{
 background-image:url("assets/menu-logos/campeonato-portugal.png")!important;
}
.fv-global-panel a[href*="divisao-honra.php"]:before,
.fv-global-panel a[href*="norte.php"]:before,
.fv-global-panel a[href*="sul.php"]:before,
.fv-global-panel a[href*="segunda-divisao-serie-a.php"]:before,
.fv-global-panel a[href*="segunda-divisao-serie-b.php"]:before{
 background-image:url("assets/menu-logos/af-viseu.png")!important;
}
}

/* Homepage em época ativa: prioridade a resultados e diretos */
.z-results-panel,.z-matchday-panel{
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  box-shadow:var(--shadow);
  padding:22px;
}
.z-results-head span,.z-matchday-panel .z-block-heading span{
  display:inline-flex;
  color:var(--green);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.z-results-head h2{margin:5px 0 4px;font-size:28px}
.z-results-head p{margin:0 0 14px;color:var(--muted);font-size:13px}
.z-recent-results{display:grid;gap:9px}
.z-recent-result{
  border:1px solid var(--line);
  background:#f8faf9;
  border-radius:15px;
  padding:11px 12px;
}
.z-recent-comp{
  color:var(--muted);
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.04em;
  margin-bottom:8px;
}
.z-recent-teams{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  gap:8px;
  align-items:center;
}
.z-recent-teams>div{display:flex;align-items:center;gap:7px;min-width:0;font-size:12px}
.z-recent-teams>div:last-child{justify-content:flex-end;text-align:right}
.z-recent-teams img{width:28px;height:28px;object-fit:contain;background:#fff;border-radius:50%;padding:2px;flex:0 0 28px}
.z-recent-teams strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.z-recent-teams>b{
  min-width:70px;
  text-align:center;
  background:var(--dark);
  color:#fff;
  border-radius:10px;
  padding:6px 8px;
  font-size:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
}
.z-recent-teams>b i{
  font-style:normal;
  font-size:9px;
  font-weight:950;
  color:#a8df67;
  letter-spacing:.05em;
}
.fv214-result-game-link{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:36px;
  margin-top:10px;
  border-top:1px solid #e4e7ec;
  padding-top:9px;
  color:var(--green)!important;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.fv214-result-game-link:hover{opacity:.78}
.z-matchday-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
  margin-top:12px;
}
.z-matchday-stats div{
  text-align:center;
  padding:14px 8px;
  background:#f4f8f5;
  border:1px solid var(--line);
  border-radius:14px;
}
.z-matchday-stats b{display:block;color:var(--green);font-size:24px;line-height:1}
.z-matchday-stats span{display:block;margin-top:5px;color:var(--muted);font-size:10px;font-weight:800}
.z-matchday-button{
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:46px;
  margin-top:12px;
  border-radius:13px;
  background:var(--green);
  color:#fff!important;
  font-size:13px;
  font-weight:900;
}
@media(max-width:760px){
  .z-results-panel,.z-matchday-panel{padding:16px;border-radius:18px}
  .z-results-head h2{font-size:23px}
  .z-recent-teams strong{font-size:11px}
  .z-recent-teams img{width:25px;height:25px;flex-basis:25px}
  .z-matchday-stats{gap:6px}
  .z-matchday-stats b{font-size:20px}
}

.fv-home-results-filter{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  margin:14px 0 16px;
}
.fv-home-results-filter label{
  font-size:12px;
  font-weight:850;
  color:#667085;
}
.fv-home-results-filter select{
  min-height:44px;
  min-width:260px;
  max-width:100%;
  padding:8px 38px 8px 12px;
  border:1px solid #d0d5dd;
  border-radius:12px;
  background:#fff;
  color:#101828;
  font-size:14px;
  font-weight:800;
}
@media(max-width:650px){
  .fv-home-results-filter{
    display:block;
  }
  .fv-home-results-filter label{
    display:block;
    margin-bottom:6px;
  }
  .fv-home-results-filter select{
    width:100%;
    min-width:0;
  }
}

.fv-agenda-server-filter{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(180px,.55fr);
  gap:10px;
  margin:14px 0 10px;
  padding:12px;
  border:1px solid #e4e7ec;
  border-radius:14px;
  background:#f8fafc;
}
.fv-agenda-server-filter.is-viseu{grid-template-columns:minmax(0,1fr);}
.fv-agenda-field label{
  display:block;
  margin:0 0 5px;
  color:#667085;
  font-size:11px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.fv-agenda-field select{
  width:100%;
  min-height:44px;
  padding:8px 36px 8px 11px;
  border:1px solid #d0d5dd;
  border-radius:10px;
  background:#fff;
  color:#101828;
  font-size:14px;
  font-weight:800;
}
.fv-agenda-summary{
  margin:0 0 12px;
  color:#667085;
  font-size:12px;
  font-weight:750;
}
.fv-agenda-summary strong{
  color:#4f8f00;
  font-size:15px;
}
.fv-agenda-round-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:16px 0 7px;
  padding:9px 11px;
  border-radius:10px;
  background:#eef7e5;
  color:#315d00;
  font-size:12px;
  font-weight:850;
}
.z-fixture-list{
  max-height:none!important;
  overflow:visible!important;
}
@media(max-width:650px){
  .fv-agenda-server-filter{
    grid-template-columns:1fr;
  }
}

.fv-agenda-summary{
  display:flex;
  align-items:center;
  gap:6px;
  min-height:36px;
  margin:0 0 12px;
  padding:7px 10px;
  border-radius:10px;
  background:#eef7e5;
  color:#475467;
  font-size:12px;
  font-weight:750;
}
.fv-agenda-summary strong{
  color:#315d00;
  font-size:13px;
}

.fv-results-count{
  margin:10px 0 8px;
  color:#667085;
  font-size:12px;
  font-weight:850;
}

/* Homepage em modo época: prioridade a jogos e resultados */
#resultados-direto{margin-top:18px!important}
#jogos{margin-top:24px!important}
.z-news-matchday{margin-top:28px!important}
#equipas-viseu,.z-regional-section{margin-top:42px!important}
.fv-home-season-note{
  width:min(1240px,calc(100% - 24px));
  margin:16px auto 0;
  padding:10px 12px;
  border:1px solid #e4e7ec;
  border-radius:12px;
  background:#f8fafc;
  color:#667085;
  font-size:12px;
  font-weight:800;
}
@media(max-width:650px){
  .fv-home-season-note{
    width:calc(100% - 14px);
  }
}

/* HOME 2026/27 — hierarquia editorial */
/* Diretos: mais presença, menos espaço morto */
.z-live-section{margin-top:10px!important}
.z-live-shell{border-radius:22px!important}
.z-live-head{padding-top:18px!important;padding-bottom:14px!important}

/* Jogos & Resultados como uma só área editorial */
#jogos{
  position:relative;
  margin-top:24px!important;
  padding-top:8px;
}
#jogos .z-container{
  align-items:start;
}
#jogos .z-block,
#jogos .z-results-panel{
  border-radius:20px!important;
  box-shadow:0 12px 32px rgba(16,24,40,.07)!important;
}
#jogos .z-block-heading,
#jogos .z-results-head{
  padding-bottom:8px;
}
#jogos .z-block-heading h2,
#jogos .z-results-head h2{
  font-size:25px!important;
  letter-spacing:-.025em;
}
.fv-agenda-server-filter,
.fv-home-results-filter{
  background:#f7f9f8!important;
  border-color:#e1e7e3!important;
}
.z-fixture-row,.z-recent-result{
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}
@media(hover:hover){
 .z-fixture-row:hover,.z-recent-result:hover{
   transform:translateY(-1px);
   border-color:#cbd8ce!important;
   box-shadow:0 7px 18px rgba(16,24,40,.06);
 }
}

/* Estatísticas do dia: faixa compacta */
.z-matchday-panel{
  padding:15px 18px!important;
  border-radius:18px!important;
}
.z-matchday-stats{
  gap:7px!important;
  margin-top:8px!important;
}
.z-matchday-stats div{
  padding:10px 7px!important;
}
.z-matchday-stats b{font-size:20px!important}

/* Notícias ganham importância depois de jogos/resultados */
.z-news-matchday,
.z-news-section{
  margin-top:30px!important;
}
.z-news-matchday h2,
.z-news-section h2{
  font-size:28px!important;
}

/* Equipas do distrito são conteúdo secundário */
#equipas-viseu,.z-regional-section{
  margin-top:46px!important;
  padding-top:12px;
  border-top:1px solid #e8ece9;
}

/* Ritmo vertical geral */
main>.z-section{margin-bottom:24px}
@media(max-width:760px){
      #jogos{margin-top:16px!important}
  #jogos .z-block,#jogos .z-results-panel{border-radius:16px!important}
  #jogos .z-block-heading h2,#jogos .z-results-head h2{font-size:22px!important}
  .z-matchday-panel{padding:13px!important}
  #equipas-viseu,.z-regional-section{margin-top:32px!important}
}

.fv-games-results-title{margin-bottom:10px}
.fv-games-results-title .z-section-heading{margin-bottom:0!important}
.fv-games-results-title h2{margin:4px 0 3px;font-size:30px;letter-spacing:-.03em}
.fv-games-results-title p{margin:0;color:#667085;font-size:13px}
@media(max-width:650px){
 .fv-games-results-title h2{font-size:25px}
 .fv-games-results-title p{font-size:12px;line-height:1.5}
}

main{padding-top:18px}
.z-live-section{margin-top:0!important}
@media(max-width:650px){main{padding-top:10px}}

main{padding-top:8px!important}
#resultados-direto{margin-top:0!important}
@media(max-width:650px){main{padding-top:4px!important}}

/* Notícias em largura total */
.fv-news-home-grid{display:block!important}
.z-news-matchday .z-block{
  width:100%;
  padding:24px!important;
  border-radius:22px!important;
}
.z-news-matchday .z-news-layout{
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)!important;
  gap:18px!important;
}
.z-news-matchday .z-lead-news{
  min-height:390px;
  border-radius:18px!important;
  overflow:hidden;
}
.z-news-matchday .z-lead-news img{
  min-height:390px;
  object-fit:cover;
}
.z-news-list{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
}
.z-news-list>a{
  display:block!important;
  border:1px solid #e4e7ec;
  border-radius:15px!important;
  overflow:hidden;
  background:#fff;
}
.z-news-list>a img{
  width:100%!important;
  height:125px!important;
  object-fit:cover!important;
  border-radius:0!important;
}
.z-news-list>a span{display:block;padding:10px!important}
.z-news-list>a b{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* Galeria editorial */
.fv-gallery-item:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 35%,rgba(4,12,20,.86) 100%);
}

@media(max-width:850px){
 .z-news-matchday .z-news-layout{grid-template-columns:1fr!important}
 .z-news-matchday .z-lead-news,.z-news-matchday .z-lead-news img{min-height:310px}
 }
@media(max-width:600px){
 .z-news-matchday .z-block{padding:15px!important}
 .z-news-list{grid-template-columns:1fr!important}
 .z-news-list>a{display:grid!important;grid-template-columns:105px 1fr!important}
 .z-news-list>a img{height:90px!important}
 .z-news-matchday .z-lead-news,.z-news-matchday .z-lead-news img{min-height:250px}
 .fv-gallery-item:nth-child(n+6){display:none}
 }

.fv55-gallery{margin-top:30px!important}
.fv55-gallery-head{align-items:flex-end!important}
.fv55-gallery-send{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;padding:9px 14px!important;border-radius:12px!important;background:#79c900!important;color:#07111f!important;text-decoration:none!important;font-weight:900!important}
.fv55-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.fv55-gallery-card{overflow:hidden;border:1px solid #e4e7ec;border-radius:17px;background:#fff;box-shadow:0 10px 24px rgba(16,24,40,.05)}
.fv55-gallery-media{aspect-ratio:4/3;background:#07111f;overflow:hidden}
.fv55-gallery-media img,.fv55-gallery-media video{width:100%;height:100%;display:block;object-fit:cover}
.fv55-gallery-copy{padding:11px 12px}.fv55-gallery-copy span{display:block;color:#4f8f00;font-size:10px;font-weight:900;text-transform:uppercase}.fv55-gallery-copy strong{display:block;margin-top:4px;color:#101828;font-size:14px}
.fv55-gallery-empty{padding:26px;border:1px dashed #cbd5e1;border-radius:16px;background:#f8fafc;text-align:center}.fv55-gallery-empty strong{display:block}.fv55-gallery-empty span{display:block;margin-top:5px;color:#667085;font-size:13px}
@media(max-width:900px){.fv55-gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.fv55-gallery-head{align-items:flex-start!important}.fv55-gallery-send{width:100%}.fv55-gallery-grid{grid-template-columns:1fr}}

/* V427 — o footer da homepage é controlado exclusivamente por includes/footer-global.php.
   As regras antigas locais foram removidas para manter o rodapé igual em todas as páginas. */

/* Ajuste mínimo do menu existente — sem alterar o layout das páginas */
.fv-menu-button{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
}
.fv-global-menu a[aria-label="Pesquisar"]{
  min-width:42px!important;
  min-height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
@media(max-width:1000px){
  .fv-global-menu a,
  .fv-global-drop summary{
    min-height:46px!important;
  }
}

/* Pesquisa com lupa */
.fv71-search-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
}
.fv71-search-icon{
  display:block!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  fill:currentColor!important;
}
.fv71-search-label{display:none!important}

/* Normalização dos ícones/logótipos dentro do menu */
#fvGlobalMenu img,
#fvGlobalMenu svg:not(.fv71-search-icon){
  object-fit:contain!important;
  flex:0 0 auto!important;
}

/* iPhone / Android */
@media(max-width:1000px){
  #fvGlobalMenu img{
    width:20px!important;
    height:20px!important;
    min-width:20px!important;
    max-width:20px!important;
    max-height:20px!important;
  }

  #fvGlobalMenu svg{
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    max-width:18px!important;
  }

  /* evita repetição visual de ícones/logos em links */
  #fvGlobalMenu a img + img,
  #fvGlobalMenu a svg + svg,
  #fvGlobalMenu summary img + img,
  #fvGlobalMenu summary svg + svg{
    display:none!important;
  }

  .fv71-search-label{
    display:inline!important;
  }

  .fv71-search-link{
    justify-content:flex-start!important;
  }
}

@media(max-width:560px){
  #fvGlobalMenu img{
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    max-width:18px!important;
    max-height:18px!important;
  }

  #fvGlobalMenu svg{
    width:17px!important;
    height:17px!important;
    min-width:17px!important;
    max-width:17px!important;
  }
}

/* Ícones mais pequenos também no desktop */
#fvGlobalMenu img{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  max-height:18px!important;
  object-fit:contain!important;
  flex:0 0 18px!important;
}
#fvGlobalMenu svg{
  width:17px!important;
  height:17px!important;
  min-width:17px!important;
  max-width:17px!important;
  flex:0 0 17px!important;
}
.fv71-search-icon{
  width:17px!important;
  height:17px!important;
  min-width:17px!important;
  max-width:17px!important;
}

/* Mantém apenas um ícone quando houver duplicação */
#fvGlobalMenu a img + img,
#fvGlobalMenu a svg + svg,
#fvGlobalMenu summary img + img,
#fvGlobalMenu summary svg + svg{
  display:none!important;
}

@media(max-width:1000px){
  #fvGlobalMenu img{
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    max-width:18px!important;
    max-height:18px!important;
  }
  #fvGlobalMenu svg{
    width:17px!important;
    height:17px!important;
    min-width:17px!important;
    max-width:17px!important;
  }
}

@media(max-width:560px){
  #fvGlobalMenu img{
    width:16px!important;
    height:16px!important;
    min-width:16px!important;
    max-width:16px!important;
    max-height:16px!important;
  }
  #fvGlobalMenu svg{
    width:16px!important;
    height:16px!important;
    min-width:16px!important;
    max-width:16px!important;
  }
}

.z-live-section{padding:28px 0!important}
.z-live-shell{
  overflow:hidden!important;
  border:1px solid #dde4ea!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 18px 44px rgba(16,24,40,.09)!important
}
.z-live-head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:22px!important;
  background:radial-gradient(circle at 90% 0%,rgba(121,201,0,.2),transparent 34%),linear-gradient(135deg,#07111f,#0d2033)!important;
  color:#fff!important
}
.fv84-kicker{display:flex;align-items:center;gap:8px;color:#d7ff96;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.fv84-kicker i{width:9px;height:9px;border-radius:50%;background:#ff3b30;box-shadow:0 0 0 5px rgba(255,59,48,.14);animation:fv84pulse 1.5s ease-in-out infinite}
@keyframes fv84pulse{50%{opacity:.5;transform:scale(.85)}}
.fv84-live-title h2{margin:5px 0 4px!important;color:#fff!important;font-size:clamp(25px,3vw,34px)!important}
.fv84-live-title p{margin:0!important;color:#aebbc7!important;font-size:12.5px!important}
.z-live-tabs{display:flex!important;gap:6px!important;padding:4px!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:12px!important;background:rgba(255,255,255,.06)!important}
.z-live-tab{min-height:36px!important;padding:7px 11px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:#c9d4dd!important;font-size:11px!important;font-weight:850!important}
.z-live-tab.is-active{background:#79c900!important;color:#07111f!important;box-shadow:0 5px 14px rgba(121,201,0,.18)!important}
.z-live-panel{padding:16px!important;background:#f5f7f9!important}
.z-live-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.z-live-card{position:relative!important;overflow:hidden!important;padding:14px!important;border:1px solid #e2e7eb!important;border-radius:16px!important;background:#fff!important;box-shadow:0 7px 18px rgba(16,24,40,.045)!important}
.z-live-card:before{content:""!important;position:absolute!important;left:0!important;top:0!important;bottom:0!important;width:4px!important;background:#ff3b30!important}
.z-live-status{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:10px!important;margin-bottom:10px!important;padding-bottom:9px!important;border-bottom:1px solid #eef1f3!important}
.z-live-status b{color:#d92d20!important;font-size:10.5px!important;font-weight:900!important;text-transform:uppercase!important}
.z-live-status em{color:#667085!important;font-size:10px!important;font-style:normal!important;font-weight:800!important}
.z-live-team{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;padding:7px 0!important}
.z-live-team-info{display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important}
.z-live-team-info img{width:31px!important;height:31px!important;min-width:31px!important;max-width:31px!important;object-fit:contain!important}
.z-live-team-info strong{font-size:13px!important;color:#253142!important}
.z-live-score{min-width:38px!important;padding:4px 8px!important;border-radius:9px!important;background:#07111f!important;color:#fff!important;text-align:center!important;font-size:18px!important;font-weight:900!important}
.z-live-meta{margin-top:9px!important;padding-top:9px!important;border-top:1px solid #eef1f3!important;color:#667085!important;font-size:10.5px!important}
.z-live-note{margin-top:8px!important;padding:8px 9px!important;border-radius:9px!important;background:#fff6ed!important;color:#b54708!important;font-size:10.5px!important;font-weight:800!important}
.z-live-empty{padding:28px 18px!important;border:1px dashed #cfd8df!important;border-radius:15px!important;background:#fff!important;text-align:center!important;color:#667085!important}
.z-live-empty strong{display:block!important;margin-bottom:5px!important;color:#344054!important}
.z-live-empty a{display:inline-flex!important;margin-top:10px!important;padding:7px 10px!important;border-radius:9px!important;background:#07111f!important;color:#fff!important;text-decoration:none!important;font-weight:850!important}
@media(max-width:820px){
  .z-live-head{align-items:flex-start!important;flex-direction:column!important}
  .z-live-tabs{width:100%!important}
  .z-live-tab{flex:1 1 0!important}
  .z-live-grid{grid-template-columns:1fr!important}
}
@media(max-width:560px){
  .z-live-section{padding:18px 0!important}
  .z-live-shell{border-radius:16px!important}
  .z-live-head{padding:16px!important}
  .fv84-live-title h2{font-size:23px!important}
  .fv84-live-title p{font-size:11.5px!important}
  .z-live-panel{padding:9px!important}
  .z-live-card{padding:11px!important;border-radius:12px!important}
  .z-live-team-info img{width:27px!important;height:27px!important;min-width:27px!important;max-width:27px!important}
  .z-live-team-info strong{font-size:12px!important}
  .z-live-score{min-width:34px!important;font-size:16px!important}
  .z-live-tab{min-height:34px!important;padding:6px 5px!important;font-size:10.5px!important}
}

.fv85-live-group{margin-bottom:14px}
.fv85-live-group:last-child{margin-bottom:0}
.fv85-live-group-head{
  display:flex;align-items:center;gap:9px;
  margin:0 0 8px;padding:8px 10px;
  border:1px solid #e1e7eb;border-radius:11px;
  background:#fff;color:#253142
}
.fv85-live-group-head img{width:21px!important;height:21px!important;min-width:21px!important;max-width:21px!important;object-fit:contain!important}
.fv85-live-group-head strong{font-size:12px;font-weight:900}
.fv85-live-group-head span{margin-left:auto;color:#667085;font-size:10px;font-weight:800}
@media(max-width:620px){
  .z-live-tabs{grid-template-columns:repeat(2,1fr)!important}
  .fv85-live-group{margin-bottom:11px}
  .fv85-live-group-head{padding:7px 8px;margin-bottom:6px}
  .fv85-live-group-head img{width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important}
  .fv85-live-group-head strong{font-size:11px}
}

@media(min-width:1001px){
  #fvGlobalMenu>a,#fvGlobalMenu>details>summary{padding-left:9px!important;padding-right:9px!important}
}

.fv87TodayCount{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:20px;
  height:20px;
  margin-left:4px;
  padding:0 5px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  color:inherit;
  font-size:10px;
  font-weight:900;
}
.z-live-tab.is-active .fv87TodayCount{
  background:rgba(7,17,31,.12);
}

/* V88 — Acompanhamento / Resultados em direto */
.z-live-section{padding:22px 0!important}
.z-live-shell{
  border:1px solid #dce3e8!important;
  border-radius:24px!important;
  background:#f6f8fa!important;
  box-shadow:0 20px 55px rgba(16,24,40,.10)!important;
}
.z-live-head{
  position:relative!important;
  overflow:hidden!important;
  padding:22px 24px!important;
  background:linear-gradient(120deg,#06101d 0%,#0b1d30 68%,#153719 100%)!important;
}
.z-live-head:after{
  content:""!important;
  position:absolute!important;
  width:180px!important;height:180px!important;
  right:-60px!important;top:-95px!important;
  border-radius:50%!important;
  background:rgba(121,201,0,.13)!important;
}
.fv84-kicker{
  position:relative!important;z-index:1!important;
  width:max-content!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.07)!important;
}
.fv84-live-title{position:relative!important;z-index:1!important}
.fv84-live-title h2{
  margin-top:8px!important;
  font-size:clamp(27px,3.4vw,38px)!important;
  font-weight:950!important;
}
.fv84-live-title p{max-width:520px!important;color:#b9c6d1!important}
.z-live-tabs{
  position:relative!important;z-index:2!important;
  min-width:230px!important;
  padding:5px!important;
  border-radius:14px!important;
  backdrop-filter:blur(8px)!important;
}
.z-live-tab{
  min-height:40px!important;
  border-radius:10px!important;
  font-size:11.5px!important;
}
.z-live-panel{padding:15px!important}
.fv85-live-group{
  padding:10px!important;
  border:1px solid #e1e7eb!important;
  border-radius:17px!important;
  background:#fff!important;
}
.fv85-live-group-head{
  margin:0 0 9px!important;
  padding:3px 4px 9px!important;
  border:0!important;
  border-bottom:1px solid #edf0f2!important;
  border-radius:0!important;
}
.fv85-live-group-head img{
  width:24px!important;height:24px!important;
  min-width:24px!important;max-width:24px!important;
}
.fv85-live-group-head strong{font-size:12.5px!important}
.z-live-grid{gap:9px!important}
.z-live-card{
  padding:12px 13px 12px 16px!important;
  border-radius:13px!important;
  box-shadow:none!important;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important;
}
.z-live-card:hover{
  transform:translateY(-2px)!important;
  border-color:#cad5dd!important;
  box-shadow:0 9px 22px rgba(16,24,40,.07)!important;
}
.z-live-card:before{width:3px!important}
.z-live-status{margin-bottom:7px!important;padding-bottom:7px!important}
.z-live-status b{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
}
.z-live-status b:before{
  content:""!important;
  width:6px!important;height:6px!important;
  border-radius:50%!important;
  background:currentColor!important;
}
.z-live-team{padding:5px 0!important}
.z-live-team-info img{
  width:34px!important;height:34px!important;
  min-width:34px!important;max-width:34px!important;
}
.z-live-team-info strong{font-size:13px!important;font-weight:850!important}
.z-live-score{
  min-width:42px!important;
  border-radius:10px!important;
  font-size:19px!important;
}
.z-live-meta{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  margin-top:7px!important;
  padding-top:7px!important;
}
.z-live-empty{
  padding:32px 18px!important;
  border-radius:16px!important;
}
@media(max-width:820px){
  .z-live-head{padding:19px!important}
  .z-live-tabs{min-width:0!important}
}
@media(max-width:560px){
  .z-live-section{padding:14px 0!important}
  .z-live-shell{border-radius:17px!important}
  .z-live-head{padding:15px!important}
  .fv84-kicker{padding:4px 8px!important;font-size:9px!important}
  .fv84-live-title h2{font-size:22px!important;margin-top:7px!important}
  .fv84-live-title p{font-size:11px!important}
  .z-live-tabs{padding:4px!important;border-radius:11px!important}
  .z-live-tab{min-height:36px!important;font-size:10.5px!important}
  .z-live-panel{padding:8px!important}
  .fv85-live-group{padding:7px!important;border-radius:13px!important}
  .fv85-live-group-head{margin-bottom:5px!important;padding-bottom:6px!important}
  .fv85-live-group-head img{
    width:20px!important;height:20px!important;
    min-width:20px!important;max-width:20px!important
  }
  .z-live-card{padding:9px 9px 9px 12px!important;border-radius:10px!important}
  .z-live-team{padding:4px 0!important}
  .z-live-team-info{gap:7px!important}
  .z-live-team-info img{
    width:28px!important;height:28px!important;
    min-width:28px!important;max-width:28px!important
  }
  .z-live-team-info strong{font-size:11.5px!important}
  .z-live-score{min-width:36px!important;font-size:16px!important;padding:4px 6px!important}
  .z-live-meta{font-size:9.5px!important}
}

/* V89 — visual mais limpo e apelativo */
.fv87TodayCount{display:none!important}

.z-live-shell{
  border-radius:20px!important;
  border:1px solid #e1e6ea!important;
  box-shadow:0 12px 34px rgba(16,24,40,.07)!important;
}
.z-live-head{
  padding:20px 22px!important;
  background:linear-gradient(135deg,#0a1725 0%,#10283a 100%)!important;
}
.z-live-head:after{display:none!important}

.fv84-kicker{
  padding:0!important;
  background:transparent!important;
  color:#bce879!important;
}
.fv84-kicker i{
  width:7px!important;
  height:7px!important;
  box-shadow:0 0 0 4px rgba(255,59,48,.12)!important;
}
.fv84-live-title h2{
  margin:6px 0 3px!important;
  font-size:30px!important;
}
.fv84-live-title p{
  font-size:12px!important;
  color:#aebdca!important;
}

/* Botões Em direto / Hoje */
.z-live-tabs{
  min-width:0!important;
  display:inline-flex!important;
  gap:3px!important;
  padding:3px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.06)!important;
  box-shadow:none!important;
}
.z-live-tab{
  min-width:92px!important;
  min-height:34px!important;
  padding:7px 12px!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#c5d0d9!important;
  font-size:11px!important;
  font-weight:850!important;
  box-shadow:none!important;
  transform:none!important;
}
.z-live-tab:hover{
  background:rgba(255,255,255,.07)!important;
  color:#fff!important;
  transform:none!important;
}
.z-live-tab.is-active{
  background:#fff!important;
  color:#162433!important;
  box-shadow:0 2px 7px rgba(0,0,0,.12)!important;
}

/* Área das competições */
.z-live-panel{
  padding:12px!important;
  background:#f7f9fa!important;
}
.fv85-live-group{
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #e3e8ec!important;
  border-radius:14px!important;
  background:#fff!important;
}
.fv85-live-group-head{
  margin:0!important;
  padding:10px 12px!important;
  border:0!important;
  border-bottom:1px solid #edf0f2!important;
  background:#fbfcfd!important;
}
.fv85-live-group-head strong{
  font-size:12px!important;
  color:#344054!important;
}
.fv85-live-group-head span{
  color:#98a2b3!important;
  font-size:9.5px!important;
}
.z-live-grid{
  padding:8px!important;
  gap:7px!important;
}
.z-live-card{
  padding:10px 11px 10px 13px!important;
  border:1px solid #edf0f2!important;
  border-radius:11px!important;
  background:#fff!important;
}
.z-live-card:hover{
  transform:none!important;
  box-shadow:none!important;
  border-color:#d8e0e6!important;
}
.z-live-card:before{
  width:3px!important;
  background:#ef4444!important;
}
.z-live-team-info img{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  max-width:30px!important;
}
.z-live-score{
  min-width:38px!important;
  font-size:17px!important;
  border-radius:8px!important;
}

/* Mobile */
@media(max-width:560px){
  .z-live-head{
    padding:15px!important;
    gap:13px!important;
  }
  .fv84-live-title h2{
    font-size:22px!important;
  }
  .fv84-live-title p{
    font-size:10.5px!important;
  }
  .z-live-tabs{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
  }
  .z-live-tab{
    width:100%!important;
    min-width:0!important;
    min-height:35px!important;
    padding:6px!important;
  }
  .z-live-panel{padding:7px!important}
  .fv85-live-group{border-radius:11px!important}
  .fv85-live-group-head{padding:8px!important}
  .z-live-grid{padding:6px!important;gap:6px!important}
  .z-live-card{padding:8px 8px 8px 11px!important}
  .z-live-team-info img{
    width:26px!important;
    height:26px!important;
    min-width:26px!important;
    max-width:26px!important;
  }
  .z-live-score{
    min-width:34px!important;
    font-size:15px!important;
  }
}

/* V90 — menu principal reorganizado e responsivo */
.fv-global-header{
  position:sticky!important;
  top:0!important;
  z-index:9999!important;
}
.fv-global-header .fv-global-nav{
  width:min(1240px,calc(100% - 28px))!important;
  min-height:68px!important;
  gap:16px!important;
}
.fv-global-header .fv-global-brand img{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  object-fit:contain!important;
}
.fv-global-header .fv-global-brand strong{
  font-size:18px!important;
}
.fv-global-header .fv-global-brand > span > span{
  font-size:9.5px!important;
}

/* Desktop: sem botão dos 3 traços */
.fv-menu-button{
  display:none!important;
}

/* Menu desktop mais limpo */
.fv-global-menu{
  margin-left:auto!important;
  display:flex!important;
  align-items:center!important;
  gap:2px!important;
}
.fv-global-menu>a,
.fv-global-menu>details>summary{
  min-height:40px!important;
  padding:0 10px!important;
  border-radius:9px!important;
  font-size:12.5px!important;
  white-space:nowrap!important;
}
.fv-global-menu .fv-viseu-link{
  background:transparent!important;
  color:#dbe5ef!important;
}
.fv-global-menu .fv-viseu-link:hover,
.fv-global-menu .fv-viseu-link.is-active{
  background:rgba(121,201,0,.14)!important;
  color:#fff!important;
}

/* Dropdown */
.fv-global-panel{
  top:48px!important;
  width:min(650px,90vw)!important;
  gap:10px!important;
  padding:12px!important;
  border-radius:16px!important;
}
.fv-global-panel section{
  padding:10px!important;
  border-radius:11px!important;
}
.fv-global-panel a{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  padding:7px!important;
  font-size:12px!important;
}
.fv-global-panel .fv-mapa-logo{
  width:17px!important;
  height:17px!important;
  min-width:17px!important;
  max-width:17px!important;
  object-fit:contain!important;
}

/* Pesquisa apenas como lupa no desktop */
.fv71-search-link{
  width:38px!important;
  min-width:38px!important;
  padding:0!important;
  justify-content:center!important;
}
.fv71-search-icon{
  width:17px!important;
  height:17px!important;
}
.fv71-search-label{
  display:none!important;
}

/* Tablet / Android / iPhone */
@media(max-width:1000px){
  .fv-global-header .fv-global-nav{
    width:calc(100% - 16px)!important;
    min-height:62px!important;
  }

  .fv-global-header .fv-global-brand img{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    max-width:38px!important;
  }

  .fv-global-header .fv-global-brand strong{
    font-size:16px!important;
  }

  .fv-global-header .fv-global-brand > span > span{
    display:none!important;
  }

  /* Hambúrguer só no mobile/tablet */
  .fv-menu-button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    margin-left:auto!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:10px!important;
    background:rgba(255,255,255,.06)!important;
    color:#fff!important;
    font-size:0!important;
    line-height:1!important;
    position:relative!important;
  }

  .fv-menu-button::before,
  .fv-menu-button::after{
    content:""!important;
    position:absolute!important;
    left:11px!important;
    width:20px!important;
    height:2px!important;
    border-radius:2px!important;
    background:#fff!important;
    transition:transform .18s ease,top .18s ease!important;
  }
  .fv-menu-button::before{top:15px!important}
  .fv-menu-button::after{top:25px!important}
  .fv-menu-button{
    box-shadow:inset 0 0 0 0 transparent!important;
  }
  .fv-menu-button span{display:none!important}

  .fv-menu-button[aria-expanded="true"]::before{
    top:20px!important;
    transform:rotate(45deg)!important;
  }
  .fv-menu-button[aria-expanded="true"]::after{
    top:20px!important;
    transform:rotate(-45deg)!important;
  }

  .fv-global-menu{
    position:fixed!important;
    top:62px!important;
    right:0!important;
    width:min(360px,92vw)!important;
    height:calc(100vh - 62px)!important;
    height:calc(100dvh - 62px)!important;
    display:block!important;
    padding:12px 10px calc(18px + env(safe-area-inset-bottom))!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    background:#07111f!important;
    border-left:1px solid rgba(255,255,255,.08)!important;
    box-shadow:-20px 0 40px rgba(0,0,0,.26)!important;
    transform:translateX(105%)!important;
    transition:transform .2s ease!important;
  }
  .fv-global-menu.is-open{
    transform:translateX(0)!important;
  }

  .fv-global-menu>a,
  .fv-global-menu>details>summary{
    width:100%!important;
    min-height:46px!important;
    justify-content:flex-start!important;
    margin:2px 0!important;
    padding:10px 11px!important;
    border-radius:9px!important;
    font-size:13.5px!important;
  }

  .fv-global-drop{
    width:100%!important;
  }

  .fv-global-panel{
    position:static!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    margin:4px 0 7px!important;
    padding:7px!important;
    box-shadow:none!important;
    border-radius:11px!important;
  }

  .fv-global-panel section{
    padding:8px!important;
  }

  .fv-global-panel a{
    min-height:40px!important;
    font-size:12.5px!important;
  }

  .fv-global-panel .fv-mapa-logo{
    width:16px!important;
    height:16px!important;
    min-width:16px!important;
    max-width:16px!important;
  }

  .fv71-search-link{
    width:100%!important;
    justify-content:flex-start!important;
    gap:8px!important;
    padding:10px 11px!important;
  }
  .fv71-search-label{
    display:inline!important;
  }

  .fv-menu-backdrop{
    display:none!important;
    position:fixed!important;
    inset:62px 0 0 0!important;
    z-index:9998!important;
    background:rgba(2,8,16,.55)!important;
  }
  .fv-menu-backdrop.is-open{
    display:block!important;
  }
}

/* iPhone pequeno / Android estreito */
@media(max-width:430px){
  .fv-global-header .fv-global-nav{
    width:calc(100% - 12px)!important;
  }
  .fv-global-header .fv-global-brand{
    gap:8px!important;
  }
  .fv-global-header .fv-global-brand img{
    width:35px!important;
    height:35px!important;
    min-width:35px!important;
    max-width:35px!important;
  }
  .fv-global-header .fv-global-brand strong{
    font-size:15px!important;
  }
  .fv-global-menu{
    width:94vw!important;
  }
}

/* Fallback Safari antigo */
@supports not (height:100dvh){
  @media(max-width:1000px){
    .fv-global-menu{height:calc(100vh - 62px)!important}
  }
}

/* V92: mantém exatamente o menu da V90.
   Apenas dá mais espaço vertical entre as linhas das competições no mobile. */
@media(max-width:1000px){
  #fvGlobalMenu .fv-global-panel a{
    margin:3px 0!important;
    padding-top:9px!important;
    padding-bottom:9px!important;
    line-height:1.35!important;
  }
}
@media(max-width:430px){
  #fvGlobalMenu .fv-global-panel a{
    margin:2px 0!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
  }
}

/* V209 — AO VIVO, Competições e Clubes como prioridades da homepage */
.fv209-live-menu{display:inline-flex!important;align-items:center!important;gap:8px!important;background:rgba(227,38,54,.12)!important;border-color:rgba(255,80,96,.28)!important;color:#fff!important;font-weight:950!important}
.fv209-live-menu>span{width:8px!important;height:8px!important;display:block!important;border-radius:50%!important;background:#ef3340!important;box-shadow:0 0 0 5px rgba(239,51,64,.15)!important;animation:fv209Pulse 1.35s infinite!important}
.fv209-live-menu:hover{background:#e32636!important;color:#fff!important}
#resultados-direto{position:relative!important;background:linear-gradient(180deg,#071522 0,#0b2131 100%)!important;padding-top:28px!important;padding-bottom:34px!important}
#resultados-direto .z-live-shell{border:1px solid rgba(255,255,255,.13)!important;box-shadow:0 24px 60px rgba(3,13,24,.28)!important}
#resultados-direto #live-title{font-size:clamp(34px,4vw,54px)!important;letter-spacing:-.045em!important}
#resultados-direto .fv84-kicker span{color:#ffb7bd!important}
#resultados-direto .fv84-kicker i{background:#ef3340!important;box-shadow:0 0 0 6px rgba(239,51,64,.14)!important;animation:fv209Pulse 1.35s infinite!important}
#resultados-direto .z-live-tab[data-live-tab="live"]{font-weight:950!important}
#resultados-direto .z-live-tab[data-live-tab="live"].is-active{background:#e32636!important;border-color:#e32636!important;color:#fff!important}
.fv209-competitions{padding-top:58px!important;padding-bottom:54px!important;background:#f5f8f6!important}
.fv209-section-head{margin-bottom:22px!important}
.fv209-competition-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
.fv209-competition-grid>a{min-height:190px!important;padding:18px!important;background:#fff!important;border:1px solid #dfe8e2!important;box-shadow:0 10px 26px rgba(13,35,23,.055)!important}
.fv209-competition-grid>a:hover{border-color:#8edb00!important;box-shadow:0 17px 34px rgba(13,35,23,.10)!important}
.fv209-comp-logo{height:62px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important}
.fv209-comp-logo img{max-width:58px!important;max-height:58px!important;object-fit:contain!important}
#equipas-viseu{padding-top:58px!important;padding-bottom:58px!important;background:#fff!important}
#equipas-viseu .z-team-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
#jogos{border-top:1px solid #e8eeea!important}
@keyframes fv209Pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.82);opacity:.68}}
@media(max-width:1050px){.fv209-competition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}#equipas-viseu .z-team-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:640px){
  #resultados-direto{padding-top:18px!important;padding-bottom:24px!important}
  .fv209-competitions,#equipas-viseu{padding-top:38px!important;padding-bottom:38px!important}
  .fv209-competition-grid{grid-template-columns:1fr 1fr!important;gap:9px!important}
  .fv209-competition-grid>a{min-height:170px!important;padding:14px!important;border-radius:16px!important}
  .fv209-comp-logo{height:50px!important}.fv209-comp-logo img{max-width:48px!important;max-height:48px!important}
  #equipas-viseu .z-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:380px){.fv209-competition-grid{grid-template-columns:1fr!important}}

.fv257-viseu-only-note{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:14px 0 8px;padding:12px 14px;border:1px solid #dce8d3;background:#f5faef;border-radius:14px}.fv257-viseu-only-note strong{font-size:13px;color:#274f0d}.fv257-viseu-only-note span{font-size:12px;color:#66756a}.fv257-results-viseu-only{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:8px;font-size:12px;color:#66756a}.fv257-results-viseu-only span{font-weight:800;color:#35541d}.fv257-results-viseu-only strong{padding:5px 9px;border-radius:999px;background:#eef6e7;color:#315b12;font-size:11px}.fv257-upcoming-game{transition:opacity .2s ease,transform .2s ease}.fv257-upcoming-game.fv257-removing{opacity:0;transform:translateY(-4px)}
@media(max-width:640px){.fv257-viseu-only-note{align-items:flex-start;flex-direction:column}.fv257-results-viseu-only{align-items:flex-start;flex-direction:column}}

:root{--fv-green:#79c900;--fv-green-dark:#4f8f00;--fv-ink:#07111f;--fv-navy:#0c1726;--fv-white:#fff;--fv-line:rgba(255,255,255,.12)}
.fv-global-header,.fv-global-header *,.fv-global-footer,.fv-global-footer *{box-sizing:border-box;font-family:Arial,Helvetica,sans-serif}
.fv-global-header{display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;position:sticky;top:0;z-index:9999;background:#050e19;color:#fff;border-bottom:1px solid var(--fv-line);box-shadow:0 10px 34px rgba(0,0,0,.18);backdrop-filter:none}
.fv-global-header .fv-global-nav{width:min(1500px,calc(100% - 32px));min-height:78px;margin:auto;display:flex;align-items:center;gap:22px}
.fv-global-header .fv-global-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;min-width:max-content}.fv-global-header .fv-global-brand img{width:54px;height:54px;object-fit:contain}.fv-global-header .fv-global-brand strong{display:block;font-size:21px;line-height:1}.fv-global-header .fv-global-brand strong em{font-style:normal;color:var(--fv-green)}.fv-global-header .fv-global-brand span{display:block;margin-top:6px;color:#aab7c7;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.fv-global-menu{margin-left:auto;display:flex;align-items:center;gap:4px}.fv-global-menu>a,.fv-global-menu summary{display:flex;align-items:center;min-height:46px;padding:0 13px;border-radius:12px;color:#dbe5ef;text-decoration:none;font-size:14px;font-weight:850;cursor:pointer;list-style:none}.fv-global-menu summary::-webkit-details-marker{display:none}.fv-global-menu>a:hover,.fv-global-menu summary:hover,.fv-global-menu .is-active{background:rgba(121,201,0,.14);color:#fff}.fv-global-menu .fv-viseu-link{background:var(--fv-green);color:#07111f!important}.fv-global-menu .fv-viseu-link:hover{background:#8de21a}
.fv-global-drop{position:relative}.fv-global-drop[open]>summary{background:rgba(121,201,0,.14);color:#fff}.fv-global-panel{position:absolute;right:0;top:54px;width:min(680px,90vw);display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:16px;border-radius:20px;background:#fff;color:#111827;box-shadow:0 25px 80px rgba(0,0,0,.3);border:1px solid #e5e7eb}.fv-global-panel section{padding:12px;border-radius:14px;background:#f6f8fb}.fv-global-panel strong{display:block;margin-bottom:8px;color:#4f8f00;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.fv-global-panel a{display:block;padding:8px 6px;border-radius:8px;color:#172033;text-decoration:none;font-weight:750;font-size:13px}.fv-global-panel a:hover{background:#e9f8d7;color:#315d00}
.fv-menu-button{display:none;margin-left:auto;width:46px;height:46px;border:1px solid rgba(255,255,255,.18);border-radius:13px;background:rgba(255,255,255,.07);color:#fff;font-size:24px;cursor:pointer}.fv-menu-backdrop{display:none}
.fv-global-footer{margin-top:54px;background:#06101c;color:#d8e2ec}.fv-footer-cta-global{background:linear-gradient(120deg,#4d8d00,#7bc900);color:#fff}.fv-footer-cta-inner{width:min(1500px,calc(100% - 32px));margin:auto;padding:26px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.fv-footer-cta-inner h2{margin:0 0 5px;font-size:24px}.fv-footer-cta-inner p{margin:0;color:rgba(255,255,255,.86)}.fv-footer-cta-inner a{padding:12px 17px;border-radius:12px;background:#07111f;color:#fff;text-decoration:none;font-weight:900}
.fv-global-footer-inner{width:min(1500px,calc(100% - 32px));margin:auto;padding:46px 0 28px;display:grid;grid-template-columns:1.45fr repeat(3,1fr);gap:34px}.fv-footer-brand-global{display:flex;gap:14px;align-items:flex-start}.fv-footer-brand-global img{width:65px;height:65px;object-fit:contain}.fv-footer-brand-global strong{font-size:24px;color:#fff}.fv-footer-brand-global strong em{font-style:normal;color:var(--fv-green)}.fv-footer-brand-global p{max-width:390px;margin:10px 0;color:#98a8b9;line-height:1.6}.fv-footer-column b{display:block;margin-bottom:12px;color:#fff;font-size:15px}.fv-footer-column a{display:block;padding:5px 0;color:#9fb0c0;text-decoration:none;font-size:14px}.fv-footer-column a:hover{color:var(--fv-green)}.fv-footer-bottom-global{border-top:1px solid rgba(255,255,255,.09);padding:18px 16px;text-align:center;color:#7f91a4;font-size:13px}
@media(max-width:1000px){.fv-menu-button{display:grid;place-items:center}.fv-global-menu{position:fixed;z-index:10001;top:0;right:-100%;width:min(390px,88vw);height:100dvh;margin:0;padding:86px 18px 24px;display:block;background:#07111f;overflow:auto;box-shadow:-18px 0 70px rgba(0,0,0,.45);transition:right .25s ease}.fv-global-menu.is-open{right:0}.fv-global-menu>a,.fv-global-menu summary{width:100%;min-height:50px;margin:3px 0;padding:0 15px}.fv-global-drop{width:100%}.fv-global-panel{position:static;width:100%;margin:4px 0 12px;grid-template-columns:1fr;padding:8px;background:#0e1d2e;border-color:rgba(255,255,255,.1);box-shadow:none}.fv-global-panel section{background:rgba(255,255,255,.05)}.fv-global-panel a{color:#dbe5ef}.fv-menu-backdrop{position:fixed;z-index:10000;inset:0;background:rgba(0,0,0,.58)}.fv-menu-backdrop.is-open{display:block}.fv-global-footer-inner{grid-template-columns:1fr 1fr}.fv-footer-cta-inner{align-items:flex-start}}
@media(max-width:620px){.fv-global-header .fv-global-nav{width:calc(100% - 22px);min-height:68px}.fv-global-header .fv-global-brand img{width:45px;height:45px}.fv-global-header .fv-global-brand strong{font-size:18px}.fv-global-header .fv-global-brand span{font-size:9px}.fv-global-footer-inner{grid-template-columns:1fr;padding-top:34px}.fv-footer-cta-inner{display:block}.fv-footer-cta-inner a{display:inline-flex;margin-top:14px}}

/* Cabeçalho final sólido e consistente */
.site-header,
.fv-global-header{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:sticky!important;
  top:0!important;
  z-index:99999!important;
  width:100%!important;
  background:#071522!important;
  background-image:none!important;
  border:0!important;
  border-bottom:1px solid #223447!important;
  box-shadow:0 8px 24px rgba(0,0,0,.24)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.site-header .nav,
.fv-global-header .fv-global-nav{
  width:min(94%,1360px)!important;
  min-height:82px!important;
  margin:0 auto!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
  background:transparent!important;
}
.site-header .logo,
.fv-global-header .fv-global-brand img{
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
  object-fit:contain!important;
  padding:0!important;
  border-radius:10px!important;
  background:transparent!important;
  box-shadow:none!important;
}
.site-header .brand,
.fv-global-header .fv-global-brand{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin-right:auto!important;
  color:#fff!important;
  text-decoration:none!important;
}
.site-header .brand b,
.fv-global-header .fv-global-brand strong{
  color:#fff!important;
  font-size:22px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
}
.site-header .brand b span,
.fv-global-header .fv-global-brand strong em{color:#78c800!important}
.site-header .brand>span,
.fv-global-header .fv-global-brand>span>span{
  color:#aebdca!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
.fv-main-menu,
.fv-global-menu{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  margin-left:auto!important;
  background:transparent!important;
}
.fv-main-menu>a,
.fv-main-menu>details>summary,
.fv-global-menu>a,
.fv-global-menu>details>summary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  padding:0 13px!important;
  margin:0!important;
  border:1px solid transparent!important;
  border-radius:10px!important;
  background:transparent!important;
  color:#dce6ef!important;
  font-size:14px!important;
  font-weight:850!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  opacity:1!important;
}
.fv-main-menu>a:hover,
.fv-main-menu>details>summary:hover,
.fv-global-menu>a:hover,
.fv-global-menu>details>summary:hover,
.fv-main-menu .is-active,
.fv-global-menu .is-active{
  background:#14283a!important;
  border-color:#27445c!important;
  color:#fff!important;
}
.fv-main-menu .fv-menu-viseu,
.fv-global-menu .fv-viseu-link{
  background:#78c800!important;
  border-color:#78c800!important;
  color:#071522!important;
  box-shadow:none!important;
}
.fv-main-menu .fv-menu-viseu:hover,
.fv-global-menu .fv-viseu-link:hover{background:#8ddd13!important;color:#071522!important}
.menu-toggle,
.fv-menu-button{
  color:#fff!important;
  background:#14283a!important;
  border:1px solid #2a455c!important;
  box-shadow:none!important;
}
.menu-dropdown-panel,
.fv-global-panel{
  background:#fff!important;
  border:1px solid #dce3ea!important;
  box-shadow:0 24px 70px rgba(0,0,0,.28)!important;
}
@media(max-width:1120px){
  .site-header .nav,
  .fv-global-header .fv-global-nav{width:calc(100% - 28px)!important;min-height:72px!important}
  .site-header .logo,
  .fv-global-header .fv-global-brand img{width:46px!important;height:46px!important;min-width:46px!important}
  .site-header .brand b,
  .fv-global-header .fv-global-brand strong{font-size:19px!important}
  .fv-main-menu,
  .fv-global-menu{
    background:#071522!important;
    border:1px solid #263b4f!important;
    color:#fff!important;
  }
}
@media(max-width:560px){
  .site-header .nav,
  .fv-global-header .fv-global-nav{width:calc(100% - 20px)!important;min-height:68px!important}
  .site-header .logo,
  .fv-global-header .fv-global-brand img{width:42px!important;height:42px!important;min-width:42px!important}
  .site-header .brand b,
  .fv-global-header .fv-global-brand strong{font-size:17px!important}
  .site-header .brand>span,
  .fv-global-header .fv-global-brand>span>span{font-size:8px!important;letter-spacing:.06em!important}
}

.z-live-section{padding:30px 0;background:#f4f7f5;border-bottom:1px solid #e3ebe5}
.z-live-shell{background:#071710;color:#fff;border-radius:24px;padding:24px;box-shadow:0 22px 50px rgba(5,23,16,.16)}
.z-live-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}.z-live-head span{display:block;color:#77cf45;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.z-live-head h2{margin:5px 0 0;font-size:clamp(25px,3vw,36px)}
.z-live-tabs{display:flex;gap:8px;flex-wrap:wrap}.z-live-tab{border:1px solid rgba(255,255,255,.16);background:#10281d;color:#dce9df;border-radius:999px;padding:10px 15px;font-weight:800;cursor:pointer}.z-live-tab.is-active{background:#67b936;color:#071710;border-color:#67b936}.z-live-tab:focus-visible{outline:3px solid #fff;outline-offset:2px}
.z-live-panel{display:none}.z-live-panel.is-active{display:block}.z-live-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.z-live-card{background:#fff;color:#101b15;border-radius:18px;padding:18px;border:1px solid #e5ece7;box-shadow:0 10px 25px rgba(0,0,0,.12)}
.z-live-status{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;font-size:12px;font-weight:900;text-transform:uppercase}.z-live-status b{display:inline-flex;align-items:center;gap:7px;color:#d92d20}.z-live-status b::before{content:"";width:9px;height:9px;border-radius:50%;background:#ef2b2d;box-shadow:0 0 0 5px rgba(239,43,45,.14);animation:zPulse 1.5s infinite}.z-live-status em{font-style:normal;color:#577064}.z-live-status.is-finished b{color:#41584b}.z-live-status.is-finished b::before{background:#75857c;box-shadow:none;animation:none}.z-live-status.is-scheduled b{color:#19724a}.z-live-status.is-scheduled b::before{background:#67b936;box-shadow:none;animation:none}
@keyframes zPulse{50%{opacity:.38}}
.z-live-team{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid #edf1ee}.z-live-team:last-of-type{border-bottom:0}.z-live-team-info{display:flex;align-items:center;gap:10px;min-width:0}.z-live-team-info img{width:38px;height:38px;object-fit:contain;border-radius:9px;background:#f5f7f5;padding:3px}.z-live-team-info strong{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.z-live-score{font-size:28px;font-weight:950;color:#071710;line-height:1}.z-live-meta{margin-top:13px;color:#607369;font-size:12px;line-height:1.5}.z-live-note{margin-top:8px;padding:8px 10px;border-radius:10px;background:#f3f7f4;color:#385347;font-size:12px;font-weight:700}.z-live-empty{padding:26px;text-align:center;border:1px dashed rgba(255,255,255,.2);border-radius:16px;color:#cfddd3}.z-live-empty strong{display:block;color:#fff;font-size:18px;margin-bottom:6px}.z-live-empty a{display:inline-block;margin-top:12px;color:#80d34c;font-weight:800;text-decoration:none}
@media(max-width:950px){.z-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.z-live-head{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.z-live-section{padding:20px 0}.z-live-shell{padding:18px;border-radius:18px}.z-live-grid{grid-template-columns:1fr}.z-live-tabs{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.z-live-tab{padding:9px 7px;font-size:12px}.z-live-card{padding:15px}}

/* FV126 — menu único e corrigido para Android, iPhone e tablet */
@media(max-width:1050px){
  html,body{max-width:100%!important;overflow-x:hidden!important}
  body.fv-menu-lock{overflow:hidden!important}
  .fv-global-header{position:sticky!important;top:0!important;z-index:30000!important;background:linear-gradient(180deg,#081522 0%,#071421 100%)!important;border-bottom:1px solid rgba(255,255,255,.09)!important;box-shadow:0 7px 24px rgba(0,0,0,.22)!important}
  .fv-global-header .fv-global-nav{width:calc(100% - 16px)!important;min-height:68px!important;margin:0 auto!important;display:flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:10px!important}
  .fv-global-header .fv-global-brand{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important;flex:1 1 auto!important;color:#fff!important}
  .fv-global-header .fv-global-brand img{display:block!important;width:42px!important;height:42px!important;min-width:42px!important;max-width:42px!important;flex:0 0 42px!important;object-fit:contain!important;border-radius:11px!important;background:#fff!important;padding:2px!important}
  .fv-global-header .fv-global-brand strong{display:block!important;color:#fff!important;font-size:17px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .fv-global-header .fv-global-brand strong em{color:#79c900!important;font-style:normal!important}
  .fv-global-header .fv-global-brand>span>span{display:none!important}

  .fv-menu-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;position:relative!important;z-index:30004!important;width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;flex:0 0 46px!important;margin-left:auto!important;padding:0!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:13px!important;background:#14283a!important;color:#fff!important;font-size:0!important;line-height:1!important;box-shadow:0 7px 18px rgba(0,0,0,.22)!important}
  .fv-menu-button:before,.fv-menu-button:after{content:""!important;position:absolute!important;left:12px!important;width:22px!important;height:2px!important;border-radius:3px!important;background:#fff!important;transition:top .18s ease,transform .18s ease!important}
  .fv-menu-button:before{top:16px!important;box-shadow:0 7px 0 #fff!important}
  .fv-menu-button:after{top:30px!important}
  .fv-menu-button[aria-expanded="true"]:before{top:22px!important;transform:rotate(45deg)!important;box-shadow:none!important}
  .fv-menu-button[aria-expanded="true"]:after{top:22px!important;transform:rotate(-45deg)!important}

  #fvGlobalMenu,#fvGlobalMenu *{box-sizing:border-box!important}
  #fvGlobalMenu.fv-global-menu{position:fixed!important;top:68px!important;right:0!important;bottom:auto!important;left:auto!important;z-index:30002!important;width:min(92vw,390px)!important;max-width:390px!important;height:calc(100vh - 68px)!important;height:calc(100dvh - 68px)!important;margin:0!important;padding:14px 12px calc(24px + env(safe-area-inset-bottom))!important;display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;justify-content:flex-start!important;gap:6px!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;background:radial-gradient(circle at top right,rgba(121,201,0,.12),transparent 28%),linear-gradient(180deg,#081522 0%,#06101b 100%)!important;border-left:1px solid rgba(255,255,255,.08)!important;box-shadow:-25px 0 58px rgba(0,0,0,.48)!important;transform:translateX(105%)!important;transition:transform .22s ease!important}
  #fvGlobalMenu.fv-global-menu.is-open{right:0!important;transform:translateX(0)!important}
  #fvGlobalMenu.fv-global-menu:before{content:"FUTEBOL VISEU"!important;display:block!important;margin:1px 5px 6px!important;color:#7e91a2!important;font-size:10px!important;font-weight:900!important;letter-spacing:.14em!important;text-transform:uppercase!important}

  #fvGlobalMenu>*,#fvGlobalMenu>details,#fvGlobalMenu>.fv-global-drop{float:none!important;clear:both!important;width:100%!important;max-width:100%!important;min-width:0!important;flex:0 0 auto!important;margin:0!important}
  #fvGlobalMenu>a,#fvGlobalMenu>details>summary{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:52px!important;margin:0!important;padding:11px 13px!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:13px!important;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025))!important;color:#eaf2f8!important;font-size:14px!important;font-weight:850!important;line-height:1.25!important;text-align:left!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;text-decoration:none!important;list-style:none!important;box-shadow:none!important}
  #fvGlobalMenu>details>summary::-webkit-details-marker{display:none!important}
  #fvGlobalMenu>a:before,#fvGlobalMenu>details>summary:before{display:grid!important;place-items:center!important;width:28px!important;height:28px!important;min-width:28px!important;flex:0 0 28px!important;margin:0!important;font-size:17px!important;line-height:1!important;text-align:center!important;background:none!important;position:static!important;transform:none!important}
  #fvGlobalMenu>a[href*="index.php"]:before{content:"🏠"!important}
  #fvGlobalMenu>a[href*="diretos.php"]:before{content:"⚽"!important}
  #fvGlobalMenu>a[href*="clubes.php"]:before{content:"🛡️"!important}
  #fvGlobalMenu>a[href*="noticias.php"]:before{content:"📰"!important}
  #fvGlobalMenu>a[href*="contactos.php"]:before{content:"✉️"!important}
  #fvGlobalMenu>a[href*="pesquisa.php"]:before{content:"🔎"!important}
  #fvGlobalMenu>details>summary:before{content:"🏆"!important}
  #fvGlobalMenu>a:after,#fvGlobalMenu>details>summary:after{content:"›"!important;margin-left:auto!important;padding-left:8px!important;color:#73879a!important;font-size:20px!important;font-weight:900!important;line-height:1!important}
  #fvGlobalMenu>details[open]>summary:after{content:"⌄"!important}
  #fvGlobalMenu>a:hover,#fvGlobalMenu>a.is-active,#fvGlobalMenu>details[open]>summary{background:linear-gradient(135deg,#83d70f,#69b500)!important;color:#07131f!important;border-color:#83d70f!important}
  #fvGlobalMenu>a:hover:after,#fvGlobalMenu>a.is-active:after,#fvGlobalMenu>details[open]>summary:after{color:#07131f!important}

  #fvGlobalMenu .fv-global-drop{position:static!important;display:block!important}
  #fvGlobalMenu .fv-global-panel{position:static!important;inset:auto!important;transform:none!important;display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:7px 0 2px!important;padding:9px!important;background:#0b1a29!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:14px!important;color:#e8f0f6!important;box-shadow:none!important;overflow:hidden!important}
  #fvGlobalMenu .fv-global-panel section{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0 0 9px!important;padding:9px!important;background:#0d1e2f!important;border:1px solid rgba(255,255,255,.05)!important;border-radius:11px!important;box-shadow:none!important}
  #fvGlobalMenu .fv-global-panel section:last-child{margin-bottom:0!important}
  #fvGlobalMenu .fv-global-panel strong{display:block!important;width:100%!important;margin:0 0 7px!important;color:#91df2d!important;font-size:10px!important;font-weight:900!important;letter-spacing:.12em!important;text-transform:uppercase!important}
  #fvGlobalMenu .fv-global-panel a,#fvGlobalMenu .fv-global-panel a:link,#fvGlobalMenu .fv-global-panel a:visited{position:relative!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;grid-template-columns:none!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:50px!important;margin:2px 0!important;padding:10px 12px 10px 50px!important;border:0!important;border-radius:10px!important;background:transparent!important;color:#e8f0f6!important;font-size:13px!important;font-weight:800!important;line-height:1.35!important;text-align:left!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important;text-decoration:none!important;box-shadow:none!important}
  #fvGlobalMenu .fv-global-panel a:before{content:""!important;position:absolute!important;left:10px!important;top:50%!important;transform:translateY(-50%)!important;display:block!important;width:30px!important;height:30px!important;min-width:30px!important;margin:0!important;background-repeat:no-repeat!important;background-position:center!important;background-size:contain!important}
  #fvGlobalMenu .fv-global-panel a[href*="liga-portugal-betclic.php"]:before{background-image:url("/assets/menu-logos/liga-portugal-betclic.png")!important}
  #fvGlobalMenu .fv-global-panel a[href*="liga-portugal-2-meu-super.php"]:before{background-image:url("/assets/menu-logos/liga-portugal-2.png")!important}
  #fvGlobalMenu .fv-global-panel a[href*="campeonato-portugal"]:before{background-image:url("/assets/menu-logos/campeonato-portugal.png")!important}
  #fvGlobalMenu .fv-global-panel a[href*="divisao-honra.php"]:before,#fvGlobalMenu .fv-global-panel a[href*="norte.php"]:before,#fvGlobalMenu .fv-global-panel a[href*="sul.php"]:before,#fvGlobalMenu .fv-global-panel a[href*="segunda-divisao-serie-a.php"]:before,#fvGlobalMenu .fv-global-panel a[href*="segunda-divisao-serie-b.php"]:before{background-image:url("/assets/menu-logos/af-viseu.png")!important}
  #fvGlobalMenu .fv-global-panel a:hover,#fvGlobalMenu .fv-global-panel a.is-active{background:rgba(121,201,0,.14)!important;color:#fff!important;transform:none!important}

  .fv-menu-backdrop{display:none!important;position:fixed!important;inset:68px 0 0!important;z-index:29999!important;background:rgba(2,7,13,.66)!important;backdrop-filter:blur(3px)!important;-webkit-backdrop-filter:blur(3px)!important}
  .fv-menu-backdrop.is-open{display:block!important}
}
@media(max-width:430px){
  .fv-global-header .fv-global-nav{width:calc(100% - 12px)!important}
  .fv-global-header .fv-global-brand img{width:39px!important;height:39px!important;min-width:39px!important;max-width:39px!important;flex-basis:39px!important}
  .fv-global-header .fv-global-brand strong{font-size:15px!important}
  .fv-menu-button{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;flex-basis:44px!important}
  #fvGlobalMenu.fv-global-menu{width:94vw!important;padding-left:10px!important;padding-right:10px!important}
  #fvGlobalMenu .fv-global-panel{padding:7px!important}
  #fvGlobalMenu .fv-global-panel section{padding:8px!important}
  #fvGlobalMenu .fv-global-panel a{font-size:12.5px!important;padding-right:8px!important}
}
@supports not (height:100dvh){
  @media(max-width:1050px){#fvGlobalMenu.fv-global-menu{height:calc(100vh - 68px)!important}}
}

#resultados-direto .fv114-live-updated{
  display:inline-flex!important;align-items:center!important;gap:6px!important;
  margin-top:8px!important;color:#d7e1e8!important;font-size:10.5px!important;font-weight:800!important;
}
#resultados-direto .fv114-live-updated:before{
  content:"";width:6px;height:6px;border-radius:50%;background:#79c900;box-shadow:0 0 0 3px rgba(121,201,0,.15);
}
#resultados-direto .z-live-card{
  display:block!important;color:#101b15!important;text-decoration:none!important;cursor:pointer!important;
}
#resultados-direto .z-live-card:focus-visible{outline:3px solid #79c900!important;outline-offset:3px!important}
#resultados-direto .z-live-card.is-finished-card{
  border-color:#bbdfc4!important;background:linear-gradient(180deg,#fff 0%,#f6fcf7 100%)!important;
}
#resultados-direto .z-live-card.is-finished-card:before{background:#269548!important}
#resultados-direto .z-live-status.is-finished b{
  padding:5px 9px!important;border-radius:999px!important;background:#16843a!important;color:#fff!important;line-height:1!important;
}
#resultados-direto .z-live-status.is-finished b:before{display:none!important}
#resultados-direto .z-live-card.is-next-card:before{background:#79c900!important}
#resultados-direto .fv114-card-action{
  display:block!important;margin-top:9px!important;padding-top:8px!important;border-top:1px solid #edf0f2!important;
  color:#4f8f00!important;font-size:10.5px!important;font-weight:900!important;text-align:right!important;
}
#resultados-direto .fv114-next-block{
  padding:12px!important;border:1px solid #dce7d2!important;border-radius:15px!important;
  background:linear-gradient(135deg,#fbfff7,#f2f8ed)!important;
}
#resultados-direto .fv114-next-head{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin-bottom:10px!important;
}
#resultados-direto .fv114-next-head span{
  display:block!important;color:#4f8f00!important;font-size:10px!important;font-weight:950!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;
}
#resultados-direto .fv114-next-head strong{display:block!important;margin-top:3px!important;color:#253142!important;font-size:14px!important}
#resultados-direto .fv114-next-head>b{
  flex:0 0 auto!important;padding:8px 11px!important;border-radius:10px!important;
  background:#07111f!important;color:#fff!important;font-size:11px!important;
}
#resultados-direto .fv114-next-grid{grid-template-columns:minmax(0,520px)!important}
@media(max-width:560px){
  #resultados-direto .fv114-next-block{padding:8px!important}
  #resultados-direto .fv114-next-head{align-items:flex-start!important;flex-direction:column!important;gap:8px!important}
  #resultados-direto .fv114-next-head>b{width:100%!important;text-align:center!important}
  #resultados-direto .fv114-card-action{text-align:left!important}
}

/* V211 — AO VIVO mais limpo e prioritário */
#resultados-direto{padding-top:22px!important;padding-bottom:22px!important}
#resultados-direto .z-live-shell{overflow:hidden!important}
#resultados-direto .z-live-head{align-items:flex-end!important;gap:24px!important}
#resultados-direto .fv211-live-title h2{display:flex!important;align-items:center!important;gap:11px!important;margin:7px 0 5px!important;font-size:clamp(30px,4vw,44px)!important;letter-spacing:-.035em!important;line-height:1!important}
#resultados-direto .fv211-title-dot{display:inline-block!important;width:13px!important;height:13px!important;border-radius:50%!important;background:#ef3340!important;box-shadow:0 0 0 7px rgba(239,51,64,.14)!important;animation:fv209Pulse 1.35s infinite!important}
#resultados-direto .fv211-live-title p{font-size:13px!important;line-height:1.45!important}
#resultados-direto .fv114-live-updated{margin-top:10px!important;opacity:.82!important}
#resultados-direto .fv211-live-tabs{display:grid!important;grid-template-columns:repeat(2,minmax(130px,1fr))!important;width:min(350px,100%)!important;gap:7px!important;padding:5px!important;border-radius:14px!important}
#resultados-direto .fv211-live-tabs .z-live-tab{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:43px!important;padding:9px 12px!important;border-radius:10px!important;white-space:nowrap!important;font-size:11px!important;letter-spacing:.01em!important}
#resultados-direto .fv211-tab-dot{width:8px!important;height:8px!important;flex:0 0 8px!important;border-radius:50%!important;background:#ef3340!important;box-shadow:0 0 0 3px rgba(239,51,64,.13)!important}
#resultados-direto .fv211-tab-check{font-size:13px!important;font-weight:950!important;line-height:1!important}
#resultados-direto .fv211-tab-count{display:grid!important;place-items:center!important;min-width:22px!important;height:22px!important;padding:0 6px!important;border-radius:999px!important;background:rgba(255,255,255,.14)!important;color:inherit!important;font-size:10px!important;font-weight:950!important}
#resultados-direto .z-live-tab[data-live-tab="live"].is-active .fv211-tab-dot{background:#fff!important;box-shadow:0 0 0 3px rgba(255,255,255,.18)!important}
#resultados-direto .z-live-tab[data-live-tab="finished"].is-active{background:#16843a!important;border-color:#16843a!important;color:#fff!important}
#resultados-direto .z-live-tab.is-active .fv211-tab-count{background:rgba(255,255,255,.2)!important}
@media(max-width:720px){
  #resultados-direto{padding-top:14px!important;padding-bottom:18px!important}
  #resultados-direto .z-live-head{align-items:flex-start!important;flex-direction:column!important;gap:16px!important}
  #resultados-direto .fv211-live-title h2{font-size:31px!important}
  #resultados-direto .fv211-live-tabs{width:100%!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #resultados-direto .fv211-live-tabs .z-live-tab{min-width:0!important;min-height:45px!important;padding:8px 6px!important;font-size:9.5px!important}
}
@media(max-width:390px){
  #resultados-direto .fv211-live-tabs .z-live-tab{gap:5px!important;font-size:9px!important}
  #resultados-direto .fv211-tab-count{min-width:20px!important;height:20px!important;padding:0 5px!important}
}
#resultados-direto .fv395-live-filter{display:flex!important;align-items:center!important;gap:10px!important;margin:0 0 14px!important;padding:10px 12px!important;border:1px solid #dfe7ed!important;border-radius:12px!important;background:#f7f9fa!important}
#resultados-direto .fv395-live-filter label{flex:0 0 auto!important;color:#52606d!important;font-size:10px!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.05em!important}
#resultados-direto .fv395-live-filter select{min-width:0!important;flex:1 1 auto!important;height:40px!important;padding:0 34px 0 11px!important;border:1px solid #cfd9e0!important;border-radius:9px!important;background:#fff!important;color:#142230!important;font-size:12px!important;font-weight:850!important;outline:none!important}
#resultados-direto .fv395-live-filter select:focus{border-color:#79c900!important;box-shadow:0 0 0 3px rgba(121,201,0,.12)!important}
#resultados-direto .fv211-live-tabs.is-single{grid-template-columns:1fr!important;max-width:250px!important}
#resultados-direto [data-live-competition][hidden]{display:none!important}
@media(max-width:720px){#resultados-direto .fv395-live-filter{align-items:stretch!important;flex-direction:column!important;gap:6px!important}#resultados-direto .fv395-live-filter select{width:100%!important;flex:none!important}#resultados-direto .fv211-live-tabs.is-single{max-width:none!important}}

.fv-games-results-title .z-section-heading{align-items:center!important}
  .fv323-push-button{width:0!important;height:0!important;flex:0 0 0!important;overflow:visible!important}
  @media(max-width:640px){
    .fv-games-results-title .z-section-heading{flex-direction:row!important;align-items:center!important;gap:10px!important}
    .fv-games-results-title .z-section-heading>div:first-child{min-width:0!important;flex:1 1 auto!important}
    .fv-games-results-title .z-section-heading h2{font-size:clamp(24px,7vw,31px)!important}
    .fv323-push-button{width:0!important;height:0!important;flex:0 0 0!important}
  }

.fv393-insights{padding:0 0 34px;background:#fff}.fv393-card{border:1px solid #e0e7eb;border-radius:17px;background:#fff;overflow:hidden;box-shadow:0 8px 24px rgba(7,21,34,.05)}
.fv393-top{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:16px 18px 12px}.fv393-kicker{display:block;color:#5f970f;font-size:9px;font-weight:950;letter-spacing:.09em;text-transform:uppercase}.fv393-top h2{margin:4px 0 0;color:#102033;font-size:22px;line-height:1.05;letter-spacing:-.025em}.fv393-select-wrap{display:flex;align-items:center;gap:8px}.fv393-select-wrap>span{color:#74818c;font-size:9px;font-weight:900;text-transform:uppercase}.fv393-select-wrap select{min-width:220px;height:38px;padding:0 34px 0 10px;border:1px solid #d7e0e6;border-radius:9px;background:#f8fafb;color:#172635;font:850 11px/1 Inter,Arial,sans-serif;outline:none}.fv393-select-wrap select:focus{border-color:#79c900;box-shadow:0 0 0 3px rgba(121,201,0,.10)}
.fv393-tabs{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #edf1f3;border-bottom:1px solid #e3e9ed;background:#f8fafb}.fv393-tabs button{height:42px;border:0;background:transparent;color:#697887;font:900 11px/1 Inter,Arial,sans-serif;cursor:pointer}.fv393-tabs button.is-active{background:#071522;color:#fff;box-shadow:inset 0 -3px 0 #79c900}
.fv393-competition-panel{padding:12px 14px 14px}.fv393-table-head,.fv393-standing-row{display:grid;grid-template-columns:30px minmax(0,1fr) 34px 42px 42px;align-items:center;gap:6px}.fv393-table-head{padding:0 8px 6px;color:#85919b;font-size:8px;font-weight:900;text-transform:uppercase;text-align:center}.fv393-table-head span:nth-child(2){text-align:left}.fv393-rows{display:grid;gap:5px}.fv393-standing-row{min-height:45px;padding:6px 8px;border:1px solid #edf1f3;border-radius:9px;background:#fbfcfd;color:#435260;font-size:10px;text-align:center}.fv393-standing-row>b:first-child{color:#7a8791}.fv393-standing-row>strong:last-child{color:#152636;font-size:12px}.fv393-standing-row.is-viseu{border-color:#edf1f3;background:#fbfcfd;box-shadow:none}.fv393-team{display:flex;align-items:center;gap:8px;min-width:0;text-align:left}.fv393-team img{width:27px;height:27px;object-fit:contain;flex:0 0 27px}.fv393-team strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1c2d3d;font-size:10.5px}

/* V398 — cores das zonas de classificação + legenda. */
.fv393-standing-row.fv-zone-champion{border-color:#86d39b;background:#f0fbf3;box-shadow:inset 4px 0 0 #16803b}.fv393-standing-row.fv-zone-promotion{border-color:#a7ddb1;background:#f4fcf5;box-shadow:inset 4px 0 0 #36a852}.fv393-standing-row.fv-zone-cup{border-color:#a8c7f3;background:#f3f7fe;box-shadow:inset 4px 0 0 #2563c9}.fv393-standing-row.fv-zone-playoff-up{border-color:#c9b4ef;background:#f7f4fd;box-shadow:inset 4px 0 0 #7a4bc4}.fv393-standing-row.fv-zone-maintenance{border-color:#efd79a;background:#fffbef;box-shadow:inset 4px 0 0 #d59a15}.fv393-standing-row.fv-zone-risk{border-color:#f1c17e;background:#fff8ec;box-shadow:inset 4px 0 0 #e38a15}.fv393-standing-row.fv-zone-risk-strong{border-color:#efaa78;background:#fff5ee;box-shadow:inset 4px 0 0 #e2601f}.fv393-standing-row.fv-zone-relegation{border-color:#efaaa8;background:#fff4f4;box-shadow:inset 4px 0 0 #c93632}.fv393-standing-row.fv-zone-ucl{border-color:#9fbef4;background:#f1f6ff;box-shadow:inset 4px 0 0 #1558c9}.fv393-standing-row.fv-zone-ucl-qual{border-color:#aed3f5;background:#f3f9ff;box-shadow:inset 4px 0 0 #3184c7}.fv393-standing-row.fv-zone-europa{border-color:#c4b3eb;background:#f7f4fd;box-shadow:inset 4px 0 0 #6f42b5}.fv393-standing-row.fv-zone-conference{border-color:#9fd9dc;background:#f1fbfb;box-shadow:inset 4px 0 0 #13898f}
.fv398-legend{margin-top:13px;padding:11px 12px;border:1px solid #e2e8ec;border-radius:11px;background:#f8fafb}.fv398-legend-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}.fv398-legend-head strong{color:#152636;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}.fv398-legend-head span{color:#6f7d88;font-size:9px;font-weight:850;text-align:right}.fv398-legend-items{display:grid;gap:6px}.fv398-legend-item{display:grid;grid-template-columns:11px minmax(0,1fr);align-items:start;gap:8px;color:#435260;font-size:9.5px;font-weight:750;line-height:1.35}.fv398-legend-item i{display:block;width:11px;height:11px;margin-top:1px;border-radius:3px}.fv398-legend-item i.fv-zone-champion{background:#16803b}.fv398-legend-item i.fv-zone-promotion{background:#36a852}.fv398-legend-item i.fv-zone-cup{background:#2563c9}.fv398-legend-item i.fv-zone-playoff-up{background:#7a4bc4}.fv398-legend-item i.fv-zone-maintenance{background:#d59a15}.fv398-legend-item i.fv-zone-risk{background:#e38a15}.fv398-legend-item i.fv-zone-risk-strong{background:#e2601f}.fv398-legend-item i.fv-zone-relegation{background:#c93632}.fv398-legend-item i.fv-zone-ucl{background:#1558c9}.fv398-legend-item i.fv-zone-ucl-qual{background:#3184c7}.fv398-legend-item i.fv-zone-europa{background:#6f42b5}.fv398-legend-item i.fv-zone-conference{background:#13898f}
.fv393-scorers{display:grid;gap:5px}.fv393-scorer-row{display:grid;grid-template-columns:30px 32px minmax(0,1fr) 52px;align-items:center;gap:7px;min-height:49px;padding:6px 8px;border:1px solid #edf1f3;border-radius:9px;background:#fbfcfd}.fv393-scorer-row>b{color:#7a8791;font-size:10px;text-align:center}.fv393-scorer-row>img{width:28px;height:28px;object-fit:contain}.fv393-scorer-row>span{min-width:0}.fv393-scorer-row>span strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1c2d3d;font-size:10.5px}.fv393-scorer-row>span small{display:block;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#84919b;font-size:8.5px}.fv393-scorer-row>em{font-style:normal;text-align:center;color:#071522;font-size:16px;font-weight:950}.fv393-scorer-row>em small{display:block;color:#81909b;font-size:7px;font-weight:850;text-transform:uppercase}.fv393-empty{padding:18px;border:1px dashed #d7e0e6;border-radius:10px;background:#fafcfd;color:#6f7d88;font-size:11px;font-weight:800;text-align:center}.fv393-more{display:flex;justify-content:flex-end;align-items:center;gap:5px;margin-top:9px;color:#4f8f00;font-size:9.5px;font-weight:950}.fv393-more span{font-size:13px}
@media(max-width:700px){.fv393-insights{padding-bottom:24px}.fv393-top{display:block;padding:14px 12px 10px}.fv393-top h2{font-size:19px}.fv393-select-wrap{display:block;margin-top:10px}.fv393-select-wrap>span{display:block;margin-bottom:5px}.fv393-select-wrap select{width:100%;min-width:0;height:42px;font-size:16px}.fv393-competition-panel{padding:10px}.fv393-table-head,.fv393-standing-row{grid-template-columns:24px minmax(0,1fr) 28px 34px 36px;gap:4px}.fv393-standing-row{padding:5px 6px}.fv393-team{gap:6px}.fv393-team img{width:24px;height:24px;flex-basis:24px}.fv393-team strong{font-size:9.8px}.fv393-scorer-row{grid-template-columns:24px 28px minmax(0,1fr) 46px;padding:6px}.fv393-scorer-row>img{width:25px;height:25px}}

@media(max-width:700px){.fv398-legend{padding:10px}.fv398-legend-head{display:block}.fv398-legend-head span{display:block;margin-top:3px;text-align:left}.fv398-legend-item{font-size:9px}}

/* FV341 — homepage mais rápida: menos caixas, mais informação útil */
#jogos{padding-top:2px!important}
#jogos .fv-games-results-title{margin-bottom:7px!important}
#jogos .fv-games-results-title .z-section-heading>div:first-child>span{display:none!important}
#jogos .z-main-grid{gap:14px!important}
#jogos .z-main-grid.fv384-no-results{grid-template-columns:1fr!important}
#jogos .z-block,#jogos .z-results-panel{padding:16px!important;border-radius:14px!important;box-shadow:none!important;border:1px solid #e2e8ec!important}
#jogos .z-block-heading,#jogos .z-results-head{margin-bottom:8px!important;padding-bottom:0!important}
#jogos .z-block-heading h2,#jogos .z-results-head h2{font-size:21px!important;margin:0!important}
#jogos .z-fixture-list,#jogos .z-recent-results{gap:6px!important}
#jogos .z-fixture-row,#jogos .z-recent-result{padding:9px 10px!important;border-radius:10px!important;background:#fbfcfd!important;box-shadow:none!important}
#jogos .z-fixture-meta{margin-bottom:6px!important}
#jogos .z-fixture-meta span,#jogos .z-recent-comp{font-size:8.5px!important;margin-bottom:5px!important}
#jogos .z-fixture-meta b{font-size:10px!important}
#jogos .z-fixture-teams{grid-template-columns:minmax(0,1fr) 50px minmax(0,1fr)!important;gap:5px!important}
#jogos .z-fixture-teams img{width:29px!important;height:29px!important}
#jogos .z-fixture-teams strong{font-size:11.5px!important}
#jogos .z-fixture-teams em{display:grid!important;place-items:center!important;min-height:29px!important;border-radius:8px!important;background:#071522!important;color:#fff!important;font-size:10px!important;letter-spacing:.03em!important}
#jogos .z-recent-teams{gap:5px!important}
#jogos .z-recent-teams img{width:25px!important;height:25px!important;flex-basis:25px!important}
#jogos .z-recent-teams strong{font-size:11px!important}
#jogos .z-recent-teams>b{min-width:64px!important;padding:6px 8px!important;border-radius:8px!important;font-size:17px!important;letter-spacing:.02em!important}
#jogos .z-recent-teams>b i{font-size:7px!important;color:#8fa1af!important}
#jogos .fv214-result-game-link{margin-top:6px!important;padding-top:5px!important;font-size:9px!important}
#jogos .z-empty{padding:10px 12px!important;min-height:0!important;border-radius:9px!important;font-size:11px!important}
.fv258-competition-filter-wrap{margin-bottom:11px!important}
.fv258-competition-filter-wrap select{min-height:40px!important;border-radius:9px!important;font-size:12px!important}

/* Competições: cards curtos e visuais */
#competicoes{padding-top:34px!important;padding-bottom:26px!important}
#competicoes .z-section-heading{margin-bottom:13px!important}
#competicoes .z-section-heading span,#competicoes .z-section-heading p{display:none!important}
#competicoes .z-section-heading h2{font-size:28px!important;margin:0!important}
.fv209-competition-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:8px!important}
.fv209-competition-grid>a{min-height:112px!important;padding:11px!important;border-radius:12px!important;align-items:flex-start!important;justify-content:center!important;box-shadow:none!important}
.fv209-competition-grid .fv209-comp-logo{width:42px!important;height:42px!important;min-height:42px!important;margin:0 0 7px!important}
.fv209-competition-grid .fv209-comp-logo img{max-width:40px!important;max-height:40px!important}
.fv209-competition-grid>a>span,.fv209-competition-grid>a>em{display:none!important}
.fv209-competition-grid>a>strong{font-size:11px!important;line-height:1.18!important;margin:0!important}

/* Clubes: apenas emblema + nome */
#equipas-viseu{margin-top:0!important;padding:28px 0 30px!important}
#equipas-viseu .z-section-heading{margin-bottom:13px!important}
#equipas-viseu .z-section-heading span,#equipas-viseu .z-section-heading p{display:none!important}
#equipas-viseu .z-section-heading h2{font-size:28px!important;margin:0!important}
#equipas-viseu .z-section-heading>a{font-size:11px!important}
#equipas-viseu .z-team-grid{grid-template-columns:repeat(6,minmax(0,128px))!important;gap:5px!important;justify-content:center!important}
#equipas-viseu .z-team-card{min-height:118px!important;padding:11px 8px!important;border-radius:12px!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}
#equipas-viseu .z-team-logo{height:58px!important;margin:0 0 7px!important}
#equipas-viseu .z-team-logo img{max-width:54px!important;max-height:54px!important}
#equipas-viseu .z-team-card strong{font-size:10.5px!important;line-height:1.15!important}
#equipas-viseu .z-team-card span,#equipas-viseu .z-team-card em{display:none!important}

@media(max-width:1050px){.fv209-competition-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}#equipas-viseu .z-team-grid{grid-template-columns:repeat(4,minmax(0,128px))!important;justify-content:center!important}}
@media(max-width:760px){
  main>.z-section{margin-bottom:10px!important}.z-section{padding-top:28px!important;padding-bottom:28px!important}
  #jogos .z-main-grid{gap:9px!important}
  #jogos .z-block,#jogos .z-results-panel{padding:12px!important;border-radius:12px!important}
  #jogos .z-fixture-row,#jogos .z-recent-result{padding:8px!important}
  #jogos .z-fixture-teams{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr)!important}
  #jogos .z-fixture-teams img{width:26px!important;height:26px!important}
  #jogos .z-fixture-teams strong{font-size:10.5px!important}
  #jogos .z-recent-teams>b{min-width:58px!important;font-size:16px!important}
  .fv209-competition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  .fv209-competition-grid>a{min-height:96px!important;padding:9px!important}
  .fv209-competition-grid .fv209-comp-logo{width:35px!important;height:35px!important;min-height:35px!important}
  .fv209-competition-grid .fv209-comp-logo img{max-width:34px!important;max-height:34px!important}
  #equipas-viseu .z-team-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important;justify-content:center!important}
  #equipas-viseu .z-team-card{min-height:101px!important;padding:8px 5px!important}
  #equipas-viseu .z-team-logo{height:49px!important}
  #equipas-viseu .z-team-logo img{max-width:46px!important;max-height:46px!important}
  #equipas-viseu .z-team-card strong{font-size:9.5px!important}
}
@media(max-width:420px){#equipas-viseu .z-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* V401 — homepage mais compacta e hierárquica */
#jogos{padding-top:38px!important;padding-bottom:30px!important}
#jogos .fv-games-results-title .z-section-heading{margin-bottom:12px!important}
#jogos .fv-games-results-title h2{font-size:clamp(30px,3vw,38px)!important}
#jogos .fv258-competition-filter-wrap{margin-top:0!important;margin-bottom:10px!important;padding:0!important}
.fv401-match-tabs{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;margin-bottom:10px!important;padding:5px!important;border:1px solid #dfe6eb!important;border-radius:13px!important;background:#f4f7f8!important}
.fv401-match-tabs button{min-height:42px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:#526171!important;font:900 11px/1 Inter,Arial,sans-serif!important;cursor:pointer!important}
.fv401-match-tabs button.is-active{background:#071522!important;color:#fff!important;box-shadow:inset 0 -3px 0 #79c900!important}
#jogos .fv401-match-panels{display:block!important}
#jogos [data-fv401-panel][hidden]{display:none!important}
#jogos .z-block,#jogos .z-results-panel{width:100%!important;padding:13px!important;border-radius:13px!important}
#jogos .z-block-heading,#jogos .z-results-head{display:none!important}
#jogos .z-fixture-list,#jogos .z-recent-results{display:grid!important;gap:6px!important}
#jogos .fv401-date-heading{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:31px!important;margin-top:7px!important;padding:6px 9px!important;border-left:4px solid #79c900!important;border-radius:7px!important;background:#eef3f5!important;color:#203244!important}
#jogos .fv401-date-heading:first-child{margin-top:0!important}
#jogos .fv401-date-heading span{font-size:9px!important;font-weight:950!important;letter-spacing:.075em!important}
#jogos .fv401-date-heading b{font-size:9px!important;color:#6e7d8b!important}
#jogos .z-fixture-meta{margin-bottom:7px!important}
#jogos .z-fixture-meta span{background:transparent!important;padding:0!important;color:#607080!important;font-size:8.5px!important}
#jogos .z-fixture-row,#jogos .z-recent-result{border-radius:10px!important;padding:8px 10px!important}
#jogos .z-fixture-teams em{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:54px!important;min-height:29px!important;border-radius:8px!important;background:#071522!important;color:#fff!important;font-size:11px!important}
#classificacao-marcadores{padding-bottom:24px!important}
#classificacao-marcadores .fv393-card{box-shadow:none!important;border-radius:14px!important}
#classificacao-marcadores .fv393-top{padding:13px 14px 10px!important}
#classificacao-marcadores .fv393-top h2{margin:0!important;font-size:20px!important}
#classificacao-marcadores .fv393-competition-panel{padding:10px 12px 12px!important}
#classificacao-marcadores .fv393-standing-row,#classificacao-marcadores .fv393-scorer-row{min-height:41px!important}
#classificacao-marcadores .fv393-more{min-height:32px!important;justify-content:center!important;margin-top:8px!important;border-radius:8px!important;background:#f0f6eb!important;color:#477b1a!important}
#competicoes{padding-top:24px!important;padding-bottom:26px!important}
#competicoes .z-section-heading,#equipas-viseu .z-section-heading{margin-bottom:10px!important}
#competicoes .z-section-heading h2,#equipas-viseu .z-section-heading h2{font-size:26px!important}
#competicoes .fv209-competition-grid>a{min-height:104px!important;padding:9px!important}
#equipas-viseu{padding-top:24px!important;padding-bottom:28px!important}
#equipas-viseu .z-team-card{min-height:98px!important}
@media(max-width:700px){
  #jogos{padding-top:28px!important;padding-bottom:22px!important}
  .fv401-match-tabs{width:92%!important}
  .fv401-match-tabs button{min-height:40px!important;font-size:10px!important}
  #jogos .z-block,#jogos .z-results-panel{padding:9px!important}
  #jogos .z-fixture-row,#jogos .z-recent-result{padding:8px!important}
  #jogos .fv401-date-heading{min-height:29px!important;padding:5px 8px!important}
  #classificacao-marcadores .fv393-top h2{font-size:18px!important}
}

/* V342 — leitura instantânea de hoje/amanhã, diretos e marcadores */
#jogos .fv342-date.is-near{display:inline-flex!important;align-items:center!important;min-height:22px!important;padding:3px 7px!important;border-radius:999px!important;background:#edf8df!important;color:#3e710f!important;font-weight:950!important}
#resultados-direto .z-live-card:not(.is-finished-card){border-left:4px solid #e32636!important;box-shadow:0 5px 18px rgba(227,38,54,.08)!important}
#resultados-direto .z-live-card:not(.is-finished-card) .z-live-status b{font-size:12px!important;font-weight:950!important;color:#cf2030!important}
.fv342-result-goals{margin-top:6px!important;border-top:1px dashed #e0e6ea!important;padding-top:4px!important}.fv342-result-goals summary{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:27px!important;list-style:none!important;cursor:pointer!important;color:#4d6475!important;font-size:9px!important;font-weight:900!important}.fv342-result-goals summary::-webkit-details-marker{display:none!important}.fv342-result-goals summary span{display:inline-grid!important;place-items:center!important;min-width:22px!important;height:20px!important;border-radius:999px!important;background:#edf8df!important;color:#477817!important}.fv342-result-goals>div{display:grid!important;gap:4px!important;padding:4px 0 2px!important}.fv342-result-goals p{display:grid!important;grid-template-columns:minmax(90px,.8fr) minmax(0,1.2fr)!important;gap:6px!important;margin:0!important;padding:5px 7px!important;border-radius:7px!important;background:#f6f8f9!important;font-size:9px!important;line-height:1.25!important}.fv342-result-goals p strong{color:#213647!important}.fv342-result-goals p span{color:#657786!important}
@media(max-width:620px){.fv342-result-goals p{grid-template-columns:1fr!important;gap:2px!important}}

.fv258-competition-filter-wrap{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:-8px;margin-bottom:18px}.fv258-competition-filter-wrap label{font-size:12px;font-weight:850;color:#667085}.fv258-competition-filter-wrap select{min-height:46px;min-width:280px;max-width:100%;padding:9px 38px 9px 13px;border:1px solid #d0d5dd;border-radius:12px;background:#fff;color:#101828;font:800 14px/1.2 Inter,Arial,sans-serif}.fv258-filter-empty{margin-top:10px}@media(max-width:650px){.fv258-competition-filter-wrap{display:block;margin-top:0}.fv258-competition-filter-wrap label{display:block;margin-bottom:6px}.fv258-competition-filter-wrap select{width:100%;min-width:0}}
.z-main-grid.fv392-no-upcoming{grid-template-columns:1fr!important}.z-main-grid.fv392-no-upcoming .z-results-panel{grid-column:1/-1!important;width:100%!important}


/* ===== futebol-viseu-final-2026.css ===== */
/* Futebol Viseu — layout final 2026
   Camada visual única de consolidação. Mantém a lógica PHP existente. */
:root{
  --fv-final-navy:#071522;
  --fv-final-navy-2:#0d2234;
  --fv-final-green:#79c900;
  --fv-final-green-dark:#4f8f00;
  --fv-final-red:#d9283e;
  --fv-final-bg:#f3f6f8;
  --fv-final-card:#ffffff;
  --fv-final-text:#132433;
  --fv-final-muted:#667786;
  --fv-final-line:#dfe6eb;
  --fv-final-shadow:0 12px 34px rgba(7,21,34,.08);
  --fv-final-radius:16px;
}
html body{background:var(--fv-final-bg)!important;color:var(--fv-final-text)!important}
html body .z-container{width:min(1280px,calc(100% - 32px))!important}
html body .z-section{padding-top:42px!important;padding-bottom:42px!important}
html body .z-section-heading{margin-bottom:18px!important;align-items:end!important}
html body .z-section-heading h2{margin:0!important;color:var(--fv-final-navy)!important;font-size:clamp(27px,3vw,38px)!important;line-height:1.05!important;letter-spacing:-.035em!important}
html body .z-section-heading>div>span{display:inline-flex!important;margin-bottom:7px!important;color:var(--fv-final-green-dark)!important;font-size:10px!important;font-weight:950!important;letter-spacing:.09em!important;text-transform:uppercase!important}

/* Cabeçalho: simples, compacto e consistente */
html body #fv219Header{background:var(--fv-final-navy)!important;border-bottom:1px solid rgba(255,255,255,.10)!important;box-shadow:0 8px 24px rgba(7,21,34,.20)!important}
html body #fv219Header .fv219-nav{width:min(1280px,calc(100% - 32px))!important;min-height:70px!important}
html body #fv219Header .fv219-brand img{width:44px!important;height:44px!important;min-width:44px!important}
html body #fv219Header .fv219-brand strong{font-size:18px!important}
html body #fv219Header .fv219-brand small{font-size:8.5px!important;color:#a9b7c3!important}
html body #fv219DesktopMenu>a,html body #fv219DesktopMenu>details>summary{min-height:40px!important;padding:0 10px!important;border-radius:9px!important;font-size:12.5px!important}
html body #fv219DesktopMenu>a:hover,html body #fv219DesktopMenu>a.is-active,html body #fv219DesktopMenu>details[open]>summary,html body #fv219DesktopMenu>details.is-active>summary{background:#10283b!important;border-color:#264157!important}
html body #fv350NowBar{background:#fff!important;border-bottom:1px solid var(--fv-final-line)!important}

/* AO VIVO */
html body #resultados-direto{padding:24px 0 8px!important;background:transparent!important}
html body #resultados-direto .z-live-shell{padding:18px!important;border:1px solid #f0c8ce!important;border-top:4px solid var(--fv-final-red)!important;border-radius:var(--fv-final-radius)!important;background:#fff!important;box-shadow:var(--fv-final-shadow)!important}
html body #resultados-direto .fv211-live-title h2{color:var(--fv-final-navy)!important;font-size:28px!important}
html body #resultados-direto .fv211-title-dot{background:var(--fv-final-red)!important}
html body #resultados-direto .z-live-card{border:1px solid var(--fv-final-line)!important;border-left:4px solid var(--fv-final-red)!important;border-radius:13px!important;background:#fff!important;box-shadow:none!important}
html body #resultados-direto .z-live-card:hover{transform:translateY(-2px)!important;box-shadow:0 10px 24px rgba(7,21,34,.08)!important}
html body #resultados-direto .is-finished-card{border-left-color:#8794a0!important}
html body #resultados-direto .fv395-live-filter{background:#f7f9fa!important;border-radius:10px!important}

/* Jogos + resultados: portal de resultados, sem excesso de caixas */
html body #jogos{padding-top:30px!important;padding-bottom:30px!important}
html body #jogos .fv-games-results-title{margin-bottom:13px!important}
html body #jogos .z-main-grid{display:grid!important;grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr)!important;gap:16px!important;align-items:start!important}
html body #jogos .z-block,html body #jogos .z-results-panel{padding:16px!important;border:1px solid var(--fv-final-line)!important;border-radius:var(--fv-final-radius)!important;background:#fff!important;box-shadow:var(--fv-final-shadow)!important}
html body #jogos .z-block-heading,html body #jogos .z-results-head{margin:0 0 12px!important;padding:0 0 10px!important;border-bottom:1px solid #edf1f3!important}
html body #jogos .z-block-heading h2,html body #jogos .z-results-head h2{font-size:20px!important;color:var(--fv-final-navy)!important}
html body #jogos .z-fixture-list,html body #jogos .z-recent-results{display:grid!important;gap:8px!important}
html body #jogos .z-fixture-row,html body #jogos .z-recent-result{margin:0!important;padding:10px 11px!important;border:1px solid #e6ecef!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important}
html body #jogos .z-fixture-row:hover,html body #jogos .z-recent-result:hover{border-color:#c9d6dd!important;background:#fbfcfd!important}
html body #jogos .z-fixture-meta{margin-bottom:8px!important;color:var(--fv-final-muted)!important;font-size:9.5px!important;font-weight:850!important}
html body #jogos .z-fixture-teams{display:grid!important;grid-template-columns:minmax(0,1fr) 68px minmax(0,1fr)!important;gap:8px!important;align-items:center!important}
html body #jogos .z-fixture-teams>div{display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important}
html body #jogos .z-fixture-teams>div:last-child{justify-content:flex-end!important;text-align:right!important}
html body #jogos .z-fixture-teams img{width:34px!important;height:34px!important;min-width:34px!important;object-fit:contain!important}
html body #jogos .z-fixture-teams strong{font-size:12px!important;color:#172938!important;line-height:1.18!important}
html body #jogos .z-fixture-teams em{display:grid!important;place-items:center!important;min-height:36px!important;padding:4px 6px!important;border-radius:9px!important;background:var(--fv-final-navy)!important;color:#fff!important;font-size:11px!important;font-style:normal!important;font-weight:950!important}
html body #jogos .z-fixture-teams em:after{content:none!important;display:none!important}
html body #jogos .z-recent-teams{display:grid!important;grid-template-columns:minmax(0,1fr) 78px minmax(0,1fr)!important;gap:7px!important;align-items:center!important}
html body #jogos .z-recent-teams>div{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important}
html body #jogos .z-recent-teams>div:last-child{justify-content:flex-end!important;text-align:right!important}
html body #jogos .z-recent-teams img{width:30px!important;height:30px!important;min-width:30px!important;object-fit:contain!important}
html body #jogos .z-recent-teams strong{font-size:11.5px!important;line-height:1.18!important}
html body #jogos .z-recent-teams>b{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-width:74px!important;min-height:36px!important;padding:5px 8px!important;border-radius:9px!important;background:var(--fv-final-navy)!important;color:#fff!important;font-size:17px!important}
html body #jogos .z-recent-teams>b i{font-size:7px!important;color:#9fb1bf!important;font-style:normal!important}
html body #jogos .fv214-result-game-link{font-size:9px!important;color:var(--fv-final-green-dark)!important;font-weight:900!important}
html body #jogos .fv258-competition-filter-wrap{display:flex!important;align-items:center!important;justify-content:flex-end!important;margin:0 auto 12px!important}
html body #jogos .fv258-competition-filter-wrap select{min-height:42px!important;border:1px solid #ccd7de!important;border-radius:10px!important;background:#fff!important;font-size:12px!important}

/* Classificação + marcadores */
html body #classificacao-marcadores{padding:10px 0 34px!important;background:transparent!important}
html body #classificacao-marcadores .fv393-card{border:1px solid var(--fv-final-line)!important;border-radius:var(--fv-final-radius)!important;background:#fff!important;box-shadow:var(--fv-final-shadow)!important;overflow:hidden!important}
html body #classificacao-marcadores .fv393-top{background:#fff!important}
html body #classificacao-marcadores .fv393-top h2{color:var(--fv-final-navy)!important}
html body #classificacao-marcadores .fv393-tabs button.is-active{background:var(--fv-final-navy)!important;color:#fff!important}

/* Competições agrupadas por nível */
html body #competicoes{padding:34px 0!important;background:#eef3f5!important;border-top:1px solid #e2e8ec!important;border-bottom:1px solid #e2e8ec!important}
html body #competicoes .fv-final-comp-groups{display:grid!important;gap:20px!important}
html body #competicoes .fv-final-comp-group{display:block!important}
html body #competicoes .fv-final-comp-group-title{display:flex!important;align-items:center!important;gap:9px!important;margin:0 0 10px!important;color:#536575!important;font-size:10px!important;font-weight:950!important;letter-spacing:.09em!important;text-transform:uppercase!important}
html body #competicoes .fv-final-comp-group-title:after{content:'';height:1px;flex:1;background:#d8e1e6}
html body #competicoes .fv209-competition-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important}
html body #competicoes .fv-final-comp-group[data-group='professional'] .fv209-competition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html body #competicoes .fv-final-comp-group[data-group='national'] .fv209-competition-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
html body #competicoes .fv-final-comp-group[data-group='afviseu'] .fv209-competition-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
html body #competicoes .fv209-competition-grid>a{display:flex!important;min-height:126px!important;padding:14px!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;border:1px solid var(--fv-final-line)!important;border-radius:14px!important;background:#fff!important;box-shadow:none!important;transition:.18s ease!important;text-align:center!important}
html body #competicoes .fv209-competition-grid>a:hover{transform:translateY(-3px)!important;border-color:#b9ccd6!important;box-shadow:0 10px 24px rgba(7,21,34,.08)!important}
html body #competicoes .fv209-comp-logo{display:grid!important;place-items:center!important;width:52px!important;height:52px!important;margin:0 0 9px!important}
html body #competicoes .fv209-comp-logo img{max-width:50px!important;max-height:50px!important;object-fit:contain!important}
html body #competicoes .fv209-competition-grid>a>span,html body #competicoes .fv209-competition-grid>a>em{display:none!important}
html body #competicoes .fv209-competition-grid>a>strong{margin:0!important;color:#172938!important;font-size:11.5px!important;line-height:1.2!important}

/* Clubes: emblema + nome */
html body #equipas-viseu{padding:34px 0 42px!important;background:#fff!important}
html body #equipas-viseu .z-section-heading p{display:none!important}
html body #equipas-viseu .z-section-heading>a{color:var(--fv-final-green-dark)!important;font-size:11px!important;font-weight:900!important}
html body #equipas-viseu .z-team-grid{display:grid!important;grid-template-columns:repeat(6,128px)!important;gap:5px!important;justify-content:center!important;max-width:none!important;margin:0 auto!important}
html body #equipas-viseu .z-team-card{display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;width:128px!important;min-width:128px!important;min-height:106px!important;padding:8px 5px!important;border:1px solid var(--fv-final-line)!important;border-radius:13px!important;background:#fff!important;box-shadow:none!important;text-align:center!important}
html body #equipas-viseu .z-team-card:hover{transform:translateY(-3px)!important;border-color:#b8cad4!important;box-shadow:0 9px 22px rgba(7,21,34,.07)!important}
html body #equipas-viseu .z-team-logo{height:55px!important;margin:0 0 6px!important}
html body #equipas-viseu .z-team-logo img{max-width:52px!important;max-height:52px!important;object-fit:contain!important}
html body #equipas-viseu .z-team-card strong{font-size:10px!important;color:#172938!important;line-height:1.18!important}
html body #equipas-viseu .z-team-card span,html body #equipas-viseu .z-team-card em{display:none!important}

/* Páginas de competição: o mesmo sistema visual */
html body.fv223-league-page{background:var(--fv-final-bg)!important}
html body.fv223-league-page .fv-wrap{width:min(1180px,calc(100% - 28px))!important}
html body.fv223-league-page .fv281-comp-hero{margin:16px 0 0!important;background:transparent!important}
html body.fv223-league-page .fv281-comp-hero .fv-wrap{min-height:104px!important;padding:17px 20px!important;border:0!important;border-left:5px solid var(--fv-final-green)!important;border-radius:13px!important;background:linear-gradient(120deg,var(--fv-final-navy),var(--fv-final-navy-2))!important;box-shadow:var(--fv-final-shadow)!important}
html body.fv223-league-page .fv281-comp-logo{width:58px!important;height:58px!important;flex-basis:58px!important;padding:7px!important;border-radius:12px!important;background:#fff!important}
html body.fv223-league-page .fv281-comp-hero h1{color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:clamp(25px,3vw,36px)!important}
html body.fv223-league-page .fv143-season{border:1px solid rgba(121,201,0,.7)!important;border-radius:999px!important;background:rgba(121,201,0,.15)!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
html body.fv223-league-page .fv143-simple-nav{margin-top:9px!important;padding:4px!important;border:1px solid var(--fv-final-line)!important;border-radius:11px!important;background:#fff!important;box-shadow:none!important}
html body.fv223-league-page .fv143-simple-nav a{border:0!important;border-radius:8px!important;color:#536575!important}
html body.fv223-league-page .fv143-simple-nav a.is-current,html body.fv223-league-page .fv143-simple-nav a.active{background:var(--fv-final-navy)!important;color:#fff!important;border:0!important}
html body.fv223-league-page main>#proxima-jornada,html body.fv223-league-page main>#jornadas,html body.fv223-league-page main>#classificacao,html body.fv223-league-page main>#clubes{border:1px solid var(--fv-final-line)!important;border-radius:14px!important;background:#fff!important;box-shadow:var(--fv-final-shadow)!important}
html body.fv223-league-page #proxima-jornada .fv304-game-card{border:1px solid #e4eaee!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important}
html body.fv223-league-page #proxima-jornada .fv304-game-card:hover{border-color:#c4d2da!important;background:#fbfcfd!important}
html body.fv223-league-page .fv304-main-score{border-radius:9px!important;background:var(--fv-final-navy)!important;color:#fff!important}
html body.fv223-league-page .fv309-round-heading h2{color:var(--fv-final-navy)!important}
html body.fv223-league-page .fv308-standings-table{border-radius:10px!important;overflow:hidden!important}

/* Página Clubes */
html body.fv-clubes-page{background:var(--fv-final-bg)!important}
html body.fv-clubes-page .fv-clubes-wrap{width:min(1180px,calc(100% - 28px))!important}
html body.fv-clubes-page .fv-clubes-hero{background:linear-gradient(120deg,var(--fv-final-navy),var(--fv-final-navy-2))!important}
html body.fv-clubes-page .fv-club-tools,html body.fv-clubes-page .fv-club-card{border-color:var(--fv-final-line)!important;border-radius:13px!important;box-shadow:none!important}

/* Rodapé final simples */
html body .fv-final-footer{margin-top:36px!important;border-top:3px solid var(--fv-final-green)!important;background:var(--fv-final-navy)!important;color:#fff!important}
html body .fv-final-footer-wrap{width:min(1180px,calc(100% - 28px))!important;margin:0 auto!important}
html body .fv-final-footer-share{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:18px!important;align-items:center!important;padding:22px 0!important;border-bottom:1px solid rgba(255,255,255,.10)!important}
html body .fv-final-footer-share strong{display:block!important;margin-bottom:4px!important;font-size:16px!important}
html body .fv-final-footer-share p{margin:0!important;color:#aebdca!important;font-size:11.5px!important;line-height:1.45!important}
html body .fv-final-footer-share a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;padding:10px 14px!important;border-radius:10px!important;background:var(--fv-final-green)!important;color:#071522!important;font-size:11px!important;font-weight:950!important}
html body .fv-final-footer-main{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;padding:20px 0!important}
html body .fv-final-footer-brand strong{font-size:17px!important;text-transform:uppercase!important}.fv-final-footer-brand em{color:var(--fv-final-green)!important;font-style:normal!important}
html body .fv-final-footer-links{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:13px!important;flex-wrap:wrap!important}
html body .fv-final-footer-links a{color:#c5d1da!important;font-size:11px!important;font-weight:800!important}
html body .fv-final-footer-links a:hover{color:#fff!important}
html body .fv-final-footer-bottom{padding:13px 0 calc(14px + env(safe-area-inset-bottom))!important;border-top:1px solid rgba(255,255,255,.08)!important;color:#7f93a3!important;font-size:10px!important}

@media(max-width:1000px){
  html body #jogos .z-main-grid{grid-template-columns:1fr!important}
  html body #competicoes .fv209-competition-grid,html body #competicoes .fv-final-comp-group[data-group] .fv209-competition-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html body #equipas-viseu .z-team-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px!important}
}
@media(max-width:700px){
  html body .z-container{width:calc(100% - 18px)!important}
  html body .z-section{padding-top:28px!important;padding-bottom:28px!important}
  html body #jogos .fv258-competition-filter-wrap{display:block!important}
  html body #jogos .fv258-competition-filter-wrap label{display:block!important;margin-bottom:5px!important}
  html body #jogos .fv258-competition-filter-wrap select{width:100%!important;min-width:0!important;font-size:16px!important}
  html body #jogos .z-block,html body #jogos .z-results-panel{padding:11px!important;border-radius:12px!important}
  html body #jogos .z-fixture-row,html body #jogos .z-recent-result{padding:9px 8px!important}
  html body #jogos .z-fixture-teams{grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr)!important}
  html body #jogos .z-fixture-teams img{width:28px!important;height:28px!important;min-width:28px!important}
  html body #jogos .z-fixture-teams strong{font-size:10.5px!important}
  html body #jogos .z-fixture-teams em{min-height:32px!important;font-size:10px!important}
  html body #jogos .z-recent-teams{grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr)!important}
  html body #jogos .z-recent-teams img{width:26px!important;height:26px!important;min-width:26px!important}
  html body #jogos .z-recent-teams strong{font-size:10px!important}
  html body #jogos .z-recent-teams>b{min-width:60px!important;min-height:33px!important;font-size:15px!important}
  html body #competicoes .fv209-competition-grid,html body #competicoes .fv-final-comp-group[data-group] .fv209-competition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body #competicoes .fv209-competition-grid>a{min-height:106px!important;padding:10px!important}
  html body #competicoes .fv209-comp-logo{width:42px!important;height:42px!important}
  html body #equipas-viseu .z-team-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
  html body #equipas-viseu .z-team-card{min-height:98px!important;padding:7px 4px!important}
  html body #equipas-viseu .z-team-logo{height:50px!important}.z-team-logo img{max-width:47px!important;max-height:47px!important}
  html body.fv223-league-page .fv281-comp-hero .fv-wrap{width:calc(100% - 18px)!important;min-height:88px!important;padding:13px 14px!important}
  html body.fv223-league-page .fv281-comp-logo{width:46px!important;height:46px!important;flex-basis:46px!important}
  html body.fv223-league-page .fv281-comp-hero h1{font-size:20px!important}
  html body.fv223-league-page .fv143-simple-nav{width:calc(100% - 18px)!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
  html body .fv-final-footer-share{grid-template-columns:1fr!important}
  html body .fv-final-footer-share a{width:100%!important}
  html body .fv-final-footer-main{align-items:flex-start!important;flex-direction:column!important}
  html body .fv-final-footer-links{justify-content:flex-start!important;gap:10px 14px!important}
}
@media(max-width:430px){html body #equipas-viseu .z-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}


/* V4 — marcador central mais compacto na homepage */
html body #jogos .z-fixture-teams>div:first-child,
html body #jogos .z-recent-teams>div:first-child{justify-content:flex-end!important;text-align:right!important}
html body #jogos .z-fixture-teams>div:last-child,
html body #jogos .z-recent-teams>div:last-child{justify-content:flex-start!important;text-align:left!important}
html body #jogos .z-fixture-teams>div:first-child>strong,
html body #jogos .z-recent-teams>div:first-child>strong{order:1!important}
html body #jogos .z-fixture-teams>div:first-child>img,
html body #jogos .z-recent-teams>div:first-child>img{order:2!important}
html body #jogos .z-fixture-teams>div:last-child>img,
html body #jogos .z-recent-teams>div:last-child>img{order:1!important}
html body #jogos .z-fixture-teams>div:last-child>strong,
html body #jogos .z-recent-teams>div:last-child>strong{order:2!important}
@media(min-width:761px){
 html body #jogos .z-fixture-teams{grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr)!important;gap:6px!important;max-width:610px!important;margin-inline:auto!important}
 html body #jogos .z-recent-teams{grid-template-columns:minmax(0,1fr) 68px minmax(0,1fr)!important;gap:6px!important;max-width:470px!important;margin-inline:auto!important}
 html body #jogos .z-fixture-teams>div,html body #jogos .z-recent-teams>div{gap:6px!important}
}
@media(max-width:760px){
 html body #jogos .z-fixture-teams{grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr)!important;gap:4px!important}
 html body #jogos .z-recent-teams{grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr)!important;gap:4px!important}
 html body #jogos .z-fixture-teams>div,html body #jogos .z-recent-teams>div{gap:4px!important}
}

/* V5 — Contraste dos blocos escuros nas páginas de competição */
html body.fv223-league-page #classificacao .fv-table thead th,
html body.fv223-league-page #classificacao .fv308-standings-table thead th,
html body.fv223-league-page #classificacao .fv-table thead th *,
html body.fv223-league-page #classificacao .fv308-standings-table thead th *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
html body.fv223-league-page .fv304-round-form select,
html body.fv223-league-page .fv304-round-form select option{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
html body.fv223-league-page #proxima-jornada .fv154-game-link.fv231-game-link,
html body.fv223-league-page #proxima-jornada .fv154-game-link.fv231-game-link *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
html body.fv223-league-page .fv143-simple-nav a.is-current,
html body.fv223-league-page .fv143-simple-nav a.active,
html body.fv223-league-page .fv143-simple-nav a.is-current *,
html body.fv223-league-page .fv143-simple-nav a.active *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
html body.fv223-league-page .fv281-comp-hero h1,
html body.fv223-league-page .fv281-comp-hero h1 *,
html body.fv223-league-page .fv281-comp-hero .fv143-season,
html body.fv223-league-page .fv281-comp-hero .fv143-season *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
@media(min-width:821px){
  html body.fv223-league-page .fv304-main-score,
  html body.fv223-league-page .fv304-main-score *{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
  }
}
@media(max-width:820px){
  html body.fv223-league-page .is-live .fv304-main-score,
  html body.fv223-league-page .is-live .fv304-main-score *{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
  }
}
/* V5.1 — restantes elementos escuros das competições */
html body.fv223-league-page #jornadas .fv154-result-game-link.fv230-result-game-link,
html body.fv223-league-page #jornadas .fv154-result-game-link.fv230-result-game-link *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
html body.fv223-league-page #proxima-jornada .fv231-calendar-icon,
html body.fv223-league-page #jornadas .fv230-calendar-icon,
html body.fv223-league-page #proxima-jornada .fv231-calendar-icon *,
html body.fv223-league-page #jornadas .fv230-calendar-icon *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}


/* ===== futebol-viseu-home-compact.css ===== */
/* Ajustes finais compactos da homepage — 17-09-2026. */

/* V3 — equipas mais juntas na horizontal, aplicado diretamente na homepage */
@media(min-width:1051px){
  html body #equipas-viseu .z-team-grid{grid-template-columns:repeat(6,128px)!important;gap:5px!important;justify-content:center!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important}
  html body #equipas-viseu .z-team-card{width:128px!important;min-width:128px!important;min-height:106px!important;padding:8px 5px!important}
  html body #equipas-viseu .z-team-logo{height:52px!important;margin-bottom:5px!important}
  html body #equipas-viseu .z-team-logo img{max-width:49px!important;max-height:49px!important}
}

/* V4 — equipas e emblemas mais próximos da hora/resultado na homepage */
html body #jogos .z-fixture-teams,
html body #jogos .z-recent-teams{
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
html body #jogos .z-fixture-teams>div:first-child,
html body #jogos .z-recent-teams>div:first-child{
  justify-content:flex-end!important;
  text-align:right!important;
}
html body #jogos .z-fixture-teams>div:last-child,
html body #jogos .z-recent-teams>div:last-child{
  justify-content:flex-start!important;
  text-align:left!important;
}
/* Emblemas virados para o marcador central */
html body #jogos .z-fixture-teams>div:first-child>strong,
html body #jogos .z-recent-teams>div:first-child>strong{order:1!important}
html body #jogos .z-fixture-teams>div:first-child>img,
html body #jogos .z-recent-teams>div:first-child>img{order:2!important}
html body #jogos .z-fixture-teams>div:last-child>img,
html body #jogos .z-recent-teams>div:last-child>img{order:1!important}
html body #jogos .z-fixture-teams>div:last-child>strong,
html body #jogos .z-recent-teams>div:last-child>strong{order:2!important}

@media(min-width:761px){
  html body #jogos .z-fixture-teams{grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr)!important;gap:6px!important;max-width:610px!important}
  html body #jogos .z-recent-teams{grid-template-columns:minmax(0,1fr) 68px minmax(0,1fr)!important;gap:6px!important;max-width:470px!important}
  html body #jogos .z-fixture-teams>div,
  html body #jogos .z-recent-teams>div{gap:6px!important}
}
@media(max-width:760px){
  html body #jogos .z-fixture-teams{grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr)!important;gap:4px!important}
  html body #jogos .z-recent-teams{grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr)!important;gap:4px!important}
  html body #jogos .z-fixture-teams>div,
  html body #jogos .z-recent-teams>div{gap:4px!important}
}

/* V8 — novos emblemas AF Viseu: maior presença e proporções equilibradas */
#competicoes .fv209-competition-grid>a{
  min-height:124px!important;
  padding:12px 10px!important;
  justify-content:center!important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
#competicoes .fv209-competition-grid>a:hover{
  transform:translateY(-2px)!important;
  border-color:#b9d79c!important;
  box-shadow:0 7px 18px rgba(14,34,52,.07)!important;
}
#competicoes .fv209-comp-logo{
  width:56px!important;
  height:56px!important;
  min-height:56px!important;
  margin:0 0 8px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
#competicoes .fv209-comp-logo img{
  display:block!important;
  max-width:52px!important;
  max-height:52px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
}
#competicoes .fv-afv-honra .fv209-comp-logo img,
#competicoes .fv-afv-primeira .fv209-comp-logo img{max-width:55px!important;max-height:55px!important}
#competicoes .fv-afv-segunda .fv209-comp-logo img{max-width:61px!important;max-height:48px!important}
#competicoes .fv209-competition-grid>a>strong{font-size:11.5px!important;line-height:1.2!important}
@media(max-width:700px){
  #competicoes .fv209-competition-grid>a{min-height:108px!important;padding:10px 8px!important}
  #competicoes .fv209-comp-logo{width:47px!important;height:47px!important;min-height:47px!important;margin-bottom:6px!important}
  #competicoes .fv209-comp-logo img{max-width:45px!important;max-height:45px!important}
  #competicoes .fv-afv-honra .fv209-comp-logo img,#competicoes .fv-afv-primeira .fv209-comp-logo img{max-width:48px!important;max-height:48px!important}
  #competicoes .fv-afv-segunda .fv209-comp-logo img{max-width:52px!important;max-height:40px!important}
  #competicoes .fv209-competition-grid>a>strong{font-size:10.5px!important}
}


/* Hierarquia final: capa curta, rápida e consistente. */
.fv401-match-tabs{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))!important}
#jogos .fv-home-more{display:flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;margin-top:9px!important;padding:8px 12px!important;border-radius:9px!important;background:#eef6e8!important;color:#477b1a!important;font-size:10px!important;font-weight:950!important;text-decoration:none!important}
#jogos .fv-home-more:hover{background:#e3f1d8!important;color:#315d0d!important}
#jogos .fv-home-live-label{display:inline-flex!important;align-items:center!important;padding:3px 7px!important;border-radius:999px!important;background:#fff0f1!important;color:#ce2433!important;font-weight:950!important}
#jogos .fv-home-today .z-fixture-teams em{min-width:64px!important;font-size:10px!important}

/* Seletor único mais evidente. */
#jogos .fv258-competition-filter-wrap{display:grid!important;grid-template-columns:auto minmax(220px,360px)!important;align-items:center!important;justify-content:end!important;gap:9px!important}
#jogos .fv258-competition-filter-wrap label{font-size:10px!important;text-transform:uppercase!important;letter-spacing:.06em!important;font-weight:950!important;color:#6c7b88!important}
#jogos .fv258-competition-filter-wrap select{
  appearance:auto!important;
  min-width:0!important;
  width:100%!important;
  min-height:36px!important;
  padding:0 12px!important;
  border:1px solid #000!important;
  border-radius:8px!important;
  background:#000!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:10px!important;
  font-weight:900!important;
  text-align:center!important;
  box-shadow:0 3px 10px rgba(13,34,52,.035)!important;
}
#jogos .fv258-competition-filter-wrap select option,
#jogos .fv258-competition-filter-wrap select optgroup{
  background:#000!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Competições mais compactas; identidade visual fica no logótipo/linha do cartão. */
#competicoes .fv-final-comp-groups{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
#competicoes .fv-final-comp-group{min-width:0!important;padding:10px!important;border:1px solid #e1e7eb!important;border-radius:14px!important;background:#fff!important}
#competicoes .fv-final-comp-group-title{margin-bottom:8px!important;color:#667785!important;font-size:9px!important;font-weight:950!important;letter-spacing:.08em!important;text-transform:uppercase!important}
#competicoes .fv209-competition-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
#competicoes .fv-final-comp-group[data-group="national"] .fv209-competition-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#competicoes .fv-final-comp-group[data-group="afviseu"] .fv209-competition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
#competicoes .fv209-competition-grid>a{min-height:90px!important;padding:8px!important;border-radius:10px!important;border-top:3px solid #d9e1e6!important}
#competicoes .fv-final-comp-group[data-group="professional"] .fv209-competition-grid>a{border-top-color:#2563eb!important}
#competicoes .fv-final-comp-group[data-group="national"] .fv209-competition-grid>a{border-top-color:#d39b19!important}
#competicoes .fv-final-comp-group[data-group="afviseu"] .fv209-competition-grid>a{border-top-color:#79c900!important}
#competicoes .fv209-comp-logo{width:43px!important;height:43px!important;min-height:43px!important;margin:0 0 6px!important}
#competicoes .fv209-comp-logo img{max-width:41px!important;max-height:41px!important}
#competicoes .fv209-competition-grid>a>strong{font-size:10px!important;line-height:1.15!important}

/* Clubes: um único acesso em vez de seis cartões aleatórios. */
.fv-home-clubs-shortcut{padding:18px 0 28px!important;background:#fff!important}
.fv-home-clubs-card{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:22px!important;padding:20px 22px!important;border:1px solid #dfe6eb!important;border-radius:16px!important;background:linear-gradient(135deg,#f8fafb,#f1f6ed)!important}
.fv-home-clubs-card span{display:block!important;margin-bottom:4px!important;color:#5b9518!important;font-size:9px!important;font-weight:950!important;letter-spacing:.09em!important;text-transform:uppercase!important}
.fv-home-clubs-card h2{margin:0!important;color:#102033!important;font-size:25px!important;letter-spacing:-.03em!important}
.fv-home-clubs-card p{max-width:680px!important;margin:7px 0 0!important;color:#657583!important;font-size:11.5px!important;line-height:1.5!important}
.fv-home-clubs-card>a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:43px!important;flex:0 0 auto!important;padding:10px 15px!important;border-radius:10px!important;background:#071522!important;color:#fff!important;font-size:11px!important;font-weight:950!important;text-decoration:none!important;box-shadow:inset 0 -3px 0 #79c900!important}

/* Classificação/marcadores: apenas 5 linhas, seleção de uma competição. */
#classificacao-marcadores .fv393-card{max-width:1000px!important;margin:0 auto!important}
#classificacao-marcadores .fv393-select-wrap select{background:#071522!important;border-color:#071522!important;color:#fff!important}

@media(max-width:900px){
  #competicoes .fv-final-comp-groups{grid-template-columns:1fr!important}
  #competicoes .fv-final-comp-group[data-group="national"] .fv209-competition-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:650px){
  #jogos .fv258-competition-filter-wrap{grid-template-columns:1fr!important;justify-content:stretch!important}
  #jogos .fv258-competition-filter-wrap label{margin:0!important}
  .fv-home-clubs-card{align-items:stretch!important;flex-direction:column!important;padding:16px!important}
  .fv-home-clubs-card>a{width:100%!important}
  #competicoes .fv209-competition-grid,#competicoes .fv-final-comp-group[data-group="national"] .fv209-competition-grid,#competicoes .fv-final-comp-group[data-group="afviseu"] .fv209-competition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* V402 — Jogos & Resultados: barra única, mais largura e leitura mais rápida — 17-09-2026 */
#jogos{padding-top:28px!important;padding-bottom:26px!important}
#jogos .fv-games-results-title{margin-bottom:12px!important}
#jogos .fv-games-results-title .z-section-heading{margin-bottom:0!important}
#jogos .fv-games-results-title h2{font-size:clamp(27px,2.35vw,34px)!important;line-height:1!important;letter-spacing:-.035em!important}

/* Próximos / Resultados + competição na mesma barra */
#jogos .fv402-games-toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:12px!important}
#jogos .fv401-match-tabs{display:inline-grid!important;grid-template-columns:repeat(auto-fit,minmax(118px,1fr))!important;flex:0 1 430px!important;width:auto!important;min-width:260px!important;margin:0!important;padding:4px!important;border:1px solid #dfe6eb!important;border-radius:12px!important;background:#f3f6f8!important}
#jogos .fv401-match-tabs button{min-height:38px!important;padding:0 17px!important;border-radius:8px!important;font-size:10.5px!important;white-space:nowrap!important}
#jogos .fv401-match-tabs button.is-active{background:#071522!important;color:#fff!important;box-shadow:inset 0 -3px 0 #79c900!important}

#jogos .fv402-competition-picker{position:relative!important;display:grid!important;grid-template-columns:38px minmax(185px,1fr) 22px!important;align-items:center!important;gap:9px!important;flex:0 1 385px!important;min-height:46px!important;margin:0!important;padding:5px 10px!important;border:1px solid #071522!important;border-radius:11px!important;background:#071522!important;color:#fff!important;box-shadow:0 5px 14px rgba(7,21,34,.10)!important;cursor:pointer!important;overflow:hidden!important}
#jogos .fv402-competition-logo{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:8px!important;background:#fff!important;overflow:hidden!important}
#jogos .fv402-competition-logo img{display:block!important;max-width:28px!important;max-height:28px!important;width:auto!important;height:auto!important;object-fit:contain!important}
#jogos .fv402-competition-select{display:block!important;min-width:0!important}
#jogos .fv402-picker-label{display:block!important;margin:0 0 1px!important;color:#93a5b5!important;font-size:7px!important;font-weight:950!important;line-height:1!important;letter-spacing:.09em!important;text-transform:uppercase!important}
#jogos .fv402-competition-picker select{appearance:none!important;-webkit-appearance:none!important;display:block!important;width:100%!important;min-width:0!important;height:25px!important;min-height:25px!important;margin:0!important;padding:0!important;border:0!important;outline:0!important;background:transparent!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font:900 11.5px/25px Inter,Arial,sans-serif!important;cursor:pointer!important}
#jogos .fv402-competition-picker select option,#jogos .fv402-competition-picker select optgroup{background:#071522!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
#jogos .fv402-picker-arrow{display:grid!important;place-items:center!important;color:#a9b8c4!important;font-size:20px!important;font-weight:900!important;line-height:1!important;pointer-events:none!important;transform:translateY(-1px)!important}
#jogos .fv402-competition-picker:focus-within{outline:3px solid rgba(121,201,0,.22)!important;outline-offset:2px!important}

/* O painel selecionado passa a ocupar toda a largura útil. */
#jogos .fv401-match-panels,#jogos .z-main-grid{display:block!important;grid-template-columns:1fr!important;width:100%!important}
#jogos .z-block,#jogos .z-results-panel{width:100%!important;max-width:none!important;padding:14px 16px!important;border-radius:14px!important}
#jogos .z-block-heading,#jogos .z-results-head{display:none!important}
#jogos .z-fixture-list,#jogos .z-recent-results{gap:8px!important}

/* Cabeçalhos dos dias mais baixos e numa linha. */
#jogos .fv401-date-heading{justify-content:flex-start!important;gap:6px!important;min-height:28px!important;margin:7px 0 2px!important;padding:5px 9px!important;border-left:3px solid #79c900!important;border-radius:7px!important;background:#eef3f5!important}
#jogos .fv401-date-heading span,#jogos .fv401-date-heading b{font-size:8.5px!important;font-weight:950!important;line-height:1!important;letter-spacing:.07em!important}
#jogos .fv401-date-heading b{color:#6e7d8b!important}
#jogos .fv401-date-heading b:before{content:"·"!important;margin-right:6px!important;color:#9eabb5!important}

/* Cartões mais largos, compactos e com maior presença das equipas. */
#jogos .z-fixture-row,#jogos .z-recent-result{position:relative!important;padding:10px 13px!important;border:1px solid #e1e7eb!important;border-left:4px solid #79c900!important;border-radius:11px!important;background:#fff!important;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease!important}
#jogos .z-fixture-row:hover,#jogos .z-recent-result:hover{transform:translateY(-1px)!important;border-color:#cbd7df!important;box-shadow:0 5px 14px rgba(12,35,52,.055)!important}
#jogos .z-fixture-row[data-league*="Taça"],#jogos .z-fixture-row[data-league*="Taca"],#jogos .z-recent-result[data-league*="Taça"],#jogos .z-recent-result[data-league*="Taca"]{border-left-color:#d6a31a!important}
#jogos .z-fixture-row[data-league*="Liga Portugal"],#jogos .z-recent-result[data-league*="Liga Portugal"]{border-left-color:#2563eb!important}
#jogos .z-fixture-row[data-league*="Campeonato de Portugal"],#jogos .z-recent-result[data-league*="Campeonato de Portugal"]{border-left-color:#b97711!important}
#jogos .z-fixture-meta{margin-bottom:8px!important}
#jogos .z-fixture-meta span,#jogos .z-recent-comp{color:#526575!important;font-size:8.7px!important;font-weight:950!important;letter-spacing:.025em!important}
#jogos .z-fixture-teams{grid-template-columns:minmax(0,1fr) 62px minmax(0,1fr)!important;gap:9px!important;max-width:820px!important;margin:0 auto!important}
#jogos .z-fixture-teams>div{gap:8px!important}
#jogos .z-fixture-teams img{width:38px!important;height:38px!important;flex:0 0 38px!important;object-fit:contain!important}
#jogos .z-fixture-teams strong{font-size:13.5px!important;line-height:1.15!important}
#jogos .z-fixture-teams em{min-width:62px!important;min-height:34px!important;padding:4px 5px!important;border-radius:9px!important;background:#071522!important;color:#fff!important;font-size:11.5px!important;font-weight:950!important;line-height:1!important}
#jogos .z-fixture-teams em:after{content:none!important;display:none!important}
#jogos .fv-home-today .z-fixture-teams em:after{display:none!important}

/* Resultados também aproveitam toda a largura, mas sem alargar demasiado o marcador. */
#jogos .z-recent-teams{max-width:820px!important;margin:0 auto!important;grid-template-columns:minmax(0,1fr) 76px minmax(0,1fr)!important;gap:9px!important}
#jogos .z-recent-teams img{width:34px!important;height:34px!important;flex-basis:34px!important}
#jogos .z-recent-teams strong{font-size:13px!important}
#jogos .z-recent-teams>b{min-width:72px!important}

#jogos .fv-home-more{max-width:320px!important;margin:10px auto 0!important}

@media(max-width:760px){
  #jogos{padding-top:24px!important}
  #jogos .fv-games-results-title h2{font-size:28px!important}
  #jogos .fv402-games-toolbar{align-items:stretch!important;flex-direction:column!important;gap:8px!important}
  #jogos .fv401-match-tabs{flex:none!important;width:100%!important;min-width:0!important;grid-template-columns:repeat(auto-fit,minmax(90px,1fr))!important}
  #jogos .fv402-competition-picker{flex:none!important;width:100%!important;grid-template-columns:36px minmax(0,1fr) 20px!important;min-height:45px!important}
  #jogos .z-block,#jogos .z-results-panel{padding:9px!important}
  #jogos .z-fixture-row,#jogos .z-recent-result{padding:9px 8px!important;border-left-width:3px!important}
  #jogos .z-fixture-teams{grid-template-columns:minmax(0,1fr) 52px minmax(0,1fr)!important;gap:5px!important;max-width:none!important}
  #jogos .z-fixture-teams img{width:30px!important;height:30px!important;flex-basis:30px!important}
  #jogos .z-fixture-teams strong{font-size:10.5px!important}
  #jogos .z-fixture-teams em{min-width:50px!important;min-height:31px!important;font-size:10.5px!important}
  #jogos .z-recent-teams{max-width:none!important;grid-template-columns:minmax(0,1fr) 62px minmax(0,1fr)!important;gap:5px!important}
  #jogos .z-recent-teams img{width:28px!important;height:28px!important;flex-basis:28px!important}
  #jogos .z-recent-teams strong{font-size:10.5px!important}
}
#jogos .z-fixture-teams em{flex-direction:column!important}

/* V404 — hora sem VS, mais limpa e apelativa + cabeçalhos de dias só quando têm jogos — 17-09-2026 */
#jogos .fv403-kickoff{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:68px!important;
  min-height:44px!important;
  padding:0 12px!important;
  border:1px solid rgba(7,21,34,.06)!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#0e2739 0%,#071522 100%)!important;
  box-shadow:inset 0 -3px 0 #79c900,0 6px 14px rgba(7,21,34,.14)!important;
  color:#fff!important;
  font-style:normal!important;
  line-height:1!important;
}
#jogos .fv403-kickoff span{
  display:block!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:-.02em!important;
}
#jogos .fv403-kickoff small{display:none!important}
#jogos .fv403-kickoff:after{display:none!important;content:none!important}

/* A regra antiga usa display:flex !important; esta classe permite ao filtro ocultar dias sem jogos. */
#jogos .fv401-date-heading[style*="display: none"]{display:none!important}

@media(max-width:760px){
  #jogos .fv403-kickoff{min-width:58px!important;min-height:40px!important;padding:0 10px!important;border-radius:12px!important}
  #jogos .fv403-kickoff span{font-size:12px!important}
}


/* V406 — remoção definitiva do VS nos jogos futuros */
html body #jogos .z-fixture-teams em.fv403-kickoff::after{content:none!important;display:none!important}
html body #jogos .z-fixture-teams em.fv403-kickoff small{display:none!important}


/* V407 — respiro mobile iPhone/Android — 17-09-2026 */
@media(max-width:760px){
  /* Mantém todo o Score Center afastado das extremidades e respeita o notch/safe area. */
  #jogos .z-container{
    width:100%!important;
    max-width:none!important;
    padding-left:max(14px, env(safe-area-inset-left))!important;
    padding-right:max(14px, env(safe-area-inset-right))!important;
    box-sizing:border-box!important;
  }

  #jogos{
    padding-top:28px!important;
    padding-bottom:42px!important;
  }

  #jogos .fv-games-results-title{
    margin-bottom:16px!important;
  }

  #jogos .fv402-games-toolbar{
    gap:10px!important;
    margin-bottom:14px!important;
  }

  #jogos .fv401-match-tabs{
    padding:5px!important;
    border-radius:14px!important;
  }

  #jogos .fv401-match-tabs button{
    min-height:42px!important;
    border-radius:10px!important;
  }

  #jogos .fv402-competition-picker{
    min-height:52px!important;
    padding:6px 12px!important;
    border-radius:14px!important;
  }

  #jogos .z-block,
  #jogos .z-results-panel{
    padding:11px!important;
    border-radius:16px!important;
  }

  #jogos .z-fixture-list,
  #jogos .z-recent-results{
    gap:11px!important;
  }

  #jogos .fv401-date-heading{
    min-height:34px!important;
    margin:9px 0 4px!important;
    padding:7px 11px!important;
    border-radius:9px!important;
  }

  #jogos .z-fixture-row,
  #jogos .z-recent-result{
    padding:11px 10px!important;
    border-radius:14px!important;
  }

  #jogos .z-fixture-meta{
    margin-bottom:10px!important;
  }

  #jogos .z-fixture-teams{
    gap:7px!important;
  }

  #jogos .fv-home-more{
    margin-top:14px!important;
    margin-bottom:18px!important;
  }
}

@media(max-width:390px){
  #jogos .z-container{
    padding-left:max(12px, env(safe-area-inset-left))!important;
    padding-right:max(12px, env(safe-area-inset-right))!important;
  }
  #jogos .z-block,#jogos .z-results-panel{padding:9px!important}
  #jogos .z-fixture-row,#jogos .z-recent-result{padding:10px 8px!important}
}


/* V408 — margem exterior real no mobile + espaço para navegação fixa — 17-09-2026 */
@media (max-width:760px){
  html body #jogos{
    overflow:visible!important;
    padding-top:30px!important;
    padding-bottom:calc(118px + env(safe-area-inset-bottom))!important;
  }

  /* A margem é agora aplicada ao contentor exterior, não apenas como padding interno. */
  html body #jogos > .z-container{
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    box-sizing:border-box!important;
  }

  html body #jogos > .z-container.fv-games-results-title,
  html body #jogos > .z-container.fv402-games-toolbar,
  html body #jogos > .z-container.z-main-grid.fv401-match-panels{
    width:calc(100% - 28px)!important;
  }

  /* O painel branco deixa de encostar ao ecrã. */
  html body #jogos > .z-main-grid > .z-block,
  html body #jogos > .z-main-grid > .z-results-panel{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    border-radius:17px!important;
    padding:12px!important;
  }

  html body #jogos .fv402-games-toolbar{gap:12px!important;margin-bottom:16px!important}
  html body #jogos .fv401-match-tabs{margin:0!important}
  html body #jogos .fv402-competition-picker{margin:0!important}

  html body #jogos .fv401-date-heading{
    margin:11px 0 6px!important;
    padding:8px 11px!important;
  }

  html body #jogos .z-fixture-list,
  html body #jogos .z-recent-results{gap:12px!important}

  html body #jogos .z-fixture-row,
  html body #jogos .z-recent-result{
    margin:0!important;
    padding:12px 10px!important;
    border-radius:15px!important;
  }
}

@media (max-width:420px){
  html body #jogos > .z-container,
  html body #jogos > .z-container.fv-games-results-title,
  html body #jogos > .z-container.fv402-games-toolbar,
  html body #jogos > .z-container.z-main-grid.fv401-match-panels{
    width:calc(100% - 24px)!important;
  }
  html body #jogos{padding-bottom:calc(124px + env(safe-area-inset-bottom))!important}
  html body #jogos > .z-main-grid > .z-block,
  html body #jogos > .z-main-grid > .z-results-panel{padding:10px!important}
}


/* V409 — espaço REAL entre equipas/emblemas e a hora no mobile — 17-09-2026 */
@media (max-width:760px){
  html body #jogos .z-fixture-teams{
    grid-template-columns:minmax(0,1fr) 68px minmax(0,1fr)!important;
    column-gap:10px!important;
    row-gap:0!important;
    align-items:center!important;
  }
  html body #jogos .z-fixture-teams>div{
    gap:7px!important;
    min-width:0!important;
  }
  html body #jogos .z-fixture-teams>div:first-child{
    padding-right:2px!important;
  }
  html body #jogos .z-fixture-teams>div:last-child{
    padding-left:2px!important;
  }
  html body #jogos .z-fixture-teams em.fv403-kickoff{
    width:64px!important;
    min-width:64px!important;
    max-width:64px!important;
    min-height:40px!important;
    padding:0 6px!important;
    justify-self:center!important;
  }
  html body #jogos .z-fixture-teams img{
    width:30px!important;
    height:30px!important;
    flex:0 0 30px!important;
  }
}

@media (max-width:380px){
  html body #jogos .z-fixture-teams{
    grid-template-columns:minmax(0,1fr) 62px minmax(0,1fr)!important;
    column-gap:7px!important;
  }
  html body #jogos .z-fixture-teams>div{gap:5px!important}
  html body #jogos .z-fixture-teams em.fv403-kickoff{
    width:58px!important;
    min-width:58px!important;
    max-width:58px!important;
  }
  html body #jogos .z-fixture-teams img{
    width:28px!important;
    height:28px!important;
    flex-basis:28px!important;
  }
}


/* V410 — mais espaço entre equipas/emblemas e hora no desktop — 17-09-2026 */
@media (min-width:761px){
  html body #jogos .z-fixture-teams{
    grid-template-columns:minmax(0,1fr) 80px minmax(0,1fr)!important;
    column-gap:14px!important;
    row-gap:0!important;
    max-width:900px!important;
    align-items:center!important;
  }
  html body #jogos .z-fixture-teams>div{
    gap:10px!important;
    min-width:0!important;
  }
  html body #jogos .z-fixture-teams>div:first-child{
    padding-right:3px!important;
  }
  html body #jogos .z-fixture-teams>div:last-child{
    padding-left:3px!important;
  }
  html body #jogos .z-fixture-teams em.fv403-kickoff{
    width:72px!important;
    min-width:72px!important;
    max-width:72px!important;
    min-height:44px!important;
    padding:0 8px!important;
    justify-self:center!important;
  }
}


/* V411 — Taça Sócios de Mérito */
#competicoes .fv-afv-taca-merito .fv209-comp-logo img{max-width:52px!important;max-height:52px!important}
@media(max-width:700px){#competicoes .fv-afv-taca-merito .fv209-comp-logo img{max-width:45px!important;max-height:45px!important}}


/* V422 — eliminatórias das Taças no bloco Classificação / Marcadores */
#classificacao-marcadores .fv422-rounds{display:grid!important;gap:6px!important}
#classificacao-marcadores .fv422-round-row{display:grid!important;grid-template-columns:34px minmax(0,1fr) auto!important;align-items:center!important;gap:9px!important;min-height:50px!important;padding:7px 9px!important;border:1px solid #edf1f3!important;border-radius:10px!important;background:#fbfcfd!important}
#classificacao-marcadores .fv422-round-icon{display:grid!important;place-items:center!important;width:30px!important;height:30px!important;border-radius:9px!important;background:#f3f6e9!important;font-size:15px!important}
#classificacao-marcadores .fv422-round-name{min-width:0!important}
#classificacao-marcadores .fv422-round-name strong{display:block!important;color:#1c2d3d!important;font-size:10.8px!important;line-height:1.2!important}
#classificacao-marcadores .fv422-round-name small{display:block!important;margin-top:3px!important;color:#84919b!important;font-size:8.5px!important;font-weight:800!important;text-transform:uppercase!important}
#classificacao-marcadores .fv422-round-row em{font-style:normal!important;color:#58702d!important;font-size:9px!important;font-weight:950!important;white-space:nowrap!important}
@media(max-width:700px){#classificacao-marcadores .fv422-round-row{grid-template-columns:31px minmax(0,1fr) auto!important;padding:7px!important;gap:7px!important}#classificacao-marcadores .fv422-round-row em{font-size:8px!important}}


/* V424 — Homepage: Competições mais leves e compactas + Clubes aproximado — 18-09-2026 */
html body #competicoes{
  padding-top:24px!important;
  padding-bottom:20px!important;
}
html body #competicoes .fv209-section-head{
  margin-bottom:14px!important;
}
html body #competicoes .fv209-section-head h2{
  margin-bottom:4px!important;
}
html body #competicoes .fv424-comp-subtitle{
  margin:0!important;
  color:#6a7b87!important;
  font-size:11.5px!important;
  line-height:1.4!important;
  font-weight:650!important;
}
html body #competicoes .fv-final-comp-groups{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:start!important;
  gap:22px!important;
}
html body #competicoes .fv-final-comp-group{
  align-self:start!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body #competicoes .fv-final-comp-group-title{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:0 0 9px!important;
  color:#526673!important;
  font-size:9.5px!important;
  font-weight:950!important;
  letter-spacing:.085em!important;
  text-transform:uppercase!important;
}
html body #competicoes .fv-final-comp-group-title:after{
  content:""!important;
  height:1px!important;
  flex:1 1 auto!important;
  background:#ccd8de!important;
}
html body #competicoes .fv209-competition-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  align-items:start!important;
  gap:9px!important;
}
html body #competicoes .fv-final-comp-group[data-group="professional"] .fv209-competition-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
html body #competicoes .fv-final-comp-group[data-group="national"] .fv209-competition-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
html body #competicoes .fv-final-comp-group[data-group="afviseu"] .fv209-competition-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
html body #competicoes .fv209-competition-grid>a{
  min-height:104px!important;
  height:auto!important;
  padding:11px 9px!important;
  border:1px solid #dce5e9!important;
  border-top-width:2px!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 4px 13px rgba(7,21,34,.035)!important;
}
html body #competicoes .fv209-competition-grid>a:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 9px 20px rgba(7,21,34,.07)!important;
}
html body #competicoes .fv209-comp-logo{
  width:49px!important;
  height:49px!important;
  min-height:49px!important;
  margin:0 0 7px!important;
}
html body #competicoes .fv209-comp-logo img,
html body #competicoes .fv-afv-honra .fv209-comp-logo img,
html body #competicoes .fv-afv-primeira .fv209-comp-logo img,
html body #competicoes .fv-afv-segunda .fv209-comp-logo img,
html body #competicoes .fv-afv-taca-merito .fv209-comp-logo img{
  max-width:47px!important;
  max-height:47px!important;
  object-fit:contain!important;
}
html body #competicoes .fv209-competition-grid>a>strong{
  font-size:10.7px!important;
  line-height:1.17!important;
}
html body .fv-home-clubs-shortcut{
  padding:10px 0 20px!important;
  margin-top:0!important;
  background:#fff!important;
}
html body .fv-home-clubs-card{
  gap:18px!important;
  padding:15px 18px!important;
  border-radius:14px!important;
}
html body .fv-home-clubs-card span{
  margin-bottom:2px!important;
  font-size:8.5px!important;
}
html body .fv-home-clubs-card h2{
  font-size:22px!important;
}
html body .fv-home-clubs-card p{
  margin-top:4px!important;
  font-size:11px!important;
}
html body .fv-home-clubs-card>a{
  min-height:40px!important;
  padding:8px 14px!important;
}
@media(max-width:1050px){
  html body #competicoes .fv-final-comp-groups{grid-template-columns:1fr!important;gap:16px!important}
  html body #competicoes .fv-final-comp-group[data-group="professional"] .fv209-competition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body #competicoes .fv-final-comp-group[data-group="national"] .fv209-competition-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html body #competicoes .fv-final-comp-group[data-group="afviseu"] .fv209-competition-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:650px){
  html body #competicoes{padding-top:20px!important;padding-bottom:12px!important}
  html body #competicoes .fv424-comp-subtitle{font-size:10.5px!important}
  html body #competicoes .fv-final-comp-groups{gap:15px!important}
  html body #competicoes .fv209-competition-grid,
  html body #competicoes .fv-final-comp-group[data-group="professional"] .fv209-competition-grid,
  html body #competicoes .fv-final-comp-group[data-group="national"] .fv209-competition-grid,
  html body #competicoes .fv-final-comp-group[data-group="afviseu"] .fv209-competition-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  html body #competicoes .fv209-competition-grid>a{min-height:100px!important;padding:9px 7px!important}
  html body #competicoes .fv209-comp-logo{width:45px!important;height:45px!important;min-height:45px!important}
  html body #competicoes .fv209-comp-logo img,
  html body #competicoes .fv-afv-honra .fv209-comp-logo img,
  html body #competicoes .fv-afv-primeira .fv209-comp-logo img,
  html body #competicoes .fv-afv-segunda .fv209-comp-logo img,
  html body #competicoes .fv-afv-taca-merito .fv209-comp-logo img{max-width:43px!important;max-height:43px!important}
  html body .fv-home-clubs-shortcut{padding-top:8px!important}
  html body .fv-home-clubs-card{padding:14px!important}
  html body .fv-home-clubs-card h2{font-size:20px!important}
}


/* ===== futebol-viseu-live-v34.css ===== */
/* Futebol Viseu — homepage AO VIVO v34 (19-09-2026).
   Camada limitada ao bloco AO VIVO; não altera páginas de competição/rodapé. */
html body #resultados-direto .fv211-live-title h2{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:none!important;
}
html body #resultados-direto .fv114-live-updated{color:#cbd8e2!important}
html body #resultados-direto .fv34-live-counter{
  display:inline-flex!important;align-items:center;justify-content:center;gap:9px;
  min-height:44px;padding:10px 16px;border-radius:12px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.10);color:#fff!important;
  font-size:12px;font-weight:900;white-space:nowrap;
}
html body #resultados-direto .fv34-live-counter i{
  width:9px;height:9px;border-radius:50%;background:#ef3340;
  box-shadow:0 0 0 4px rgba(239,51,64,.19);
}
html body #resultados-direto .fv85-live-group .z-live-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  width:100%!important;
  padding:14px!important;
  align-items:stretch!important;
}
html body #resultados-direto .fv85-live-group .z-live-grid.is-single{
  grid-template-columns:minmax(0,1fr)!important;
  max-width:850px!important;
  margin:0 auto!important;
}
html body #resultados-direto .z-live-card{
  min-width:0!important;
  padding:18px 20px 16px 24px!important;
  border-radius:16px!important;
  box-shadow:0 8px 24px rgba(7,21,34,.06)!important;
}
html body #resultados-direto .z-live-card .z-live-team{
  padding:10px 0!important;
  gap:12px!important;
}
html body #resultados-direto .z-live-card .z-live-team-info{
  gap:13px!important;min-width:0!important;
}
html body #resultados-direto .z-live-card .z-live-team-info img{
  width:43px!important;height:43px!important;
  min-width:43px!important;max-width:43px!important;
  object-fit:contain!important;
}
html body #resultados-direto .z-live-card .z-live-team-info strong{
  font-size:15px!important;line-height:1.25!important;min-width:0!important;
  white-space:normal!important;overflow:visible!important;text-overflow:clip!important;
}
html body #resultados-direto .z-live-card .z-live-score{
  min-width:50px!important;padding:8px 12px!important;
  font-size:23px!important;line-height:1.1!important;
}
html body #resultados-direto .z-live-card .z-live-meta{
  margin-top:11px!important;padding-top:11px!important;
  line-height:1.5!important;font-size:11px!important;
}
html body #resultados-direto .z-live-card .fv114-card-action{
  display:flex!important;justify-content:center;align-items:center!important;
  min-height:43px!important;margin-top:12px!important;padding:10px 12px!important;
  border:0!important;border-radius:11px!important;
  background:#0a2234!important;color:#fff!important;
  box-shadow:inset 0 -3px 0 #79c900!important;
  font-size:12px!important;font-weight:950!important;
  text-align:center!important;
}
html body #resultados-direto .z-live-card:hover .fv114-card-action{
  background:#12364c!important;
}
@media(max-width:760px){
  html body #resultados-direto .z-live-head{align-items:stretch!important;gap:12px!important}
  html body #resultados-direto .fv211-live-title h2{font-size:29px!important}
  html body #resultados-direto .fv34-live-counter{width:100%;white-space:normal}
  html body #resultados-direto .fv85-live-group .z-live-grid,
  html body #resultados-direto .fv85-live-group .z-live-grid.is-single{
    grid-template-columns:minmax(0,1fr)!important;
    max-width:none!important;padding:10px!important;gap:10px!important;
  }
  html body #resultados-direto .z-live-card{padding:13px 12px 13px 16px!important}
  html body #resultados-direto .z-live-card .z-live-team-info{gap:8px!important}
  html body #resultados-direto .z-live-card .z-live-team-info img{
    width:34px!important;height:34px!important;min-width:34px!important;max-width:34px!important;
  }
  html body #resultados-direto .z-live-card .z-live-team-info strong{font-size:12px!important}
  html body #resultados-direto .z-live-card .z-live-score{min-width:43px!important;padding:6px 8px!important;font-size:20px!important}
  html body #resultados-direto .z-live-card .fv114-card-action{min-height:44px!important;font-size:11.5px!important}
}


/* ===== futebol-viseu-home-v35.css ===== */
/* Futebol Viseu — Homepage refinements v35 — 19-09-2026
   Camada final: hierarquia, compactação, Taças, clubes e mobile. */

/* HOJE — atalho contextual só quando existem jogos do distrito */
html body .fv435-today-strip{padding:14px 0 0!important;background:transparent!important}
html body .fv435-today-card{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;min-height:58px!important;padding:11px 14px 11px 16px!important;border:1px solid #dfe7eb!important;border-left:4px solid #79c900!important;border-radius:14px!important;background:#fff!important;box-shadow:0 5px 18px rgba(7,21,34,.045)!important}
html body .fv435-today-copy{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important}
html body .fv435-today-copy>span{display:inline-grid!important;place-items:center!important;min-height:28px!important;padding:0 10px!important;border-radius:999px!important;background:#071522!important;color:#fff!important;font-size:9px!important;font-weight:950!important;letter-spacing:.08em!important;text-transform:uppercase!important}
html body .fv435-today-copy strong{color:#152938!important;font-size:13px!important;line-height:1.25!important}
html body .fv435-today-card>a{display:inline-flex!important;align-items:center!important;gap:8px!important;min-height:36px!important;padding:0 12px!important;border-radius:9px!important;background:#edf6e2!important;color:#3d720d!important;font-size:10px!important;font-weight:950!important;text-decoration:none!important;white-space:nowrap!important}
html body .fv435-today-card>a:hover{background:#79c900!important;color:#071522!important}

/* AO VIVO — menos altura e maior prioridade ao jogo */
html body #resultados-direto{padding-top:16px!important;padding-bottom:10px!important}
html body #resultados-direto .z-live-shell{padding:12px!important;border-radius:15px!important;box-shadow:0 8px 24px rgba(7,21,34,.055)!important}
html body #resultados-direto .z-live-head{align-items:center!important;gap:14px!important;margin-bottom:10px!important;padding:12px 15px!important;border-radius:12px!important;background:#071c2c!important}
html body #resultados-direto .fv211-live-title h2{margin:0 0 3px!important;font-size:30px!important;line-height:1!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
html body #resultados-direto .fv211-title-dot{width:10px!important;height:10px!important;box-shadow:0 0 0 5px rgba(239,51,64,.15)!important}
html body #resultados-direto .fv114-live-updated{margin-top:4px!important;font-size:9px!important;color:#bfcdd7!important}
html body #resultados-direto .fv34-live-counter{min-height:36px!important;padding:7px 12px!important;border-radius:9px!important;font-size:10px!important}
html body #resultados-direto .fv211-live-tabs{width:min(310px,100%)!important;padding:3px!important;gap:4px!important;border-radius:10px!important}
html body #resultados-direto .fv211-live-tabs .z-live-tab{min-height:36px!important;padding:6px 9px!important;border-radius:8px!important;font-size:10px!important}
html body #resultados-direto .fv395-live-filter{max-width:520px!important;margin:0 auto 9px!important;padding:5px 7px!important;gap:7px!important;border-radius:9px!important;background:#f7f9fa!important}
html body #resultados-direto .fv395-live-filter label{font-size:8px!important;color:#788792!important}
html body #resultados-direto .fv395-live-filter select{height:34px!important;border-radius:8px!important;font-size:10.5px!important;background:#fff!important}
html body #resultados-direto .fv85-live-group{margin-top:8px!important}
html body #resultados-direto .fv85-live-group-head{min-height:34px!important;padding:6px 9px!important}
html body #resultados-direto .fv85-live-group-head img{width:24px!important;height:24px!important;object-fit:contain!important}
html body #resultados-direto .fv85-live-group-head strong{font-size:10.5px!important}
html body #resultados-direto .fv85-live-group-head span{font-size:8.5px!important}
html body #resultados-direto .fv85-live-group .z-live-grid{gap:10px!important;padding:8px!important}
html body #resultados-direto .fv85-live-group .z-live-grid.is-single{max-width:900px!important}
html body #resultados-direto .z-live-card{padding:13px 16px 12px 19px!important;border-radius:13px!important}
html body #resultados-direto .z-live-card .z-live-status{margin-bottom:5px!important}
html body #resultados-direto .z-live-card .z-live-status b{font-size:10.5px!important}
html body #resultados-direto .z-live-card .z-live-team{padding:7px 0!important}
html body #resultados-direto .z-live-card .z-live-team-info img{width:38px!important;height:38px!important;min-width:38px!important;max-width:38px!important}
html body #resultados-direto .z-live-card .z-live-team-info strong{font-size:13.5px!important}
html body #resultados-direto .z-live-card .z-live-score{min-width:46px!important;padding:6px 10px!important;font-size:21px!important}
html body #resultados-direto .z-live-card .z-live-meta{margin-top:7px!important;padding-top:8px!important;font-size:10px!important}
html body #resultados-direto .z-live-card .z-live-note{margin-top:7px!important;padding:7px 10px!important}
html body #resultados-direto .z-live-card .fv114-card-action{min-height:38px!important;margin-top:8px!important;padding:7px 11px!important;border-radius:9px!important;font-size:10.5px!important}

/* JOGOS & RESULTADOS — menos altura sem perder leitura */
html body #jogos{padding-top:22px!important;padding-bottom:22px!important}
html body #jogos .fv-games-results-title{margin-bottom:9px!important}
html body #jogos .fv-games-results-title h2{font-size:clamp(25px,2.1vw,31px)!important}
html body #jogos .fv402-games-toolbar{gap:9px!important;margin-bottom:9px!important}
html body #jogos .fv401-match-tabs{padding:3px!important;border-radius:10px!important}
html body #jogos .fv401-match-tabs button{min-height:34px!important;padding:0 13px!important;border-radius:7px!important;font-size:9.8px!important}
html body #jogos .fv402-competition-picker{min-height:42px!important;padding:4px 9px!important;border-radius:10px!important}
html body #jogos .z-block,html body #jogos .z-results-panel{padding:10px 12px!important;border-radius:12px!important}
html body #jogos .z-fixture-list,html body #jogos .z-recent-results{gap:6px!important}
html body #jogos .fv401-date-heading{min-height:25px!important;margin:5px 0 1px!important;padding:4px 8px!important}
html body #jogos .z-fixture-row,html body #jogos .z-recent-result{padding:8px 11px!important;border-radius:10px!important}
html body #jogos .z-fixture-meta{margin-bottom:6px!important}
html body #jogos .z-fixture-teams img{width:35px!important;height:35px!important;flex-basis:35px!important}
html body #jogos .z-fixture-teams strong{font-size:12.8px!important}
html body #jogos .fv-home-more{margin-top:7px!important;min-height:36px!important;font-size:10px!important}

/* CLASSIFICAÇÃO / ELIMINATÓRIAS — selector secundário invisível, competição atual explícita */
html body #classificacao-marcadores .fv435-insights-hidden-select{display:none!important}
html body #classificacao-marcadores .fv393-top{align-items:center!important;padding:13px 15px 9px!important}
html body #classificacao-marcadores .fv393-kicker{font-size:8px!important}
html body #classificacao-marcadores .fv393-top h2{margin-top:3px!important;font-size:20px!important}
html body #classificacao-marcadores .fv435-insights-current{display:inline-flex!important;align-items:center!important;min-height:28px!important;margin-top:7px!important;padding:0 10px!important;border-radius:999px!important;background:#eef4f6!important;color:#435968!important;font-size:9px!important;font-weight:900!important}
html body #classificacao-marcadores .fv393-tabs{margin:0 12px 7px!important}
html body #classificacao-marcadores .fv393-tabs button{min-height:35px!important;font-size:10px!important}
html body #classificacao-marcadores .fv393-competition-panel{padding:9px 12px 12px!important}

/* Mini percurso das Taças */
html body #classificacao-marcadores .fv435-cup-flow{display:flex!important;align-items:center!important;gap:6px!important;margin:0 0 9px!important;padding:8px!important;overflow-x:auto!important;border:1px solid #e3eaee!important;border-radius:11px!important;background:#f8fafb!important;scrollbar-width:thin!important}
html body #classificacao-marcadores .fv435-cup-step{display:flex!important;flex:0 0 auto!important;flex-direction:column!important;justify-content:center!important;min-width:98px!important;min-height:46px!important;padding:6px 8px!important;border:1px solid #dce5e9!important;border-radius:9px!important;background:#fff!important;color:#627582!important;text-align:center!important}
html body #classificacao-marcadores .fv435-cup-step strong{font-size:9px!important;line-height:1.15!important}
html body #classificacao-marcadores .fv435-cup-step small{margin-top:3px!important;color:#8b99a3!important;font-size:7.5px!important;font-weight:850!important;text-transform:uppercase!important}
html body #classificacao-marcadores .fv435-cup-step.is-current{border-color:#79c900!important;background:#f0f9e5!important;color:#285409!important;box-shadow:inset 0 -3px 0 #79c900!important}
html body #classificacao-marcadores .fv435-cup-step.is-past{background:#f1f4f6!important;color:#71808b!important}
html body #classificacao-marcadores .fv435-cup-arrow{flex:0 0 auto!important;color:#8ca05f!important;font-size:14px!important;font-weight:950!important}

/* COMPETIÇÕES — mesma caixa visual para todos os emblemas */
html body #competicoes .fv209-comp-logo{display:grid!important;place-items:center!important;width:52px!important;height:52px!important;min-height:52px!important;border-radius:10px!important;background:#fff!important}
html body #competicoes .fv209-comp-logo img,
html body #competicoes .fv-afv-honra .fv209-comp-logo img,
html body #competicoes .fv-afv-primeira .fv209-comp-logo img,
html body #competicoes .fv-afv-segunda .fv209-comp-logo img,
html body #competicoes .fv-afv-taca-merito .fv209-comp-logo img{width:46px!important;height:46px!important;max-width:46px!important;max-height:46px!important;object-fit:contain!important;object-position:center!important}

/* CLUBES — quatro atalhos úteis, priorizando quem joga hoje */
html body .fv435-clubs-featured{margin-top:9px!important;padding:13px 14px!important;border:1px solid #e0e7eb!important;border-radius:14px!important;background:#fff!important}
html body .fv435-clubs-featured-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:9px!important}
html body .fv435-clubs-featured-head strong{color:#1a3040!important;font-size:11px!important;font-weight:950!important}
html body .fv435-clubs-featured-head span{color:#7b8993!important;font-size:8.5px!important;font-weight:800!important}
html body .fv435-clubs-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
html body .fv435-club-card{display:grid!important;grid-template-columns:40px minmax(0,1fr) 18px!important;align-items:center!important;gap:8px!important;min-height:62px!important;padding:8px 9px!important;border:1px solid #e4eaee!important;border-radius:11px!important;background:#f9fbfc!important;color:#1d3444!important;text-decoration:none!important;transition:.16s ease!important}
html body .fv435-club-card:hover{transform:translateY(-1px)!important;border-color:#c8d6dd!important;background:#fff!important;box-shadow:0 6px 15px rgba(7,21,34,.055)!important}
html body .fv435-club-card>img{width:38px!important;height:38px!important;object-fit:contain!important}
html body .fv435-club-card>span{min-width:0!important}
html body .fv435-club-card strong{display:block!important;overflow:hidden!important;color:#183042!important;font-size:10px!important;line-height:1.18!important;text-overflow:ellipsis!important;white-space:nowrap!important}
html body .fv435-club-card small{display:inline-block!important;margin-top:4px!important;padding:2px 6px!important;border-radius:999px!important;background:#eaf7dc!important;color:#437914!important;font-size:7px!important;font-weight:950!important;text-transform:uppercase!important}
html body .fv435-club-card>b{color:#6cae12!important;font-size:14px!important;text-align:right!important}

/* MOBILE — o sino flutuante é redundante: o acesso fica na barra inferior "Alertas". */
@media(max-width:760px){
  html body .fv435-today-strip{padding-top:9px!important}
  html body .fv435-today-card{align-items:stretch!important;flex-direction:column!important;gap:8px!important;padding:10px 11px!important}
  html body .fv435-today-copy{align-items:flex-start!important;flex-direction:column!important;gap:6px!important}
  html body .fv435-today-copy strong{font-size:11.5px!important}
  html body .fv435-today-card>a{width:100%!important;justify-content:center!important}

  html body #resultados-direto{padding-top:11px!important;padding-bottom:7px!important}
  html body #resultados-direto .z-live-shell{padding:8px!important}
  html body #resultados-direto .z-live-head{align-items:stretch!important;gap:8px!important;padding:10px 11px!important}
  html body #resultados-direto .fv211-live-title h2{font-size:24px!important}
  html body #resultados-direto .fv34-live-counter{width:auto!important;min-height:32px!important;padding:6px 9px!important}
  html body #resultados-direto .fv395-live-filter{align-items:center!important;flex-direction:row!important;max-width:none!important;margin-bottom:7px!important;padding:5px!important}
  html body #resultados-direto .fv395-live-filter label{display:none!important}
  html body #resultados-direto .fv395-live-filter select{width:100%!important;height:36px!important;font-size:16px!important}
  html body #resultados-direto .fv85-live-group .z-live-grid,html body #resultados-direto .fv85-live-group .z-live-grid.is-single{padding:6px!important}
  html body #resultados-direto .z-live-card{padding:11px 9px 10px 13px!important}
  html body #resultados-direto .z-live-card .z-live-team-info img{width:32px!important;height:32px!important;min-width:32px!important;max-width:32px!important}
  html body #resultados-direto .z-live-card .z-live-team-info strong{font-size:11.5px!important}
  html body #resultados-direto .z-live-card .z-live-score{min-width:40px!important;font-size:18px!important}
  html body #resultados-direto .z-live-card .fv114-card-action{min-height:40px!important;font-size:10.5px!important}

  html body #jogos{padding-top:18px!important;padding-bottom:18px!important}
  html body #jogos .fv-games-results-title h2{font-size:25px!important}
  html body #jogos .fv401-match-tabs button{min-height:35px!important}
  html body #jogos .z-block,html body #jogos .z-results-panel{padding:7px!important}
  html body #jogos .z-fixture-row,html body #jogos .z-recent-result{padding:8px 7px!important}

  html body #classificacao-marcadores .fv393-top{padding:12px 11px 8px!important}
  html body #classificacao-marcadores .fv393-top h2{font-size:18px!important}
  html body #classificacao-marcadores .fv435-insights-current{font-size:8.5px!important}
  html body #classificacao-marcadores .fv435-cup-flow{margin-bottom:7px!important;padding:6px!important}
  html body #classificacao-marcadores .fv435-cup-step{min-width:92px!important;min-height:43px!important}

  html body #competicoes .fv209-comp-logo{width:47px!important;height:47px!important;min-height:47px!important}
  html body #competicoes .fv209-comp-logo img,
  html body #competicoes .fv-afv-honra .fv209-comp-logo img,
  html body #competicoes .fv-afv-primeira .fv209-comp-logo img,
  html body #competicoes .fv-afv-segunda .fv209-comp-logo img,
  html body #competicoes .fv-afv-taca-merito .fv209-comp-logo img{width:42px!important;height:42px!important;max-width:42px!important;max-height:42px!important}

  html body .fv435-clubs-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  html body .fv435-club-card{grid-template-columns:34px minmax(0,1fr) 14px!important;min-height:57px!important;padding:7px!important}
  html body .fv435-club-card>img{width:32px!important;height:32px!important}
  html body .fv435-club-card strong{font-size:9.5px!important}

  html body #fvPushOpen{display:none!important}
  html body #fvPushPanel.is-open{display:flex!important}
}

@media(max-width:420px){
  html body .fv435-clubs-grid{grid-template-columns:1fr 1fr!important}
  html body .fv435-club-card{grid-template-columns:31px minmax(0,1fr)!important}
  html body .fv435-club-card>b{display:none!important}
  html body .fv435-club-card>img{width:29px!important;height:29px!important}
  html body .fv435-club-card strong{font-size:9px!important}
}


/* ===== futebol-viseu-home-v40.css ===== */
/* Futebol Viseu — homepage v40
   Jogos & Resultados centrado + cartões a abrir a ficha de jogo. */

html body #jogos .fv-games-results-title,
html body #jogos .fv437-games-toolbar,
html body #jogos > .z-container.z-main-grid.fv401-match-panels{
  width:min(100% - 32px, 980px)!important;
  max-width:980px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

html body #jogos > .z-container.z-main-grid.fv401-match-panels{
  justify-items:center!important;
}

html body #jogos [data-fv401-panel]{
  width:100%!important;
  max-width:980px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

html body #jogos .fv440-game-clickable{
  cursor:pointer!important;
}

html body #jogos .fv440-game-clickable:hover{
  border-color:#9fbd8a!important;
  box-shadow:0 7px 18px rgba(20,50,25,.08)!important;
}

html body #jogos .fv440-game-clickable:focus-visible{
  outline:3px solid rgba(121,201,0,.32)!important;
  outline-offset:3px!important;
}

html body #jogos .fv440-game-action{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  margin-top:7px!important;
  padding-top:7px!important;
  border-top:1px solid #edf1f3!important;
  color:#4f7f22!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.035em!important;
}

html body #jogos .fv440-game-action span{
  font-size:13px!important;
  transition:transform .15s ease!important;
}

html body #jogos .fv440-game-clickable:hover .fv440-game-action span{
  transform:translateX(2px)!important;
}

@media (max-width:700px){
  html body #jogos .fv-games-results-title,
  html body #jogos .fv437-games-toolbar,
  html body #jogos > .z-container.z-main-grid.fv401-match-panels{
    width:calc(100% - 20px)!important;
  }
  html body #jogos .fv440-game-action{
    min-height:30px!important;
    margin-top:6px!important;
    padding-top:6px!important;
    font-size:9px!important;
  }
}


/* ===== futebol-viseu-home-v37.css ===== */
/* Futebol Viseu — Homepage v37 — 19-09-2026
   Jogos & Resultados preparados para muitas competições sem repetir blocos. */

/* Toolbar: separadores em cima e filtros dinâmicos por competição em linha própria. */
html body #jogos .fv437-games-toolbar{
  display:grid!important;
  gap:9px!important;
  margin-bottom:10px!important;
}
html body #jogos .fv437-games-toolbar .fv401-match-tabs{
  width:max-content!important;
  min-width:min(100%,330px)!important;
  max-width:100%!important;
  margin:0!important;
}
html body #jogos .fv437-competition-scroll{
  position:relative!important;
  width:100%!important;
  min-width:0!important;
  padding:4px!important;
  border:1px solid #dfe7eb!important;
  border-radius:11px!important;
  background:#f7f9fa!important;
  overflow:hidden!important;
}
html body #jogos .fv437-competition-scroll[hidden]{display:none!important}
html body #jogos .fv437-competition-filters{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  padding:0 1px 2px!important;
  overflow-x:auto!important;
  overscroll-behavior-inline:contain!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:thin!important;
  scrollbar-color:#b7c3ca transparent!important;
}
html body #jogos .fv437-competition-filters::-webkit-scrollbar{height:4px!important}
html body #jogos .fv437-competition-filters::-webkit-scrollbar-thumb{background:#b7c3ca!important;border-radius:999px!important}
html body #jogos .fv437-competition-chip{
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  max-width:220px!important;
  min-height:34px!important;
  padding:0 10px!important;
  border:1px solid #dfe6ea!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#526572!important;
  font:900 9.5px/1 Inter,Arial,sans-serif!important;
  cursor:pointer!important;
  scroll-snap-align:start!important;
  white-space:nowrap!important;
}
html body #jogos .fv437-competition-chip>span{
  display:block!important;
  max-width:170px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
html body #jogos .fv437-competition-chip>b{
  display:grid!important;
  place-items:center!important;
  min-width:20px!important;
  height:20px!important;
  padding:0 5px!important;
  border-radius:999px!important;
  background:#eef3f5!important;
  color:#60727e!important;
  font-size:8px!important;
  line-height:1!important;
}
html body #jogos .fv437-competition-chip:hover{
  border-color:#bfcdd4!important;
  color:#1d3341!important;
}
html body #jogos .fv437-competition-chip.is-active{
  border-color:#071522!important;
  background:#071522!important;
  color:#fff!important;
  box-shadow:inset 0 -3px 0 #79c900!important;
}
html body #jogos .fv437-competition-chip.is-active>b{
  background:#79c900!important;
  color:#071522!important;
}
html body #jogos .fv437-filter-empty{
  margin:5px 0!important;
  padding:13px!important;
  border-radius:9px!important;
  font-size:10px!important;
}

/* O próprio separador já identifica Próximos/Resultados; não repetir títulos dentro do cartão. */
html body #jogos [data-fv401-panel="upcoming"]>.z-fixture-list,
html body #jogos [data-fv401-panel="results"]>.z-recent-results{margin-top:0!important}

/* Competições: quatro famílias, grelhas elásticas e sem limite rígido de cartões. */
html body #competicoes .fv-final-comp-groups{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
}
html body #competicoes .fv209-competition-grid,
html body #competicoes .fv-final-comp-group[data-group] .fv209-competition-grid{
  grid-template-columns:repeat(auto-fit,minmax(132px,1fr))!important;
  gap:8px!important;
}
html body #competicoes .fv-final-comp-group[data-group="cups"] .fv209-competition-grid>a{border-top-color:#d39b19!important}
html body #competicoes .fv-final-comp-group[data-group="professional"] .fv209-competition-grid>a{border-top-color:#2563eb!important}
html body #competicoes .fv-final-comp-group[data-group="national"] .fv209-competition-grid>a{border-top-color:#6b7f8d!important}
html body #competicoes .fv-final-comp-group[data-group="afviseu"] .fv209-competition-grid>a{border-top-color:#79c900!important}

/* Clubes: cabeçalho mais simples, sem repetir descrição. */
html body .fv-home-clubs-card{min-height:64px!important}
html body .fv-home-clubs-card h2{margin:0!important}

@media(max-width:1050px){
  html body #competicoes .fv-final-comp-groups{grid-template-columns:1fr!important;gap:15px!important}
  html body #competicoes .fv209-competition-grid,
  html body #competicoes .fv-final-comp-group[data-group] .fv209-competition-grid{
    grid-template-columns:repeat(auto-fit,minmax(140px,1fr))!important;
  }
}

@media(max-width:760px){
  html body #jogos .fv437-games-toolbar{gap:7px!important;margin-bottom:8px!important}
  html body #jogos .fv437-games-toolbar .fv401-match-tabs{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    width:100%!important;
    min-width:0!important;
  }
  html body #jogos .fv437-competition-scroll{
    margin-left:-1px!important;
    width:calc(100% + 2px)!important;
    padding:4px!important;
  }
  html body #jogos .fv437-competition-filters{gap:5px!important}
  html body #jogos .fv437-competition-chip{
    max-width:190px!important;
    min-height:35px!important;
    padding:0 9px!important;
    font-size:9px!important;
  }
  html body #jogos .fv437-competition-chip>span{max-width:145px!important}
}

@media(max-width:650px){
  html body #competicoes .fv209-competition-grid,
  html body #competicoes .fv-final-comp-group[data-group] .fv209-competition-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:390px){
  html body #jogos .fv437-competition-chip{max-width:172px!important}
  html body #jogos .fv437-competition-chip>span{max-width:128px!important}
}


/* ===== futebol-viseu-home-v41.css ===== */
/* Futebol Viseu — homepage v41
   Centralização real do bloco Jogos & Resultados. */

/* Um único eixo central para título, controlos e conteúdo. */
html body #jogos .fv-games-results-title,
html body #jogos .fv437-games-toolbar,
html body #jogos > .z-container.z-main-grid.fv401-match-panels{
  width:min(calc(100% - 32px),900px)!important;
  max-width:900px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Título centrado, sem parecer preso ao lado esquerdo. */
html body #jogos .fv-games-results-title .z-section-heading{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
html body #jogos .fv-games-results-title .z-section-heading>div:first-child{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Separadores centrados; filtros de competição continuam a ocupar a linha toda
   quando existem várias competições. */
html body #jogos .fv437-games-toolbar{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:9px!important;
}
html body #jogos .fv437-games-toolbar .fv401-match-tabs{
  width:min(100%,520px)!important;
  min-width:0!important;
  max-width:520px!important;
  margin:0 auto!important;
}
html body #jogos .fv437-competition-scroll{
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* A grelha antiga tinha duas colunas reservadas, o que deixava um único painel
   encostado à esquerda. Na homepage passa a existir uma única coluna central. */
html body #jogos > .z-container.z-main-grid.fv401-match-panels{
  display:block!important;
  grid-template-columns:none!important;
}
html body #jogos [data-fv401-panel]{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
html body #jogos [data-fv401-panel][hidden]{
  display:none!important;
}

/* Os cartões aproveitam a largura do bloco central. */
html body #jogos .z-fixture-list,
html body #jogos .z-recent-results,
html body #jogos .z-fixture-row,
html body #jogos .z-recent-result{
  width:100%!important;
  max-width:none!important;
}

/* Mantém evidente que o cartão inteiro abre a ficha. */
html body #jogos .fv440-game-clickable{
  cursor:pointer!important;
}
html body #jogos .fv440-game-clickable:hover{
  transform:translateY(-1px)!important;
}

@media (max-width:700px){
  html body #jogos .fv-games-results-title,
  html body #jogos .fv437-games-toolbar,
  html body #jogos > .z-container.z-main-grid.fv401-match-panels{
    width:calc(100% - 20px)!important;
  }
  html body #jogos .fv437-games-toolbar .fv401-match-tabs{
    width:100%!important;
    max-width:none!important;
  }
}


/* ===== futebol-viseu-home-v42.css ===== */
/* Futebol Viseu — homepage v42
   Correção do tamanho dos separadores Hoje / Próximos / Resultados.
   A v41 centrou o bloco, mas uma regra antiga flex:0 1 430px passou a atuar
   no eixo vertical. Aqui anulamos esse flex-basis e fixamos uma barra compacta. */

html body #jogos .fv437-games-toolbar{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}

html body #jogos .fv437-games-toolbar .fv401-match-tabs{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(120px,1fr))!important;
  grid-auto-rows:40px!important;
  flex:none!important;
  flex-basis:auto!important;
  align-self:center!important;
  width:min(100%,520px)!important;
  min-width:0!important;
  max-width:520px!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0 auto!important;
  padding:4px!important;
  overflow:visible!important;
}

html body #jogos .fv437-games-toolbar .fv401-match-tabs button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  padding:0 14px!important;
  margin:0!important;
}

@media (max-width:700px){
  html body #jogos .fv437-games-toolbar .fv401-match-tabs{
    width:100%!important;
    max-width:none!important;
    grid-template-columns:repeat(auto-fit,minmax(92px,1fr))!important;
    grid-auto-rows:40px!important;
  }
}

