/* v4 player-entry and coupon workspace */
.guest-body{min-height:100vh;background:radial-gradient(circle at 80% 0,#21163f 0,#101522 35%,#0d121b 72%);color:#edf0f5}.guest-shell{width:min(1420px,calc(100% - 42px));margin:0 auto}.guest-header{height:82px;display:flex;align-items:center;gap:22px}.guest-logo{font-size:24px;font-weight:900;letter-spacing:-1px;font-style:italic;display:flex;align-items:center;gap:8px}.guest-logo .logo-mark{width:30px;height:30px}.guest-header-actions{margin-left:auto;display:flex;gap:10px}.guest-main{padding:24px 0 34px}.guest-dashboard{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.72fr);gap:14px}.guest-dashboard .portal-welcome{grid-area:auto;min-height:390px}.guest-dashboard .portal-welcome-copy{padding:42px 24px 38px 34px}.guest-dashboard .portal-welcome-copy h1{font-size:50px}.guest-dashboard .portal-welcome-copy p{font-size:14px}.guest-cta-row{display:flex;gap:10px;margin-top:25px;flex-wrap:wrap}.guest-cta-row .btn{min-width:128px}.guest-dashboard .portal-side-stack{grid-area:auto}.guest-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.guest-benefit{padding:20px;border:1px solid var(--border);border-radius:14px;background:#151c29;display:flex;gap:13px;align-items:center}.guest-benefit .icon{color:var(--lime);width:24px;height:24px}.guest-benefit strong{display:block;margin-bottom:4px}.guest-benefit small{line-height:1.5}.guest-partners{margin:24px 0}.guest-footer-pro{margin-top:12px;padding:26px 0 40px;border-top:1px solid var(--border);display:grid;gap:22px;color:#9aa6b8}.guest-footer-top{display:grid;grid-template-columns:minmax(240px,1.6fr) repeat(3,minmax(150px,1fr));gap:26px}.guest-footer-brand{display:grid;gap:12px}.guest-footer-logo{font-size:22px}.guest-footer-brand p{max-width:420px;line-height:1.75}.guest-footer-about{color:#dbe4f2;font-size:13px}.guest-footer-col{display:grid;gap:11px;align-content:start}.guest-footer-col strong{color:#f1f4fa;font-size:13px}.guest-footer-col a,.guest-footer-col button{justify-self:start;color:#9aa6b8;font-size:13px}.guest-footer-col a:hover,.guest-footer-col button:hover,.guest-footer-about:hover{color:var(--lime)}.guest-footer-badges{display:flex;flex-wrap:wrap;gap:10px;padding:20px 0;border-top:1px solid #232e40;border-bottom:1px solid #232e40}.guest-footer-badges span{padding:11px 14px;border:1px solid #314055;border-radius:10px;background:#101723;font-size:11px;font-weight:800;letter-spacing:.7px;color:#d5deea}.guest-footer-bottom{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:12px;color:#7e8da3}.guest-footer-links{display:flex;gap:18px;flex-wrap:wrap}.guest-footer-links a:hover{color:var(--lime)}.football-sponsors .partner-strip-head span{color:#67d36d}.football-sponsors .partner-logos span{background:linear-gradient(180deg,#141d28,#101722);border-color:#35475c}.guest-message{margin:0 auto 10px;padding:12px 15px;border:1px solid #3e5636;border-radius:10px;background:#233021;color:#d4edc7}.guest-message.error{border-color:#613542;background:#34212a;color:#ffc1cb}#guest-auth.guest-auth-dialog{width:min(1120px,calc(100% - 24px));padding:0;border-radius:26px;overflow:hidden;background:#0e1420;border:1px solid #2a3346}#guest-auth.guest-auth-dialog::backdrop{background:#060c18cc;backdrop-filter:blur(8px)}.guest-auth-modal{display:grid;grid-template-columns:minmax(290px,.95fr) minmax(320px,1.05fr);min-height:620px;position:relative}.guest-auth-visual{background:radial-gradient(circle at 35% 40%,#264fdb33 0,#11182b 33%,#0a0f18 70%);position:relative;overflow:hidden}.guest-auth-visual-inner{position:absolute;inset:0;padding:26px;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(180deg,#09101c 0,#0a0f18 100%)}.guest-auth-copy{position:absolute;left:26px;right:26px;bottom:22px;z-index:3;display:grid;gap:8px}.guest-auth-copy strong{font-size:30px;font-style:italic}.guest-auth-copy p{font-size:13px;color:#a6b4c7;max-width:310px}.guest-auth-crest{width:220px;height:220px;border-radius:30px;position:relative;background:linear-gradient(145deg,#0c1b33,#11254f 38%,#0d1526 72%);box-shadow:inset 0 0 0 1px #6fb0ff30,0 0 45px #2b66ff44,0 18px 80px #0009;transform:rotate(-8deg) translateY(-20px)}.guest-auth-crest:before,.guest-auth-crest:after{content:'';position:absolute;background:linear-gradient(180deg,#7fcdff,#1f63ff)}.guest-auth-crest:before{width:82px;height:160px;left:108px;top:22px;clip-path:polygon(0 0,100% 8%,100% 100%,27% 100%,0 78%);border-radius:26px;box-shadow:0 0 25px #2a87ff66}.guest-auth-crest:after{width:95px;height:95px;left:42px;top:78px;clip-path:polygon(0 58%,56% 0,100% 25%,44% 100%);border-radius:20px;box-shadow:0 0 25px #2a87ff66}.guest-auth-people{position:absolute;inset:0;pointer-events:none}.auth-person{position:absolute;bottom:0;width:110px;height:270px;border-radius:28px 28px 0 0;background:linear-gradient(180deg,#1c2433,#0f1420 58%,transparent 100%);filter:drop-shadow(0 14px 26px #0008)}.auth-person:before{content:'';position:absolute;left:32px;top:8px;width:44px;height:44px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#c7d5f5 0,#8292b4 48%,#425173 100%)}.auth-person:after{content:'';position:absolute;left:22px;top:58px;width:66px;height:118px;border-radius:18px;background:linear-gradient(180deg,#24344d,#121a29)}.auth-person-left{left:14px;transform:scale(.9)}.auth-person-right{right:18px;height:255px}.guest-auth-panel{background:#0d121c;display:flex;align-items:center;justify-content:center;padding:36px 28px}.guest-auth-panel-body{width:min(100%,400px);display:grid;gap:14px}.guest-auth-tabs{display:flex;gap:20px;border-bottom:1px solid #1e2838;padding-bottom:14px;margin-bottom:12px}.guest-auth-tab{font-size:18px;font-weight:700;color:#7c899d;padding:0 0 8px;border-bottom:2px solid transparent}.guest-auth-tab.active{color:#f4f7fb;border-color:#3773ff}.guest-auth-subtitle{margin-top:-6px;color:#8e9cb1;font-size:14px;line-height:1.6}.guest-auth-form{margin:4px 0 0}.guest-auth-form input{background:#0f1520;border:1px solid #1f2a3a;border-radius:13px;padding:14px 15px;color:#f3f7fb}.guest-auth-form input::placeholder{color:#677488}.guest-auth-form .field-label{gap:8px}.guest-auth-form .btn.primary{margin-top:4px;border-radius:13px;min-height:50px;font-size:16px}.guest-auth-switch{text-align:center!important;margin:10px 0 0!important}.guest-auth-switch button{color:#fff;font-weight:800}.guest-check{display:flex;align-items:flex-start;gap:10px;color:#aab6c8;font-size:12px;line-height:1.5}.guest-check input{width:18px;height:18px;flex:none;accent-color:#2c67ff;margin-top:1px}.guest-form-error{padding:10px 12px;border-radius:8px;background:#3b222b;color:#ffb8c4;border:1px solid #623342;font-size:12px}
.betslip-v4 .slip-heading{align-items:flex-start}.betslip-v4 .slip-pick-list{display:grid;gap:8px;max-height:330px;overflow:auto;padding-right:2px}.betslip-v4 .slip-pick{margin:0;border:1px solid #2d394b;border-radius:9px}.betslip-v4 .slip-pick>small{display:block;margin:9px 0 2px;color:#6f7f96}.betslip-v4 .slip-pick p span{color:#77869c}.slip-actions-v4{display:grid;grid-template-columns:1fr 1.35fr;gap:8px}.coupon-history-link{display:block;text-align:center;color:var(--lime);font-size:11px;font-weight:700;margin-top:12px}.coupon-workspace{padding:22px;margin-bottom:28px;background:linear-gradient(145deg,#1c2533,#151d29)}.coupon-workspace-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:19px}.coupon-workspace-head p:not(.section-label){color:var(--muted);font-size:12px;margin-top:6px}.coupon-editor-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:16px}.coupon-selection-list{display:grid;gap:8px}.coupon-selection{display:grid;grid-template-columns:34px minmax(0,1fr) auto 38px;gap:12px;align-items:center;border:1px solid var(--border);border-radius:10px;background:#141b26;padding:13px}.coupon-number{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:#27342b;color:var(--lime);font-size:11px;font-weight:800}.coupon-selection div{display:grid;gap:3px}.coupon-selection small{font-size:9px;color:#8190a6;letter-spacing:.4px}.coupon-selection p{font-size:11px;color:var(--muted)}.coupon-odd{color:var(--lime);font-size:16px}.coupon-summary{border:1px solid var(--border);border-radius:12px;background:#111823;padding:16px;display:grid;gap:13px;align-content:start}.stake-input-v4{position:relative}.stake-input-v4 input{padding-right:50px}.stake-input-v4 span{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:11px;color:var(--muted)}.coupon-math{display:grid;gap:9px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:13px 0}.coupon-math>div{display:flex;justify-content:space-between;gap:10px;font-size:12px}.coupon-empty-v4{min-height:115px;border:1px dashed #354154;border-radius:12px;padding:20px;display:grid;grid-template-columns:auto 1fr auto;gap:15px;align-items:center;color:var(--muted)}.coupon-empty-v4>.icon{width:32px;height:32px;color:var(--lime)}.coupon-empty-v4 strong{color:#edf0f5;display:block;margin-bottom:5px}.saved-coupons-section,.bet-history-section{margin-top:28px}.section-heading-v4{margin-bottom:13px}.section-heading-v4 h2,.history-toolbar h2{font-size:20px}.saved-coupon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.saved-coupon{padding:17px}.saved-coupon .between>div{display:grid;gap:3px}.saved-coupon-legs{display:grid;gap:7px;margin:15px 0}.saved-coupon-legs>div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #273141;padding-bottom:7px;font-size:11px}.saved-coupon-legs>small{color:var(--muted)}.saved-coupon-stats{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:10px;color:var(--muted);margin-bottom:13px}.saved-coupon-stats strong{font-size:14px;color:var(--lime)}.saved-coupon-actions{display:grid;grid-template-columns:1fr 1.2fr 38px;gap:7px}.saved-coupon-actions .btn{padding:8px 10px;min-height:38px;font-size:11px}.coupon-empty-saved{color:var(--muted);padding:18px}.history-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.history-pills{overflow:auto;max-width:100%}.history-list-v4{display:grid;gap:11px}.history-bet-card{padding:0;overflow:hidden}.history-bet-top,.history-bet-bottom{padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.history-bet-top{border-bottom:1px solid var(--border)}.history-legs{padding:0 18px}.history-leg{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #273141}.history-leg div{display:grid;gap:4px}.history-leg p{font-size:11px;color:var(--muted)}.history-bet-bottom{background:#151d28;justify-content:flex-start;gap:38px}.history-bet-bottom>div{display:grid;gap:3px}.history-bet-bottom small{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.match-coupon-shortcut{display:flex;justify-content:flex-end;margin-top:15px}
@media(max-width:1000px){.guest-dashboard{grid-template-columns:1fr}.guest-dashboard .portal-side-stack{grid-template-columns:1fr 1fr}.coupon-editor-grid{grid-template-columns:1fr}.saved-coupon-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.guest-shell{width:min(100% - 24px,1420px)}.guest-header{height:68px}.guest-header-actions .btn{padding:9px 12px;min-height:38px;font-size:11px}.guest-main{padding-top:8px}.guest-dashboard .portal-welcome{grid-template-columns:1fr;min-height:auto}.guest-dashboard .portal-welcome-copy{padding:26px 19px 18px}.guest-dashboard .portal-welcome-copy h1{font-size:38px}.guest-dashboard .portal-side-stack{grid-template-columns:1fr}.guest-benefits{grid-template-columns:1fr}.guest-footer-top{grid-template-columns:1fr}.guest-footer-bottom{flex-direction:column;align-items:flex-start}.guest-auth-modal{grid-template-columns:1fr;min-height:auto}.guest-auth-visual{min-height:240px}.guest-auth-panel{padding:24px 18px}.coupon-workspace{padding:15px 12px}.coupon-workspace-head{display:grid}.coupon-workspace-head>.flex{width:100%}.coupon-workspace-head>.flex>*{flex:1}.coupon-selection{grid-template-columns:28px minmax(0,1fr) auto 32px;gap:7px;padding:11px 8px}.coupon-odd{font-size:14px}.saved-coupon-grid{grid-template-columns:1fr}.history-toolbar{align-items:flex-start;flex-direction:column}.history-pills{width:100%;overflow-x:auto}.history-bet-top{align-items:flex-start;flex-direction:column}.history-bet-bottom{gap:20px;justify-content:space-between}.coupon-empty-v4{grid-template-columns:auto 1fr}.coupon-empty-v4 .btn{grid-column:1/-1}.slip-actions-v4{grid-template-columns:1fr}.match-coupon-shortcut .btn{width:100%}}


/* v8 guest polish: top auth tabs, seamless sponsor motion, footer pinned to page bottom */
.guest-body{min-height:100vh;min-height:100dvh}.guest-shell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.guest-main{flex:1 0 auto}.guest-footer-pro{margin-top:auto;flex:none}

/* Auth: no side artwork; navigation stays above form */
#guest-auth.guest-auth-dialog{width:min(560px,calc(100% - 24px));max-height:min(92dvh,820px);padding:0;border-radius:22px;overflow:hidden;background:#0d121c;border:1px solid #2a3346}
#guest-auth.guest-auth-dialog .guest-auth-modal{display:block;min-height:0;position:relative;background:#0d121c}
#guest-auth.guest-auth-dialog .guest-auth-visual{display:none!important}
.guest-auth-top{padding:22px 28px 0;background:linear-gradient(180deg,#111827,#0d121c);border-bottom:1px solid #1f2939}
.guest-auth-brandline{display:flex;align-items:center;gap:10px;padding-right:34px;margin-bottom:20px}.guest-auth-brandline strong{font-size:20px;font-style:italic}.guest-auth-brandline small{margin-left:auto;font-size:9px;letter-spacing:1.6px;color:#75839a;font-weight:800}
.guest-auth-tabs{display:grid!important;grid-template-columns:1fr 1fr;gap:0!important;border:0!important;padding:0!important;margin:0!important}
.guest-auth-tab{min-height:46px!important;padding:0 12px!important;border:0!important;border-bottom:2px solid transparent!important;border-radius:0!important;font-size:14px!important;font-weight:800!important;color:#77859a!important;background:transparent!important}
.guest-auth-tab.active{color:#fff!important;border-bottom-color:var(--lime)!important;background:linear-gradient(180deg,transparent,#c3f5500c)!important}
#guest-auth.guest-auth-dialog .guest-auth-panel{display:block;padding:26px 28px 28px;background:#0d121c}
#guest-auth.guest-auth-dialog .guest-auth-panel-body{width:100%;display:grid;gap:12px}
#guest-auth.guest-auth-dialog .guest-auth-panel-body h2{font-size:25px;margin:0 0 2px}.guest-auth-subtitle{margin:0 0 4px!important}
#guest-auth.guest-auth-dialog .dialog-close{z-index:8;right:16px;top:14px;width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#ffffff06;color:#99a6b8}

/* Sponsor marquees */
.football-sponsors{overflow:hidden}.football-sponsors .partner-strip-head{position:relative;z-index:2;background:#151d28;padding-right:8px}.sponsor-marquee{min-width:0;flex:1;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.sponsor-track{display:flex;width:max-content;gap:10px;align-items:center;animation:sponsor-scroll 24s linear infinite;will-change:transform}.sponsor-marquee:hover .sponsor-track,.guest-footer-badges:hover .footer-badge-track{animation-play-state:paused}
.sponsor-track span{padding:10px 15px;border:1px solid #33465a;background:linear-gradient(180deg,#111a26,#0d141f);border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.9px;color:#d6e0ed;white-space:nowrap;box-shadow:inset 0 1px #ffffff08}
@keyframes sponsor-scroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 5px))}}

.guest-footer-badges{display:block!important;overflow:hidden;padding:18px 0!important;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.footer-badge-track{display:flex;width:max-content;gap:10px;align-items:center;animation:badge-scroll 28s linear infinite;will-change:transform}.footer-badge-track span{display:inline-flex;align-items:center;min-height:40px;padding:9px 15px!important;border-radius:999px!important;white-space:nowrap}
@keyframes badge-scroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 5px))}}

@media(max-width:700px){
  #guest-auth.guest-auth-dialog{width:calc(100% - 16px);max-height:94dvh;border-radius:18px}
  .guest-auth-top{padding:18px 16px 0}.guest-auth-brandline{margin-bottom:14px}.guest-auth-brandline small{display:none}
  #guest-auth.guest-auth-dialog .guest-auth-panel{padding:20px 16px 22px}.guest-auth-tab{min-height:44px!important;font-size:13px!important}
  .football-sponsors{display:grid!important;gap:12px;padding:15px 0!important}.football-sponsors .partner-strip-head{padding:0 15px}.sponsor-marquee{width:100%}.sponsor-track{animation-duration:20s}.sponsor-track span{padding:9px 13px;font-size:9px}
  .guest-footer-pro{padding-bottom:max(28px,env(safe-area-inset-bottom))}.footer-badge-track{animation-duration:24s}
}
@media(prefers-reduced-motion:reduce){.sponsor-track,.footer-badge-track{animation:none}.sponsor-marquee,.guest-footer-badges{overflow-x:auto;mask-image:none;-webkit-mask-image:none;scrollbar-width:none}}


/* v9 — football sponsor marquee: flat, muted, continuous, reference-inspired */
.football-sponsor-marquee{
  width:100%;display:grid;grid-template-columns:minmax(190px,260px) minmax(0,1fr);align-items:center;
  min-height:78px;margin:24px 0;border-top:1px solid #ffffff08;border-bottom:1px solid #ffffff08;
  background:linear-gradient(90deg,#0b1423 0%,#080b11 48%,#120b12 100%);overflow:hidden;
}
.football-sponsor-copy{padding:14px 22px;display:grid;gap:4px;position:relative;z-index:4;background:linear-gradient(90deg,#0b1423 78%,transparent)}
.football-sponsor-copy>span{font-size:10px;letter-spacing:1.8px;font-weight:900;color:#8f9eb2}.football-sponsor-copy small{font-size:10px;color:#58667b;line-height:1.35}
.football-sponsor-window{min-width:0;overflow:hidden;position:relative;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.football-sponsor-track{display:flex;align-items:center;width:max-content;animation:football-sponsor-loop 38s linear infinite;will-change:transform}
.football-sponsor-window:hover .football-sponsor-track,.guest-footer-sponsor-marquee:hover .guest-footer-sponsor-track{animation-play-state:paused}
.football-sponsor-item{display:inline-flex;align-items:center;gap:10px;padding:0 27px;height:76px;white-space:nowrap;color:#788397;opacity:.58;filter:grayscale(1);transition:opacity .2s ease,filter .2s ease,transform .2s ease}
.football-sponsor-item:hover{opacity:1;filter:grayscale(0);transform:translateY(-1px)}
.football-sponsor-mark{width:27px;height:27px;display:grid;place-items:center;border-radius:8px;border:1px solid currentColor;font-size:10px;font-weight:900;letter-spacing:-.3px;opacity:.8}
.football-sponsor-name{font-size:15px;font-weight:800;letter-spacing:-.15px}
@keyframes football-sponsor-loop{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.guest-footer-sponsor-marquee{overflow:hidden;border-top:1px solid #ffffff08;border-bottom:1px solid #ffffff08;background:#090d14;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.guest-footer-sponsor-track{display:flex;width:max-content;align-items:center;animation:football-sponsor-loop 44s linear infinite;will-change:transform}
.guest-footer-sponsor-track .football-sponsor-item{height:62px;padding:0 25px;opacity:.46}.guest-footer-sponsor-track .football-sponsor-name{font-size:13px}.guest-footer-sponsor-track .football-sponsor-mark{width:24px;height:24px;font-size:9px}
.guest-footer-trust-row{display:flex;gap:10px;flex-wrap:wrap;padding:16px 0;border-bottom:1px solid #232e40}.guest-footer-trust-row span{font-size:10px;font-weight:800;letter-spacing:.7px;color:#76859a;border:1px solid #273447;border-radius:999px;padding:8px 11px;background:#0d141e}

/* Old sponsor pills are superseded by the flat marquee */
.football-sponsors{display:none!important}

@media(max-width:700px){
  .football-sponsor-marquee{grid-template-columns:1fr;min-height:0;margin:18px 0}.football-sponsor-copy{padding:13px 14px 7px;background:transparent}.football-sponsor-copy small{display:none}
  .football-sponsor-item{height:58px;padding:0 17px;gap:8px}.football-sponsor-name{font-size:12px}.football-sponsor-mark{width:22px;height:22px;font-size:8px;border-radius:6px}.football-sponsor-track{animation-duration:28s}
  .guest-footer-sponsor-track{animation-duration:32s}.guest-footer-sponsor-track .football-sponsor-item{height:52px;padding:0 16px}.guest-footer-trust-row{gap:7px}.guest-footer-trust-row span{font-size:9px;padding:7px 9px}
}
@media(prefers-reduced-motion:reduce){.football-sponsor-window,.guest-footer-sponsor-marquee{scrollbar-width:none}}

/* v10 — local SVG sponsor logos */
.football-sponsor-item{gap:0;min-width:150px;justify-content:center;color:#c8d1df;filter:none;opacity:.54}
.football-sponsor-logo{display:block;height:30px;width:auto;max-width:165px;object-fit:contain;filter:grayscale(1) brightness(1.15);opacity:.9;transition:opacity .2s ease,filter .2s ease,transform .2s ease}
.football-sponsor-item:hover .football-sponsor-logo{opacity:1;filter:grayscale(0) brightness(1.35);transform:translateY(-1px)}
.football-sponsor-mark,.football-sponsor-name{display:none!important}
.guest-footer-sponsor-track .football-sponsor-logo{height:25px;max-width:145px}
.footer-svg-partners>div{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important}
.footer-svg-partners img{width:100%;height:25px;object-fit:contain;object-position:left center;opacity:.6;filter:grayscale(1) brightness(1.15)}
.footer-svg-partners img:hover{opacity:1;filter:grayscale(0) brightness(1.35)}
@media(max-width:700px){.football-sponsor-item{min-width:118px;padding:0 14px}.football-sponsor-logo{height:24px;max-width:120px}.guest-footer-sponsor-track .football-sponsor-logo{height:21px;max-width:110px}}
/* v14: non-clickable footer labels use the same visual rhythm as links. */
.guest-footer-col > span,.guest-footer-links > span{color:var(--muted);font-size:13px;line-height:1.4}
.guest-footer-col > button.text-link{display:block;width:max-content;padding:0;background:none;border:0;text-align:left}


/* v16 sponsor ribbon: always moving, full-color SVG sprite, glass cards */
.football-sponsor-marquee{border:1px solid #ffffff0b;border-radius:18px;background:linear-gradient(90deg,#0c1421,#0a0f18 45%,#111021);box-shadow:0 16px 44px #0003}
.football-sponsor-copy{background:linear-gradient(90deg,#0c1421 76%,transparent)}
.football-sponsor-track{animation:football-sponsor-loop 30s linear infinite!important;transform:translateZ(0);backface-visibility:hidden}
.guest-footer-sponsor-track{animation:football-sponsor-loop 36s linear infinite!important;transform:translateZ(0);backface-visibility:hidden}
.football-sponsor-item{min-width:168px;height:76px;padding:0 24px;opacity:1!important;filter:none!important;transition:transform .22s ease,background .22s ease}
.football-sponsor-item:hover{transform:translateY(-2px);background:#ffffff05}
.football-sponsor-logo{display:block;width:148px;height:38px;max-width:148px;overflow:visible;opacity:1!important;filter:none!important;transition:transform .2s ease}
.football-sponsor-item:hover .football-sponsor-logo{filter:none!important;transform:scale(1.045)}
.guest-footer-sponsor-track .football-sponsor-logo{width:132px;height:30px;max-width:132px;filter:none!important}
.footer-svg-partners>div{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important}
.footer-svg-partners .footer-sponsor-logo{width:100%;height:30px;max-width:145px;overflow:visible;opacity:.9;filter:none!important}
@media(max-width:700px){.football-sponsor-track{animation-duration:24s!important}.guest-footer-sponsor-track{animation-duration:29s!important}.football-sponsor-item{min-width:132px;padding:0 14px}.football-sponsor-logo{width:112px;height:30px}.guest-footer-sponsor-track .football-sponsor-logo{width:104px;height:25px}}

/* ======================================================
   V20 GUEST SPONSORS
   direct SVG files / sharp / equal slots
   ====================================================== */

.sponsor-v20,
.sponsor-v20-footer{
  overflow:hidden!important;
}

.sponsor-v20 .football-sponsor-window,
.sponsor-v20-footer{
  position:relative;
  overflow:hidden!important;
}

.sponsor-v20 .football-sponsor-track,
.sponsor-v20-footer .guest-footer-sponsor-track{
  display:flex!important;
  align-items:center!important;
  width:max-content!important;
  gap:0!important;

  animation:sponsor-v20-loop 36s linear infinite!important;

  filter:none!important;
  opacity:1!important;

  will-change:transform;
}

.sponsor-v20 .football-sponsor-item,
.sponsor-v20-footer .football-sponsor-item{
  width:170px!important;
  min-width:170px!important;
  height:72px!important;

  padding:11px 18px!important;

  display:flex!important;
  justify-content:center!important;
  align-items:center!important;

  box-sizing:border-box!important;

  filter:none!important;
  opacity:1!important;
  transform:none!important;
}

.sponsor-v20 .football-sponsor-logo,
.sponsor-v20-footer .football-sponsor-logo{
  display:block!important;

  width:auto!important;
  height:auto!important;

  max-width:135px!important;
  max-height:44px!important;

  object-fit:contain!important;
  object-position:center!important;

  filter:none!important;
  opacity:1!important;
  transform:none!important;

  image-rendering:auto!important;
}

/* compact logos */
.sponsor-v20 .sponsor-lays img,
.sponsor-v20-footer .sponsor-lays img{
  max-width:52px!important;
  max-height:52px!important;
}

.sponsor-v20 .sponsor-playstation img,
.sponsor-v20-footer .sponsor-playstation img{
  max-width:55px!important;
  max-height:48px!important;
}

/* wide logos */
.sponsor-v20 .sponsor-qatarairways img,
.sponsor-v20-footer .sponsor-qatarairways img{
  max-width:140px!important;
  max-height:38px!important;
}

.sponsor-v20 .sponsor-adidas img,
.sponsor-v20-footer .sponsor-adidas img{
  max-width:125px!important;
  max-height:42px!important;
}

.sponsor-v20 .sponsor-cocacola img,
.sponsor-v20-footer .sponsor-cocacola img{
  max-width:132px!important;
  max-height:42px!important;
}

.sponsor-v20 .sponsor-visa img,
.sponsor-v20-footer .sponsor-visa img{
  max-width:105px!important;
  max-height:36px!important;
}

.sponsor-v20 .sponsor-heineken img,
.sponsor-v20-footer .sponsor-heineken img{
  max-width:124px!important;
  max-height:40px!important;
}

.sponsor-v20 .sponsor-fedex img,
.sponsor-v20-footer .sponsor-fedex img{
  max-width:118px!important;
  max-height:38px!important;
}

.sponsor-v20 .sponsor-hyundai img,
.sponsor-v20-footer .sponsor-hyundai img{
  max-width:130px!important;
  max-height:36px!important;
}

.sponsor-v20 .sponsor-lenovo img,
.sponsor-v20-footer .sponsor-lenovo img{
  max-width:125px!important;
  max-height:38px!important;
}

.sponsor-v20 .sponsor-xbox img,
.sponsor-v20-footer .sponsor-xbox img{
  max-width:125px!important;
  max-height:40px!important;
}

.sponsor-v20:hover .football-sponsor-track,
.sponsor-v20-footer:hover .guest-footer-sponsor-track{
  animation-play-state:paused!important;
}

@keyframes sponsor-v20-loop{
  from{
    transform:translate3d(0,0,0);
  }
  to{
    transform:translate3d(-50%,0,0);
  }
}

@media(max-width:700px){

  .sponsor-v20 .football-sponsor-item,
  .sponsor-v20-footer .football-sponsor-item{
    width:138px!important;
    min-width:138px!important;
    height:62px!important;
    padding:9px 13px!important;
  }

  .sponsor-v20 .football-sponsor-logo,
  .sponsor-v20-footer .football-sponsor-logo{
    max-width:108px!important;
    max-height:37px!important;
  }

  .sponsor-v20 .football-sponsor-track,
  .sponsor-v20-footer .guest-footer-sponsor-track{
    animation-duration:27s!important;
  }
}


/* MOBILE REGISTER CTA V27 START */

@media (max-width:700px){

  /* Only registration mode */
  #guest-auth.guest-auth-dialog:has(
    .guest-auth-tab[data-auth="register"].active
  ){
    width:calc(100% - 16px)!important;
    height:94dvh!important;
    max-height:94dvh!important;
    overflow:hidden!important;
    border-radius:20px!important;
  }

  #guest-auth.guest-auth-dialog:has(
    .guest-auth-tab[data-auth="register"].active
  ) .guest-auth-modal{
    height:100%!important;
    max-height:94dvh!important;
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    overflow:hidden!important;
  }

  /* Form body scrolls independently */
  #guest-auth.guest-auth-dialog:has(
    .guest-auth-tab[data-auth="register"].active
  ) .guest-auth-panel{
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;

    padding:
      18px
      16px
      calc(105px + env(safe-area-inset-bottom))
      16px!important;

    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
  }

  #guest-auth.guest-auth-dialog:has(
    .guest-auth-tab[data-auth="register"].active
  ) .guest-auth-panel-body{
    min-height:100%!important;
  }

  /* Always visible registration button */
  #guest-auth.guest-auth-dialog[open]:has(
    .guest-auth-tab[data-auth="register"].active
  ) .guest-auth-form .btn.primary[type="submit"]{
    position:fixed!important;

    left:50%!important;
    bottom:max(14px,env(safe-area-inset-bottom))!important;

    transform:translateX(-50%)!important;

    width:min(calc(100vw - 48px),500px)!important;
    min-height:56px!important;

    margin:0!important;
    padding:14px 20px!important;

    z-index:2147483000!important;

    border-radius:14px!important;
    border:1px solid #d7ff74!important;

    background:#c8fa5f!important;
    color:#11180b!important;

    font-size:16px!important;
    font-weight:850!important;

    box-shadow:
      0 -12px 32px rgba(5,10,18,.75),
      0 10px 30px rgba(0,0,0,.45)!important;
  }

  /* Prevent fields from sitting underneath fixed CTA */
  #guest-auth.guest-auth-dialog:has(
    .guest-auth-tab[data-auth="register"].active
  ) .guest-auth-form{
    padding-bottom:14px!important;
  }

  /* Slightly more compact form on short phones */
  @media (max-height:720px){
    #guest-auth.guest-auth-dialog:has(
      .guest-auth-tab[data-auth="register"].active
    ) .guest-auth-panel{
      padding-top:14px!important;
    }

    #guest-auth.guest-auth-dialog:has(
      .guest-auth-tab[data-auth="register"].active
    ) .guest-auth-panel-body{
      gap:9px!important;
    }

    #guest-auth.guest-auth-dialog:has(
      .guest-auth-tab[data-auth="register"].active
    ) .guest-auth-form{
      gap:10px!important;
    }
  }
}

/* MOBILE REGISTER CTA V27 END */


/* =====================================================
   AUTH RESPONSIVE V28
   Registration works on phone, tablet, laptop, desktop
   ===================================================== */

#guest-auth.guest-auth-dialog.guest-register-mode{
  width:min(620px,calc(100vw - 32px))!important;
  height:min(94dvh,900px)!important;
  max-height:min(94dvh,900px)!important;
  padding:0!important;
  overflow:hidden!important;
}

#guest-auth.guest-register-mode .guest-auth-modal{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;

  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;

  overflow:hidden!important;
}

#guest-auth.guest-register-mode .guest-auth-top{
  grid-row:1;
  flex:none!important;
  min-width:0!important;
}

#guest-auth.guest-register-mode .guest-auth-panel{
  grid-row:2;

  min-height:0!important;
  height:auto!important;

  display:block!important;
  align-items:initial!important;

  overflow-y:auto!important;
  overflow-x:hidden!important;

  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;

  padding:26px 28px 24px!important;

  scrollbar-width:thin;
  scrollbar-color:#39465a transparent;
}

#guest-auth.guest-register-mode .guest-auth-panel-body{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}

#guest-auth.guest-register-mode .guest-auth-form{
  width:100%!important;
  padding-bottom:6px!important;
}

/* hide original button only in registration */
#guest-auth.guest-register-mode
.guest-auth-form > button.btn.primary[type="submit"]{
  display:none!important;
}

/* permanent bottom registration button */
#guest-auth.guest-register-mode .guest-auth-submit-dock{
  grid-row:3;

  position:relative!important;
  z-index:20;

  width:100%;
  padding:14px 28px max(16px,env(safe-area-inset-bottom));

  border-top:1px solid #263144;

  background:
    linear-gradient(
      180deg,
      rgba(13,18,28,.94),
      #0d121c 24%
    );

  box-shadow:0 -14px 32px rgba(0,0,0,.20);
}

#guest-auth.guest-register-mode .guest-auth-docked-submit{
  display:flex!important;
  align-items:center;
  justify-content:center;

  width:100%!important;
  min-height:54px!important;

  margin:0!important;
  border-radius:13px!important;

  font-size:16px!important;
  font-weight:800!important;
}

/* laptop / shorter desktop */
@media(max-height:800px) and (min-width:701px){

  #guest-auth.guest-auth-dialog.guest-register-mode{
    height:calc(100dvh - 32px)!important;
    max-height:calc(100dvh - 32px)!important;
  }

  #guest-auth.guest-register-mode .guest-auth-top{
    padding-top:16px!important;
  }

  #guest-auth.guest-register-mode .guest-auth-brandline{
    margin-bottom:12px!important;
  }

  #guest-auth.guest-register-mode .guest-auth-panel{
    padding-top:18px!important;
    padding-bottom:18px!important;
  }

  #guest-auth.guest-register-mode
  .guest-auth-panel-body h2{
    font-size:23px!important;
  }
}

