.special-home{width:min(1180px,calc(100% - 40px));margin:18px auto 10px}
.special-home-card{display:grid;grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:18px;min-height:116px;padding:15px 20px;border:1px solid #5d4b22;border-radius:15px;background:radial-gradient(circle at 8% 30%,#c79d2921,transparent 30%),linear-gradient(135deg,#17150f,#0d1210 70%);color:#f4f6f4;text-decoration:none;box-shadow:0 18px 55px #0004;transition:border-color .2s ease,transform .2s ease}
.special-home-card:hover{border-color:#d5b758;transform:translateY(-1px)}
.special-home-card img{width:72px;height:86px;object-fit:contain}
.special-home-copy{display:grid;gap:5px}.special-home-copy small{color:#d9bc61;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.special-home-copy strong{font-size:clamp(19px,2.2vw,29px);font-weight:900;line-height:1.05;text-transform:uppercase}.special-home-copy span{color:#aeb8b0;font-size:12px}.special-home-action{display:flex;align-items:center;gap:8px;color:#d9bc61;font-size:12px;font-weight:800;white-space:nowrap}
.special-page{width:min(980px,calc(100% - 40px));margin:42px auto 80px}.special-hero{display:grid;grid-template-columns:130px 1fr;align-items:center;gap:25px;margin:18px 0 28px;padding:24px;border:1px solid #5d4b22;border-radius:18px;background:radial-gradient(circle at 12% 35%,#c79d2926,transparent 34%),linear-gradient(145deg,#15150f,#0d1210)}.special-hero img{width:120px;height:142px;object-fit:contain}.special-hero h1{margin:5px 0 8px;font-size:clamp(31px,5vw,58px);font-weight:900;line-height:.95;text-transform:uppercase;letter-spacing:-.04em}.special-hero p{max-width:650px;margin:0;color:#aeb8b0;line-height:1.55}.special-hero .section-kicker{color:#d9bc61}
.special-player-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 13px}.special-player-head h2{margin:4px 0 0;font-size:clamp(20px,3vw,30px)}.special-progress{color:#d9bc61;font-size:12px;font-weight:800}.special-page .player{margin-top:0}.special-page .source{margin-bottom:25px}.special-route{margin-top:26px;padding:20px;border:1px solid #29322c;border-radius:14px;background:#0d1210}.special-route h2{margin:0 0 14px;font-size:16px}.special-route ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;counter-reset:special}.special-route li{display:grid;grid-template-columns:25px 1fr;gap:8px;align-items:center;min-height:54px;padding:0;border:1px solid #28312b;border-radius:9px;color:#8f9c92;font-size:11px}.special-route li:before{display:none}.special-route li.is-current{border-color:#d9bc61;color:#fff;background:#d9bc610c}.special-route li.is-complete{color:#b7c2b9}.special-route li strong{display:block;color:inherit}.special-route li small{display:block;margin-top:3px;color:#768178}.special-route li button{display:grid;grid-template-columns:25px 1fr;gap:8px;align-items:center;width:100%;min-height:54px;padding:9px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit}.special-route li button:before{counter-increment:special;content:counter(special);display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#182019;color:#91a096;font-weight:800}.special-route li.is-current button:before,.special-route li.is-complete button:before{background:#d9bc61;color:#171208}.special-route li button:focus-visible{outline:2px solid #d9bc61;outline-offset:2px;border-radius:8px}
.special-player-nav{display:flex;justify-content:space-between;gap:12px;margin:12px 0 4px}.special-player-nav .button{min-width:150px}.special-player-nav .button:disabled{opacity:.35;cursor:not-allowed}
.specials-directory{width:min(1180px,calc(100% - 40px));margin:42px auto 80px}.specials-directory-head{max-width:720px;margin-bottom:24px}.specials-directory-head h1{margin:7px 0 10px;font-size:clamp(32px,5vw,58px);font-weight:900;line-height:.95;text-transform:uppercase;letter-spacing:-.04em}.specials-directory-head p{margin:0;color:#aeb8b0;line-height:1.6}.specials-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.specials-grid .special-home{width:auto;margin:0}.specials-grid .special-home-card{height:100%;grid-template-columns:96px minmax(0,1fr) auto;min-height:150px}.specials-grid .special-home-card img{width:86px;height:100px}.specials-directory .back{display:inline-flex;margin-bottom:16px}.catalog-special-link{display:inline-flex;align-items:center;text-decoration:none;white-space:nowrap}.special-home-card.special-madrid{border-color:#535b73;background:radial-gradient(circle at 9% 30%,#7788ba2b,transparent 34%),linear-gradient(135deg,#111624,#0d1210 72%)}.special-home-card.special-madrid:hover{border-color:#9baddf}.special-home-card.special-madrid .special-home-copy small,.special-home-card.special-madrid .special-home-action{color:#b9c8f4}
@media(max-width:760px){.special-home{width:calc(100% - 28px);margin-top:12px}.special-home-card{grid-template-columns:58px 1fr auto;gap:11px;min-height:88px;padding:11px 13px}.special-home-card img{width:53px;height:63px}.special-home-copy strong{font-size:16px}.special-home-copy span{display:none}.special-home-action span{display:none}.special-page{width:calc(100% - 28px);margin-top:24px}.special-hero{grid-template-columns:78px 1fr;gap:15px;padding:17px}.special-hero img{width:75px;height:90px}.special-hero h1{font-size:29px}.special-hero p{font-size:12px}.special-player-head{align-items:flex-start;flex-direction:column;gap:5px}.special-route{padding:14px}.special-route ol{grid-template-columns:repeat(2,minmax(0,1fr))}.specials-directory{width:calc(100% - 28px);margin-top:24px}.specials-grid{grid-template-columns:1fr}.specials-grid .special-home-card{grid-template-columns:68px 1fr auto;min-height:108px}.specials-grid .special-home-card img{width:62px;height:72px}}
@media(max-width:560px){.special-player-nav .button{min-width:0;flex:1;padding-inline:10px;font-size:11px}}
@media(max-width:410px){.special-home-card{grid-template-columns:52px minmax(0,1fr) 18px}.special-home-copy strong{font-size:14px}.special-route ol{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.special-home-card{transition:none}}

/* Compact visual competition switcher: every control keeps a full accessible name. */
body.home-design .leagues{align-items:stretch}
body.home-design .league.league-icon-button{display:grid;place-items:center;flex:0 1 52px;width:52px;min-width:42px;max-width:58px;min-height:38px;padding:5px 7px}
body.home-design .league-icon-button img{display:block;width:36px;height:24px;object-fit:contain}
body.home-design .league-icon-button svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
body.home-design .league-icon-button svg rect,body.home-design .league-icon-button svg path:first-child{fill:currentColor;stroke:none}
body.home-design .league-icon-button .competition-symbol{font-size:19px;line-height:1}
body.home-design .league-icon-button[aria-label="Primera"] img,body.home-design .league-icon-button[aria-label="Segunda"] img{width:28px;height:27px}
body.home-design .league-icon-button[aria-label="Premier"] img{width:35px;height:23px}
body.home-design .league-icon-button[aria-label="Premier"] img{filter:brightness(0) invert(1);opacity:.96}
body.home-design .league-icon-button[aria-label="Bundesliga"] img{width:40px;height:19px;filter:invert(1)}
body.home-design .league-icon-button[aria-label="Champions"] img{width:27px;height:27px;filter:invert(1)}
body.home-design .league-icon-button[aria-pressed="true"] img{filter:none}
body.home-design .league-icon-button[aria-label="Premier"][aria-pressed="true"] img{filter:none;opacity:1}
body.home-design .league-icon-button[aria-pressed="true"][aria-label="Bundesliga"] img,body.home-design .league-icon-button[aria-pressed="true"][aria-label="Champions"] img{filter:brightness(.1)}
body.home-design .catalog-special-link.league-icon-button{color:#d9bc61}
body.home-design .catalog-special-link.league-icon-button:hover{color:#f3d77e}
@media(max-width:850px){body.home-design .leagues{display:flex;grid-template-columns:none;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}body.home-design .leagues::-webkit-scrollbar{display:none}body.home-design .league.league-icon-button{flex:0 0 44px;width:44px;min-width:44px;min-height:34px;padding:4px}}

/* Specials directory: contain the decorative backdrop and give the legal footer room to breathe. */
body:has(.specials-directory)>footer.site-footer{display:flex;width:min(1180px,calc(100% - 40px));max-width:none;margin:0 auto;padding:20px 0 28px;border-top:1px solid #252b30;background:none;justify-content:space-between;align-items:center;gap:24px;color:#7f8b82;font-size:11px}
body:has(.specials-directory)>footer.site-footer p{margin:0}
body:has(.specials-directory)>footer.site-footer nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px 18px}
body:has(.specials-directory)>footer.site-footer nav a,body:has(.specials-directory)>footer.site-footer .privacy-settings{display:inline-flex;align-items:center;min-height:30px}
body:has(.specials-directory)>footer.site-footer a:hover{color:#c2cec0}
@media(max-width:760px){
 body:has(.specials-directory){background-image:radial-gradient(circle at 50% 8%,#18302655 0,transparent 36%),linear-gradient(#090b0db8,#090b0df0 62%,#090b0d)!important;background-color:#090b0d!important;background-size:auto!important;background-position:center!important;background-attachment:scroll!important}
 body:has(.specials-directory) .specials-directory{max-width:calc(100% - 28px)}
 body:has(.specials-directory) .specials-grid,body:has(.specials-directory) .special-home,body:has(.specials-directory) .special-home-card,body:has(.specials-directory) .special-home-copy{min-width:0;max-width:100%}
 body:has(.specials-directory)>footer.site-footer{display:block;width:calc(100% - 28px);margin:0 auto;padding:20px 0 26px;font-size:11px}
 body:has(.specials-directory)>footer.site-footer nav{justify-content:flex-start;margin-top:15px;gap:8px 16px}
 body:has(.specials-directory)>footer.site-footer nav a,body:has(.specials-directory)>footer.site-footer .privacy-settings{min-height:34px;white-space:nowrap}
}

/* RTVE renders its own accessible fullscreen control. Hiding the duplicate
   NoSpo control keeps the provider's ad skip action fully visible. */
.player.rtve-player>.fullscreen-button{display:none!important}

/* RTVE is shown with its complete native UI, so NoSpo must not mask any edge. */
.player.rtve-native-ui::before,.player.rtve-native-ui::after{display:none!important;content:none!important;pointer-events:none!important}

/* Specials use the same local typography as the rest of NoSpo. */
.special-home,.special-page,.specials-directory,.special-home button,.special-page button,.specials-directory button{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
.special-home-copy strong,.special-hero h1,.specials-directory-head h1{font-family:inherit;font-weight:900;line-height:1.04;overflow-wrap:anywhere;text-wrap:balance}
.special-player-head h2,.special-route h2{font-family:inherit;font-weight:800;line-height:1.15}

/* The same compact, current footer is used on every specials screen. */
body:has(.special-page)>footer.site-footer,body:has(.specials-directory)>footer.site-footer{display:flex;width:min(1180px,calc(100% - 40px));max-width:none;margin:0 auto;padding:20px 0 28px;border-top:1px solid #252b30;background:none;justify-content:space-between;align-items:center;gap:24px;color:#7f8b82;font:11px/1.45 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body:has(.special-page)>footer.site-footer p,body:has(.specials-directory)>footer.site-footer p{margin:0}
body:has(.special-page)>footer.site-footer nav,body:has(.specials-directory)>footer.site-footer nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px 18px}
body:has(.special-page)>footer.site-footer nav a,body:has(.special-page)>footer.site-footer .privacy-settings,body:has(.specials-directory)>footer.site-footer nav a,body:has(.specials-directory)>footer.site-footer .privacy-settings{display:inline-flex;align-items:center;min-height:30px}
@media(max-width:760px){body:has(.special-page)>footer.site-footer,body:has(.specials-directory)>footer.site-footer{display:block;width:calc(100% - 28px);padding:20px 0 26px}body:has(.special-page)>footer.site-footer nav,body:has(.specials-directory)>footer.site-footer nav{justify-content:flex-start;margin-top:15px;gap:8px 16px}}

/* Specials keep the slim spoiler bars while exposing the provider controls. */
.special-page .player.special-native-player::before,.special-page .player.special-native-player::after{display:block!important;content:""!important;pointer-events:auto!important}
