/*
 * TAÇA DAS PELADINHAS • v40 / MATCHDAY EDITION
 * Presentation-only enhancement over the published v39.
 * Data IDs, JS, Supabase, RLS, team links, admin actions and sponsor positions unchanged.
 */
:root{--v40-bg:#080c12;--v40-panel:#111823;--v40-line:#303b49;--v40-mute:#aab5c4;--v40-gold:#f4c53d;--v40-highlight:#ffdc73}
body:not(.admin-body){background:#080d13!important;color:#f7f8fb}
body:not(.admin-body)::before{content:"";position:fixed;inset:0 0 auto;height:760px;z-index:0;pointer-events:none;background:
 linear-gradient(180deg,rgba(7,11,17,.47),rgba(8,13,19,.93) 68%,#080d13),
 linear-gradient(90deg,rgba(7,11,17,.40),rgba(7,11,17,.07) 50%,rgba(7,11,17,.40)),
 url('taca-poster-estadio.jpg') center 55%/cover no-repeat;opacity:.48}
body:not(.admin-body)>.header{position:sticky;top:0;z-index:40}
body:not(.admin-body)>.page{position:relative;z-index:1;max-width:1360px!important;padding:0 26px 70px!important}
/* Main header—one calm row, with true database-backed time and place on the right */
body:not(.admin-body) .header{background:rgba(8,13,21,.96)!important;border-bottom:1px solid rgba(159,174,194,.19)!important;box-shadow:0 7px 28px rgba(0,0,0,.23)!important;min-height:85px;height:85px!important}
body:not(.admin-body) .header .header-content{max-width:1420px!important;height:100%!important;display:grid!important;grid-template-columns:minmax(260px,1fr) auto minmax(240px,1fr)!important;gap:24px!important;padding:0 32px!important;align-items:center!important}
body:not(.admin-body) .header .brand{justify-self:start;display:flex!important;align-items:center!important;gap:11px!important}
body:not(.admin-body) .header .brandlogo{width:58px!important;height:58px!important;min-width:58px!important;filter:drop-shadow(0 2px 8px #0006)!important}
body:not(.admin-body) .header .brand-lettering{width:225px!important;max-width:225px!important;height:auto!important}
body:not(.admin-body) .header .nav{justify-self:center;display:flex;gap:3px}
body:not(.admin-body) .header .nav a{border-radius:9px!important;color:#cbd3df!important;font-size:12px!important;padding:13px 12px!important;font-weight:700!important;white-space:nowrap}
body:not(.admin-body) .header .nav a:hover{color:#fff!important;background:rgba(255,255,255,.07)!important}
body:not(.admin-body) .header .nav a.active{color:#f8f9fb!important;background:linear-gradient(180deg,#33352c,#171c23 80%)!important;box-shadow:inset 0 -2px 0 var(--v40-gold),0 4px 14px #0006!important}
.header-event{justify-self:end;display:flex;align-items:center;gap:10px;white-space:nowrap;padding:12px 14px;color:#e3e9f3;font-size:11px;font-weight:650;background:rgba(13,18,27,.78);border:1px solid #303947;border-radius:10px;font-variant-numeric:tabular-nums}
.header-event-icon{font-size:16px;color:#f2c640;line-height:0}
.header-event-divider{width:1px;height:17px;background:#505a68;margin:0 1px}
/* Preserve live element IDs but remove the duplicate old introductory ribbon. */
#inicio.league-infobar{display:block!important;height:0!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;opacity:0!important}
#public-content #jogo-destaque.live-feature-section{margin:24px 0 24px!important}
/* Featured fixture is the hero, not a banner containing disconnected placeholders. */
#public-content #jogo-destaque #live-feature{position:relative;isolation:isolate;min-height:285px;padding:22px 28px 22px!important;border-radius:16px!important;border:1px solid #d8ac37!important;box-shadow:0 24px 65px #0005, inset 0 0 0 1px #fae3a314!important;background:
 linear-gradient(180deg,rgba(7,13,22,.32),rgba(8,13,21,.64) 50%,rgba(7,12,19,.40)),
 linear-gradient(90deg,rgba(10,15,22,.72),rgba(10,15,22,.14) 50%,rgba(10,15,22,.73)),
 url('taca-poster-estadio.jpg') center 73% / cover no-repeat!important}
#public-content #jogo-destaque #live-feature::after{position:absolute;content:"";inset:auto 0 0;height:3px;background:linear-gradient(90deg,transparent 4%,#f1bc29 50%,transparent 96%);opacity:.72;pointer-events:none}
#jogo-destaque .feature-head{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--v40-gold)!important;font-size:11px!important;letter-spacing:.07em!important;text-transform:uppercase;font-weight:850}
#jogo-destaque .feature-head .feature-kickoff{margin-left:auto;color:#f0d17a!important;font-size:11px!important;letter-spacing:.04em}
#jogo-destaque .feature-main{position:relative;z-index:1;max-width:1020px!important;margin:16px auto 14px!important;padding:5px 0!important;grid-template-columns:minmax(0,1fr) minmax(100px,170px) minmax(0,1fr)!important;gap:25px!important}
#jogo-destaque .feature-team{min-width:0;justify-content:center!important;text-align:left}
#jogo-destaque .feature-team.away{justify-content:center!important;text-align:right}
#jogo-destaque .feature-team-link{gap:14px!important;justify-content:center!important;min-width:0!important}
#jogo-destaque .feature-team img.team-logo-image{height:92px!important;width:92px!important;min-width:92px!important;object-fit:contain!important;filter:drop-shadow(0 9px 18px #0009)!important}
#jogo-destaque .feature-team strong{font-size:clamp(15px,1.5vw,21px)!important;font-weight:850!important;letter-spacing:-.02em!important;line-height:1.18!important;color:#fff!important;max-width:235px}
#jogo-destaque .feature-score{font-size:clamp(34px,3.6vw,55px)!important;font-weight:900!important;color:#fff!important;min-width:0!important;text-shadow:0 4px 16px #0009}
#jogo-destaque .feature-foot{position:relative;z-index:1;display:grid!important;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;border-top:0!important;padding:2px 0 0!important;margin:0!important;min-height:43px}
#jogo-destaque .feature-scorers{grid-column:1;color:#b9c4d2!important;font-size:10px!important;line-height:1.35;max-width:250px}
#jogo-destaque .feature-actions{grid-column:2;justify-content:center!important;gap:10px!important;flex-wrap:nowrap!important}
#jogo-destaque .feature-actions button{min-height:43px!important;padding:11px 20px!important;font-size:12px!important;font-weight:850!important;box-shadow:0 4px 12px #0005}
#jogo-destaque .feature-actions [data-open-match]{background:linear-gradient(180deg,#ffd96a,#e9b52f)!important;color:#12161d!important;border:1px solid #f3c247!important}
#jogo-destaque .feature-actions [data-share-match]{background:rgba(15,20,30,.85)!important;border:1px solid #596576!important;color:#f9fafa!important}
/* Competition row — hierarchy, rhythm and reliable equal-height panels. */
#public-content .dual-trophies{grid-template-columns:minmax(0,1.57fr) minmax(0,1fr)!important;gap:16px!important;align-items:stretch!important;margin:0 0 5px!important}
#public-content .dual-trophy-section{display:flex;flex-direction:column;min-width:0}
#public-content .dual-trophy-section>.section-head{min-height:59px!important;margin:0 0 11px!important;align-items:center!important;gap:12px!important}
#public-content .section-head h2{color:#f7f8fb!important;font-size:clamp(23px,2.5vw,33px)!important;font-weight:900!important;letter-spacing:-.045em!important}
#public-content .dual-trophy-section .section-head .eyebrow{display:block!important;font-size:10px!important;font-weight:900!important;letter-spacing:.14em!important;color:#f7c949!important;margin:0 0 7px!important}
#public-content #taca-dos-finos>.section-head::before{content:'COMPETIÇÃO DO BAR';position:absolute;top:-3px;color:#f5c944;font-size:10px;letter-spacing:.15em;font-weight:900}
#public-content #taca-dos-finos>.section-head{position:relative;padding-top:14px}
#public-content #classificacao .competition-switch{align-self:center!important;margin-left:auto!important;flex-shrink:0;min-width:0;background:#101723!important;border:1px solid #3c4756!important;border-radius:10px!important;padding:4px!important}
#public-content #classificacao .competition-switch-btn{font-size:12px!important;border-radius:7px!important;padding:10px 14px!important}
#public-content #classificacao .competition-switch-btn.active{background:#f1c43c!important;color:#0e1319!important;box-shadow:0 2px 8px #0004!important}
#public-content .standings-focus,#public-content .fan-league-box{flex:1!important;background:linear-gradient(155deg,#151e2a,#101720)!important;border:1px solid #3b4654!important;border-radius:14px!important;overflow:hidden!important;box-shadow:0 14px 25px #0003!important}
#public-content .standings-focus .table-share{background:#17212d!important;padding:8px 13px!important;min-height:43px!important;align-items:center!important}
#public-content [data-share-standings]{background:#172332!important;border-color:#435264!important;font-size:11px!important;color:#f2cc5d!important;border-radius:8px!important;padding:7px 12px!important}
#public-content #full-standing .league-table{width:100%!important;min-width:0!important;table-layout:auto!important}
#public-content #full-standing .league-table th{background:#17222f!important;color:#bec9d6!important;font-size:10px!important;height:37px!important;font-weight:850!important;text-transform:none!important;letter-spacing:.025em!important}
#public-content #full-standing .league-table td{border-color:#303b49!important;font-size:12px!important;font-weight:800!important;height:57px!important;padding:10px 9px!important}
#public-content #full-standing .league-table .team-column{min-width:178px!important;text-align:left!important}
#public-content #full-standing .team-logo-image{width:38px!important;height:38px!important;object-fit:contain!important}
#public-content #full-standing .team-cell{gap:10px!important}
#public-content #full-standing .position{font-size:16px!important;font-weight:850!important;display:inline-grid;place-items:center;width:27px;height:28px;border:1px solid #3a4554;border-radius:5px;background:#202c39;color:#dce4ef}
#public-content #full-standing .rank-top{color:#0d131b!important;background:#f0c23e!important;border-color:#f0c23e!important}
#public-content #full-standing .league-table tbody tr:first-child{background:linear-gradient(90deg,rgba(242,198,64,.10),rgba(242,198,64,.025))!important}
#public-content #full-standing .league-table tbody tr:nth-child(n+2){background:transparent!important}
#public-content #full-standing .points{color:#ffd95c!important;font-size:17px!important}
#public-content .standing-details summary{color:#f1d27b!important;font-size:12px!important;padding:13px 17px!important}
#public-content .standings-note{color:#a7b3c1!important}
/* Finos: stylized golden ambient highlight, not a fake sponsor image. */
#public-content #fan-league .fan-league-head{position:relative;isolation:isolate;min-height:107px;overflow:hidden;padding:22px 18px 16px!important;background:radial-gradient(circle at 88% 24%,rgba(246,182,42,.18),transparent 37%),linear-gradient(95deg,#151e2a,#1b1d21)!important;border-color:#3f4144!important}
#public-content #fan-league .fan-league-head::before{content:' ';width:75px;height:100px;position:absolute;right:10px;top:-18px;z-index:-1;opacity:.75;background:linear-gradient(180deg,#fff6c9 0 13%,#e4aa2d 15%,#b87411 85%,#53340b 100%);clip-path:polygon(13% 8%,80% 8%,73% 94%,27% 94%);border-radius:25px;filter:drop-shadow(0 7px 7px #0008)}
#public-content #fan-league .fan-league-head::after{content:'';position:absolute;right:15px;top:0;width:61px;height:18px;background:#fff6cf;border-radius:45% 45% 32% 32%;box-shadow:0 3px 4px #fff8;opacity:.7}
#public-content #fan-league .fan-league-head h3{font-size:15px!important;font-weight:850!important;max-width:78%;position:relative;color:#f9fafb!important}
#public-content #fan-league .fan-league-description{font-size:11px!important;line-height:1.45!important;max-width:80%!important;position:relative;color:#b9c3d0!important}
#public-content #fan-league .fan-league-list{padding:5px 14px!important;background:#121a25!important}
#public-content #fan-league .fan-league-row{min-height:57px!important;padding:10px 0!important;border-bottom:1px solid #2d3846!important;gap:9px!important}
#public-content #fan-league .fan-team-link strong{font-size:11px!important;letter-spacing:-.012em!important}
#public-content #fan-league .fan-team-link img.team-logo-image{width:34px!important;height:34px!important}
#public-content #fan-league .fan-vote-value{font-size:16px!important;color:#ffdb65!important}
#public-content #fan-league .fan-league-meter{height:7px!important;border-radius:8px!important;background:#303b48!important}
#public-content #fan-league .fan-league-meter span{background:linear-gradient(90deg,#c59220,#ffd768)!important}
/* Calendar and cards have compact score-centric design. */
#public-content #calendario{margin-top:28px!important;border:1px solid #33404f;border-radius:15px;background:linear-gradient(155deg,#101720,#10151d);padding:20px 20px 23px;box-shadow:0 15px 35px #0002}
#public-content #calendario>.section-head{margin:0 0 19px!important;min-height:50px!important;border-bottom:1px solid #b58d30;padding:0 0 15px!important;align-items:center!important}
#public-content #calendario>.section-head h2{font-size:clamp(23px,2.4vw,30px)!important}
#public-content #calendario .schedule-controls{gap:7px!important}
#public-content #calendario .schedule-select-wrap label{font-size:10px!important;color:#cbd4df!important}
#public-content #calendario .schedule-round-select{background:#151e2a!important;border:1px solid #465261!important;min-width:146px!important;border-radius:8px!important;min-height:42px!important}
#public-content #calendario .schedule-arrows button{background:#1c2835!important;border-color:#465160!important}
#public-content #calendario .journey-group .phase-header{margin:0 0 11px!important}
#public-content #calendario .journey-group .phase-header h3{font-size:16px!important;letter-spacing:-.01em!important}
#public-content #schedule .match-card{background:linear-gradient(150deg,#17212c,#121921)!important;border:1px solid #364657!important;border-radius:11px!important;padding:17px 15px 14px!important;box-shadow:inset 0 1px 0 #ffffff07!important}
#public-content #schedule .match-card:hover{border-color:#c09a38!important;transform:translateY(-1px);box-shadow:0 10px 20px #0003!important}
#public-content #schedule .match-card-head{color:#b9c6d5!important;font-size:10px!important;letter-spacing:.02em!important}
#public-content #schedule .match-team .team-name{font-size:12px!important;line-height:1.35!important}
#public-content #schedule .match-score{background:#0b121a!important;border:1px solid #333f4e!important;color:#f8fafc!important;border-radius:9px!important}
#public-content #schedule .match-footer-actions{margin-top:13px!important;padding-top:11px!important}
/* Individual stats, bracket, squads. */
#public-content #marcadores,#public-content #eliminatorias,#public-content #equipas,#public-content #noticias{margin-top:33px}
#public-content .stats-duo-grid{gap:16px!important}
#public-content .stats-card{background:#121a25!important;border:1px solid #394656!important;border-radius:13px!important}
#public-content .stats-card-head{background:linear-gradient(115deg,#1b2531,#161e28)!important;border-bottom:1px solid #384553!important;padding:18px 20px!important}
#public-content .stats-card-head h3{color:#f5f7fa!important;font-size:20px!important;font-weight:850!important}
#public-content .stats-card .scorer-line{border-color:#303d4b!important}
#public-content .phase-preview{background:#131c27!important;border:1px solid #364656!important;border-radius:12px!important}
#public-content .phase-preview>summary{background:#19232f!important;border-radius:12px!important;font-size:13px!important}
#public-content .team-grid .team-card{background:linear-gradient(145deg,#19232e,#141b24)!important;border:1px solid #374657!important;border-radius:12px!important}
#public-content .team-grid .team-card:hover{border-color:#d7ae45!important;background:#1f2b38!important}
#public-content .sponsor-placement:not([hidden]){background:#121b25!important;border-color:#334250!important;border-radius:11px!important}
#public-content .sponsor-inline-card{background:#1b2632!important;border-color:#344353!important}
#public-content .footer{border-top:1px solid #303b49;padding-top:20px!important;color:#9aa6b7!important}
/* Focus/hover clarity with no changes to semantic control functionality. */
body:not(.admin-body) :is(button,a,summary,select):focus-visible{outline:2px solid #ffd65f!important;outline-offset:3px!important}
/* Admin polished to match the public site, with inputs preserved. */
.admin-body .sidebar{background:#0c141d!important;border-right-color:#344353!important}
.admin-body .side-menu button.active{background:#26303c!important;box-shadow:inset 3px 0 0 #f4c440!important}
.admin-body .admin-main{background:transparent}
.admin-body .card,.admin-body .finance-kpi{background:linear-gradient(150deg,#1a2530,#151d27)!important;border-color:#374758!important}
.admin-body .admin-table th{background:#202c39!important}
.admin-body .button.primary{background:#f4c440!important;color:#161b22!important}
.admin-body :is(input,select,textarea){background:#121923!important;border-color:#475362!important;color:#edf3f9!important}
.admin-body :is(input,select,textarea):focus-visible{outline:2px solid #f1c23e!important;outline-offset:1px!important}
/* Desktop compression and a mobile-first layout with no resurrected nav. */
@media(max-width:1370px){
 body:not(.admin-body) .header .header-content{grid-template-columns:minmax(230px,1fr) auto minmax(180px,1fr)!important;gap:10px!important;padding:0 21px!important}
 body:not(.admin-body) .header .brand-lettering{width:192px!important;max-width:192px!important}
 body:not(.admin-body) .header .brandlogo{width:50px!important;height:50px!important;min-width:50px!important}
 body:not(.admin-body) .header .nav a{padding:12px 9px!important;font-size:11px!important}
 .header-event{padding:10px;font-size:10px;gap:7px}
}
@media(max-width:1110px){
 #public-content .dual-trophies{grid-template-columns:1fr!important;gap:11px!important}
 #public-content .dual-trophy-section>.section-head{min-height:51px!important}
 #public-content .standings-focus,#public-content .fan-league-box{min-height:0!important}
 .header-event{display:none!important}
 body:not(.admin-body) .header .header-content{grid-template-columns:auto 1fr!important}
 body:not(.admin-body) .header .nav{justify-self:end}
}
@media(max-width:800px){
 body:not(.admin-body)>.page{padding:0 15px 45px!important}
 body:not(.admin-body) .header{height:auto!important;min-height:0!important}
 body:not(.admin-body) .header .header-content{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:0!important;padding:10px 12px!important;height:auto!important}
 body:not(.admin-body) .header .brand{justify-self:center!important;margin:auto!important;gap:9px!important}
 body:not(.admin-body) .header .brandlogo{width:52px!important;height:52px!important;min-width:52px!important}
 body:not(.admin-body) .header .brand-lettering{width:min(245px,64vw)!important;max-width:min(245px,64vw)!important}
 body:not(.admin-body) .header .nav{display:none!important}
 body:not(.admin-body) .header-event{display:flex!important;justify-self:center!important;border:none;background:none;padding:4px 0 0!important;gap:10px;white-space:normal;flex-wrap:wrap;justify-content:center;font-size:10px}
 .header-event-icon{display:none}
 #public-content #jogo-destaque.live-feature-section{margin:12px 0 20px!important}
 #public-content #jogo-destaque #live-feature{min-height:0;padding:15px 13px 17px!important;background-position:center 80%!important}
 #jogo-destaque .feature-head{font-size:10px!important;gap:8px}
 #jogo-destaque .feature-head .feature-kickoff{font-size:10px!important}
 #jogo-destaque .feature-main{grid-template-columns:minmax(0,1fr) 65px minmax(0,1fr)!important;gap:8px!important;margin:12px auto 13px!important}
 #jogo-destaque .feature-team-link,#jogo-destaque .feature-team.away .feature-team-link{flex-direction:column!important;text-align:center!important;gap:6px!important}
 #jogo-destaque .feature-team img.team-logo-image{width:61px!important;height:61px!important;min-width:61px!important}
 #jogo-destaque .feature-team strong{font-size:12px!important;line-height:1.3!important}
 #jogo-destaque .feature-score{font-size:28px!important}
 #jogo-destaque .feature-foot{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:8px!important;align-items:center!important}
 #jogo-destaque .feature-scorers{text-align:center!important;max-width:300px!important}
 #jogo-destaque .feature-actions{display:flex!important;justify-content:center!important;flex-wrap:wrap!important;gap:7px!important}
 #jogo-destaque .feature-actions button{min-height:40px!important;padding:9px 13px!important;font-size:11px!important}
 #public-content .dual-trophies{gap:4px!important}
 #public-content .dual-trophy-section>.section-head{margin:0 0 9px!important;min-height:54px!important}
 #public-content #classificacao .competition-switch-btn{padding:9px 11px!important}
 #public-content #calendario{padding:16px 13px 18px!important;margin-top:21px!important}
 #public-content #calendario>.section-head{align-items:flex-start!important;gap:10px!important;flex-direction:column!important}
 #public-content #calendario .schedule-controls{margin:0!important;width:100%;justify-content:flex-start!important}
 #public-content .stats-duo-grid{grid-template-columns:1fr!important;gap:13px!important}
}
@media(max-width:430px){
 body:not(.admin-body)>.page{padding-inline:11px!important}
 .header-event{font-size:9px!important;gap:7px!important}
 #jogo-destaque .feature-head .feature-kickoff{font-size:9px!important}
 #jogo-destaque .feature-main{grid-template-columns:minmax(0,1fr) 55px minmax(0,1fr)!important;gap:5px!important}
 #jogo-destaque .feature-team img.team-logo-image{width:52px!important;height:52px!important;min-width:52px!important}
 #jogo-destaque .feature-team strong{font-size:11px!important}
 #jogo-destaque .feature-score{font-size:25px!important}
 #public-content .section-head h2{font-size:23px!important}
 #public-content #full-standing .league-table td{font-size:11px!important;padding:9px 4px!important}
 #public-content #full-standing .league-table .team-column{min-width:160px!important}
 #public-content #full-standing .team-logo-image{width:30px!important;height:30px!important}
 #public-content #fan-league .fan-league-head h3{max-width:82%}
}
@media(prefers-reduced-motion:reduce){#public-content #schedule .match-card{transform:none!important;transition:none!important}}
/* Landscape presentation of the existing square stadium artwork: retain lights AND pitch. */
#public-content #jogo-destaque #live-feature{background-size:cover,cover,100% 100%!important;background-position:center,center,center!important}
@media(max-width:800px){#public-content #jogo-destaque #live-feature{background-size:cover,cover,100% 100%!important;background-position:center,center,center!important}}