/* phone */
@media(max-width:700px){

  #guest-auth.guest-auth-dialog.guest-register-mode{
    width:calc(100vw - 16px)!important;
    height:calc(100dvh - 16px)!important;
    max-height:calc(100dvh - 16px)!important;

    margin:auto!important;
    border-radius:19px!important;
  }

  #guest-auth.guest-register-mode .guest-auth-top{
    padding:18px 16px 0!important;
  }

  #guest-auth.guest-register-mode .guest-auth-brandline{
    margin-bottom:13px!important;
  }

  #guest-auth.guest-register-mode .guest-auth-panel{
    padding:19px 16px 18px!important;
  }

  #guest-auth.guest-register-mode .guest-auth-panel-body{
    gap:11px!important;
  }

  #guest-auth.guest-register-mode
  .guest-auth-panel-body h2{
    font-size:24px!important;
  }

  #guest-auth.guest-register-mode .guest-auth-submit-dock{
    padding:
      11px
      16px
      max(12px,env(safe-area-inset-bottom));
  }

  #guest-auth.guest-register-mode .guest-auth-docked-submit{
    min-height:55px!important;
    font-size:15px!important;
  }
}

/* very narrow phones */
@media(max-width:380px){

  #guest-auth.guest-register-mode .guest-auth-panel{
    padding-left:13px!important;
    padding-right:13px!important;
  }

  #guest-auth.guest-register-mode .guest-auth-submit-dock{
    padding-left:13px!important;
    padding-right:13px!important;
  }
}

/* AUTH RESPONSIVE V28 END */
