/* Centro Vivo V4 — acoplado à rota profissional existente, com namespace sh4. */
:root{--sh4-navy:#07182d;--sh4-deep:#0b2541;--sh4-ink:#142e4a;--sh4-sky:#27aff6;--sh4-green:#00bb94;--sh4-orange:#f58b30;--sh4-bg:#edf4fa;--sh4-stroke:#dbe6ef;--sh4-muted:#5e7188}
body{background:var(--sh4-bg)!important}
body .sport-shell{width:100%!important;max-width:none!important;margin:0!important;padding:clamp(10px,1.25vw,22px)!important;box-sizing:border-box}
body .sport-masthead{min-height:0!important;border-radius:20px!important;padding:clamp(14px,2vw,24px)!important;background:linear-gradient(112deg,#091a36 0%,#123f68 56%,#09688a 100%)!important;color:#fff!important;border:1px solid rgba(255,255,255,.15)!important;box-shadow:0 9px 25px #14294415!important}
body .sport-masthead h1{color:#fff!important;margin:4px 0!important;font-size:clamp(23px,2vw,36px)!important;line-height:1.2!important}
body .sport-masthead p,body .sport-eyebrow{color:#d1ebff!important}
body .sport-nav{background:#fff!important;border:1px solid var(--sh4-stroke)!important;border-radius:13px!important;margin:10px 0 10px!important;gap:4px!important;padding:5px!important}
body .sport-nav a{border-radius:8px!important;white-space:nowrap}
body .sport-nav a.is-active{color:#fff!important;background:#1461a0!important;border-color:#1461a0!important}
body .sport-layout{width:100%!important;max-width:none!important;grid-template-columns:clamp(265px,20vw,344px) minmax(0,1fr)!important;gap:clamp(10px,1.15vw,18px)!important;align-items:start!important}
body .sport-layout>.sport-right{display:none!important}
body .sport-layout .sport-main{min-width:0!important;width:100%!important;max-width:none!important;margin:0!important}
body .sport-layout .sport-sidebar{width:auto!important;min-width:0!important;max-width:none!important;margin:0!important}
body .sport-main>.sport-toolbar{background:#fff;border:1px solid var(--sh4-stroke);border-radius:13px;padding:13px 17px;margin-bottom:9px!important}
body .sport-main>.sport-toolbar h2{font-size:clamp(18px,1.45vw,24px)!important;color:#0b3354!important}
body .sport-main .sport-league-block,body .sport-main .sport-match-hero,body .sport-main .sport-panel{border-radius:14px!important;box-shadow:0 6px 18px #1635580a!important}
body .sport-main .sport-group{background:linear-gradient(100deg,#0e3b62,#1c80aa)!important;color:#fff!important;padding:12px 16px!important;border-radius:11px 11px 0 0!important}
body .sport-main .sport-group a{color:#ecfaff!important}
body .sport-main .sport-mini-match,body .sport-main .sport-league-card{transition:border-color .16s,background .16s,transform .16s}
body .sport-main .sport-mini-match:hover,body .sport-main .sport-league-card:hover{background:#f1faff!important;border-color:#8bcbed!important;transform:translateY(-1px)}
body .sport-grid{grid-template-columns:repeat(auto-fill,minmax(174px,1fr))!important}
body .sport-league-card{min-width:0!important}
body .sport-league-card .sport-badge-icon{background:linear-gradient(160deg,#dbf3ff,#eafdf7)!important;border-color:#dcecf4!important;width:65px!important;height:65px!important}
body .sport-league-card .sport-badge-icon img{object-fit:contain!important;max-width:90%!important;max-height:90%!important}
body .sport-bottomnav{z-index:100!important}
.sh4-sidebar{--sh4-sport:#28bd90;position:sticky!important;top:12px!important;max-height:calc(100dvh - 24px)!important;overflow-y:auto!important;overscroll-behavior:contain;background:var(--sh4-navy)!important;color:#fff!important;border-radius:17px!important;border:1px solid #1b3858!important;box-shadow:0 10px 25px #081d3829!important;scrollbar-color:#3d6385 transparent;scrollbar-width:thin;align-self:start}
.sh4-side-head{background:linear-gradient(145deg,#102f55,#07172b);padding:19px 15px 14px;border-bottom:1px solid #2a4264;position:sticky;top:0;z-index:2}
.sh4-side-kicker{letter-spacing:.15em;font-size:10px;font-weight:800;color:#5dccfb;margin-bottom:8px}
.sh4-side-title{font-size:19px;font-weight:850;display:flex;align-items:center;justify-content:space-between;color:#fff}
.sh4-side-title span{font-size:12px;background:#1e567b;padding:5px 9px;border-radius:20px;color:#cfeffc}
.sh4-side-search{display:flex;align-items:center;gap:6px;height:40px;background:#152f4d;border:1px solid #305172;border-radius:9px;padding:0 10px;margin-top:13px}
.sh4-side-search span{font-size:19px;color:#60d0fc}
.sh4-side-search input{background:none!important;border:0!important;outline:none!important;width:100%;min-width:0;color:#fff!important;font-size:13px!important;box-shadow:none!important}
.sh4-side-search input::placeholder{color:#adc1d7}
.sh4-tree{padding:8px 8px 16px}
.sh4-tree details>summary{cursor:pointer;user-select:none;list-style:none;display:flex;align-items:center;min-width:0;gap:7px}
.sh4-tree details>summary::-webkit-details-marker{display:none}
.sh4-sport{margin-bottom:6px;border:1px solid #25445f;border-radius:11px;overflow:hidden}
.sh4-sport>summary{min-height:49px;padding:6px 10px;background:linear-gradient(90deg,#133c59,#11304b);color:#f4faff;font-weight:800;font-size:14px}
.sh4-sport[open]>summary{background:linear-gradient(90deg,var(--sh4-sport),#164365)}
.sh4-sport--futebol{--sh4-sport:#077f65}.sh4-sport--voleibol{--sh4-sport:#167abc}.sh4-sport--basquete{--sh4-sport:#be641c}.sh4-sport--handebol{--sh4-sport:#a93159}
.sh4-sport-icon{font-size:22px;display:grid;place-items:center;width:32px;height:32px;background:#ffffff24;border-radius:8px}
.sh4-sport>summary small,.sh4-variant>summary small,.sh4-region>summary small,.sh4-country>summary small{margin-left:auto;border-radius:20px;background:#ffffff18;color:#d7f3ff;min-width:23px;text-align:center;padding:3px 5px;font-size:10px;line-height:1.2}
.sh4-chevron{color:#c5e0f5;margin-left:2px}.sh4-variant{padding:0 5px 3px 13px;background:#0c233c}
.sh4-variant>summary{min-height:42px;color:#cee4f5;font-weight:700;font-size:13px;padding:6px 8px;border-bottom:1px solid #ffffff0d}
.sh4-variant[open]>summary{color:#fff}
.sh4-all-link{display:block;margin:3px 5px;padding:10px;border-radius:7px;background:#0e485c!important;color:#b8fbee!important;text-decoration:none;font-size:12px;font-weight:700}
.sh4-region{margin:4px 1px}.sh4-region>summary{padding:8px 7px;border-radius:7px;background:#14334f;font-size:12px;color:#daebfa}
.sh4-region[open]>summary{background:#174766;color:#fff}
.sh4-country{margin:3px 0 3px 8px;border-left:1px solid #36506b}
.sh4-country>summary{color:#bbd0e4;font-size:12px;padding:8px 7px}
.sh4-country[open]>summary{color:#fff;background:#183c57}
.sh4-league-link{display:flex!important;align-items:center;gap:9px;padding:8px 6px 8px 10px;min-height:47px;color:#e1f1fc!important;text-decoration:none!important;border-radius:7px;font-size:12px;line-height:1.3;margin:2px;transition:background .15s}
.sh4-league-link:hover,.sh4-league-link.is-selected{background:#257ca9!important}
.sh4-league-link img,.sh4-league-link .sh4-identity{width:31px;height:31px;flex:none;object-fit:contain;border-radius:7px;background:#fff;padding:3px;box-sizing:border-box}
.sh4-identity{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#26a6c4,#226d4e)!important;color:#fff!important;font-weight:900;font-size:15px}
.sh4-identity--team{background:linear-gradient(135deg,#1a8acb,#2f55a4)!important}
.sh4-identity--player{background:linear-gradient(135deg,#767fd6,#364c8e)!important}
.sh4-league-link span:not(.sh4-identity){flex:1;overflow-wrap:anywhere}.sh4-league-link b{color:#68cafd;font-size:19px}
.sh4-no-data{font-size:11px;color:#94aabc;padding:8px 10px 12px}
.sh4-side-bottom{border-top:1px solid #254563;padding:12px;display:grid;gap:7px}
.sh4-side-bottom a{font-size:12px;color:#9bdbfb;text-decoration:none;padding:7px 4px}
.sh4-switcher{display:flex;align-items:center;gap:9px;margin-bottom:10px;flex-wrap:wrap}
.sh4-switcher a,.sh4-switcher button{display:inline-flex;justify-content:center;align-items:center;border:1px solid #d4e2ef;border-radius:9px;background:#fff;color:#195078;text-decoration:none;padding:10px 13px;min-height:43px;font:750 12px/1.25 inherit;font-weight:800;cursor:pointer}
.sh4-switcher .sh4-primary{background:#ecfaf5;color:#047b60;border-color:#a9e5cf}
.sh4-switcher .sh4-season-link{background:#fff4e8;color:#955218;border-color:#f6d4a6}
.sh4-open-btn{display:none!important}
.sh4-mast-status{margin-left:auto;color:#6985a0;font-size:11px;font-weight:650}
.sh4-comp-hero{display:flex;align-items:center;gap:16px;background:linear-gradient(112deg,#092a4c,#176b91 75%,#069c8d);color:#fff;border-radius:17px;padding:23px;min-width:0;margin-bottom:13px}
.sh4-comp-logo{display:grid;place-items:center;flex:none;width:88px;height:88px;background:#ffffffed;border-radius:18px;padding:12px}.sh4-comp-logo img,.sh4-comp-logo .sh4-identity{width:75px;height:75px;object-fit:contain}
.sh4-comp-identity{min-width:0;flex:1}.sh4-eyebrow{font-size:10px;letter-spacing:.11em;font-weight:850;color:#2e97aa}
.sh4-comp-hero .sh4-eyebrow{color:#b0ecfa}.sh4-comp-hero h1{font-size:clamp(20px,2.2vw,33px);line-height:1.18;color:#fff;margin:6px 0 9px;overflow-wrap:anywhere}
.sh4-hero-info{display:flex;gap:7px;flex-wrap:wrap}.sh4-hero-info span{border:1px solid #ffffff58;background:#ffffff21;color:#f0fbff;border-radius:20px;padding:6px 10px;font-size:11px}
.sh4-hero-next{color:#fff;background:#ffffff2b;border:1px solid #ffffff5c;border-radius:10px;padding:12px;font-size:12px;font-weight:800;text-decoration:none}
.sh4-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 10px}
.sh4-section-title h2{margin:3px 0;font-size:clamp(18px,1.7vw,24px);color:#123954}
.sh4-section-title a{color:#146aa0;text-decoration:none;font-size:13px;font-weight:750}
.sh4-season-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;align-items:stretch}
.sh4-season-card{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:0;text-align:center;background:linear-gradient(160deg,#fff,#e9f5fc);border:1px solid #cfdfeb;color:#183850;text-decoration:none;border-radius:15px;padding:15px 9px;min-height:245px;box-shadow:0 5px 12px #0d396a0a;transition:transform .14s,box-shadow .14s}
.sh4-season-card:nth-child(2n){background:linear-gradient(160deg,#fff,#edfcf5)}.sh4-season-card:nth-child(3n){background:linear-gradient(160deg,#fff,#fef3e8)}
.sh4-season-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px #0d396a26}
.sh4-season-index{font-size:10px;font-weight:850;letter-spacing:.09em;color:#457593}
.sh4-season-mark{width:63px;height:63px;border-radius:14px;background:#fff;display:grid;place-items:center;border:1px solid #dbe9f2}.sh4-season-mark img,.sh4-season-mark .sh4-identity{width:52px;height:52px;object-fit:contain}
.sh4-season-year{font-size:clamp(21px,2vw,33px);font-weight:900;line-height:1;color:#0a406b}
.sh4-season-card>strong{font-size:12px;overflow-wrap:anywhere;line-height:1.25}.sh4-season-card>small{font-size:11px;color:#55748e}
.sh4-season-open{margin-top:auto;border-top:1px solid #d2e2ed;width:100%;padding-top:9px;font-weight:780;font-size:11px;color:#1774aa}.sh4-season-open b{margin-left:5px}
.sh4-all-seasons{margin-top:14px;background:#fff;border:1px solid #d8e5ee;border-radius:10px;padding:12px}
.sh4-all-seasons summary{font-weight:800;color:#19557c;cursor:pointer}.sh4-all-seasons>div{display:flex;gap:9px;flex-wrap:wrap;margin-top:11px}.sh4-all-seasons>div a{padding:9px 13px;border-radius:8px;background:#eef7fb;text-decoration:none;color:#1e6898}
.sh4-empty-box{background:#fff;border:1px dashed #c0d3e3;border-radius:15px;padding:24px}.sh4-empty-box h2{margin:0 0 8px;color:#0f4871}.sh4-empty-box p{margin:0 0 11px;color:#5a7086}.sh4-empty-box a{color:#167eac}
.sh4-edition-nav{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-bottom:12px}.sh4-edition-nav a{color:#096ca6;text-decoration:none;font-weight:800}.sh4-edition-nav span{background:#d9f5eb;border-radius:20px;color:#04684e;font-size:12px;font-weight:850;padding:7px 12px}
.sh4-quick-nav{display:flex;gap:6px;overflow-x:auto;white-space:nowrap;margin-bottom:12px;padding-bottom:4px}.sh4-quick-nav a{background:#fff;border:1px solid #d6e6ef;color:#175b87;border-radius:10px;padding:10px 13px;text-decoration:none;font-size:12px;font-weight:750}
.sh4-data-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,1fr);gap:12px;align-items:start}.sh4-info-panel{background:#fff;border:1px solid var(--sh4-stroke);border-radius:15px;min-width:0;overflow:hidden;padding:16px}.sh4-info-panel h3{font-size:17px;color:#113d60;margin:0 0 3px}.sh4-info-panel>p{margin:0 0 13px;font-size:11px;color:#718397}.sh4-info-panel#sh4-scorers{grid-column:2;grid-row:2}
.sh4-result-row{display:flex;align-items:center;gap:11px;color:#1d3b55;text-decoration:none;border-bottom:1px solid #eff3f6;padding:9px 0;min-width:0}.sh4-result-row:hover{background:#f5fbfe}.sh4-result-row time{font-size:11px;color:#69849c;width:62px;flex:none}.sh4-result-row>div{flex:1;min-width:0}.sh4-result-row>div>span{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;overflow:hidden;min-width:0}.sh4-result-row>div img,.sh4-result-row>div .sh4-identity{width:20px;height:20px;flex:none;object-fit:contain}.sh4-result-row strong{font-size:15px;line-height:1.5}.sh4-stand-table{overflow:auto}.sh4-stand-table table{border-collapse:collapse;width:100%;font-size:12px}.sh4-stand-table th{text-align:left;font-size:10px;color:#6d8190;background:#eef5f9;padding:9px 7px}.sh4-stand-table td{padding:9px 7px;border-bottom:1px solid #edf2f4;color:#1b3c52}.sh4-stand-table td:last-child{color:#087b58}
.sh4-scorer-list>div{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #e9f0f4}.sh4-scorer-list>div>small:first-child{width:20px;color:#5f839c}.sh4-scorer-list img,.sh4-scorer-list .sh4-identity{width:34px;height:34px;object-fit:cover;border-radius:50%}.sh4-scorer-list>div>span{display:flex;flex-direction:column;gap:3px;flex:1;font-size:12px;min-width:0}.sh4-scorer-list>div>span small{color:#7690a0}.sh4-scorer-list>div>b{font-size:16px;color:#0b7e60}.sh4-no-data{font-size:12px;color:#6d8495;padding:8px 0}
@media(max-width:1250px){.sh4-season-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sh4-data-grid{grid-template-columns:1fr}.sh4-info-panel#sh4-scorers{grid-column:auto;grid-row:auto}}
@media(max-width:850px){body .sport-layout{display:block!important}body .sport-shell{padding:8px!important}body .sport-masthead{padding:14px!important}body .sport-masthead h1{font-size:24px!important}body .sport-layout .sport-sidebar.sh4-sidebar{display:block!important;position:fixed!important;top:0!important;bottom:0!important;left:0!important;z-index:10002!important;width:min(88vw,350px)!important;max-height:100dvh!important;border-radius:0 16px 16px 0!important;transform:translateX(-104%);transition:transform .2s ease;visibility:hidden;box-shadow:12px 0 40px #00152778!important}body.sh4-open .sport-sidebar.sh4-sidebar{transform:translateX(0);visibility:visible}body.sh4-open{overflow:hidden}body.sh4-open .sh4-backdrop{display:block}.sh4-backdrop{display:none;position:fixed;z-index:10001;inset:0;background:#001b2ba8;border:0;padding:0}.sh4-open-btn{display:inline-flex!important}.sh4-mast-status{display:none}.sh4-comp-hero{padding:14px}.sh4-comp-logo{width:62px;height:62px;padding:6px}.sh4-comp-logo img,.sh4-comp-logo .sh4-identity{width:50px;height:50px}.sh4-comp-hero h1{font-size:21px}.sh4-hero-next{display:none}.sh4-season-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sh4-season-card{min-height:224px}.sh4-switcher{flex-wrap:nowrap;overflow-x:auto}.sh4-switcher a{white-space:nowrap}.sh4-data-grid{grid-template-columns:1fr}body .sport-nav{overflow-x:auto}}
@media(max-width:390px){.sh4-season-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sh4-season-card{padding:12px 6px}.sh4-season-year{font-size:23px}.sh4-comp-hero{gap:9px}.sh4-comp-hero .sh4-eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){.sh4-season-card,.sh4-league-link,.sh4-sidebar{transition:none!important}}

.sh4-side-close{display:none;position:absolute;right:10px;top:10px;border:1px solid #ffffff66;border-radius:8px;width:38px;height:38px;background:#123e62;color:#fff;font-size:23px;cursor:pointer}
@media(max-width:850px){.sh4-side-close{display:block}}

/* V4R1: no DEV /ligas usa sport-layout-wide, mas mantém o explorador à esquerda. */
@media (min-width:851px){
  body .sport-layout.sport-layout-wide{display:grid!important;grid-template-columns:clamp(265px,20vw,344px) minmax(0,1fr)!important}
  body .sport-layout.sport-layout-wide>.sport-sidebar.sh4-sidebar{display:block!important}
}
@media (max-width:850px){body .sport-layout.sport-layout-wide{display:block!important}}
