/* ==================================================================
   ARSENAL BAHIS - SABLON STILLERI (response/styles.css)
   Kaynak: .superpowers/sdd/arsenal-sablon-haritasi.md bolum 3.

   GOREV 4 (cerceve incelemesi): kaynagin OLU ILK-TASLAK katmani SILINDI.
   Kaynak dosya yama uzerine yama yazilmis (bolum 3/tuzak 10): ilk ~60
   satirdaki .shell / .sidebar / .rightbar / .mainnav / .topline / .header /
   .icon-btn / .more / .hero taban kurallarini sonraki "Arsenal floating
   layout" katmani tamamen eziyordu ve sablonun KENDI markup'inda bu
   siniflarin hicbiri yok. Ama bu dosya SITENIN HER SAYFASINDA app.css'ten
   SONRA yuklendigi icin, ayni adli siniflar (.hero, .more, .icon-btn,
   .brand, .header...) HENUZ SABLONA TASINMAMIS sayfalara sizip onlari
   bozuyordu. Silme olcutu: kural, response/index.html'de gecmeyen bir
   sinifa bakiyorsa DUSER; cok parcali secicilerde yalniz kullanilmayan
   parca atildi (ornek: `.icon-btn,.ghost,.primary,.outline,.filter,.call`
   -> `.filter`). Canli katmanlarin hicbirine dokunulmadi.

   Sadece url() referanslari duzeltildi: kaynakta css/js/
   assets ayni klasordeydi, burada css/ img/ fonts/ ayri klasorler oldugu
   icin 'assets/fonts/...' -> '../fonts/...' ve 'assets/<gorsel>' ->
   '../img/<gorsel>' olarak guncellendi (asagida font-face ve
   sportsbook-icon/mobile-crest kurallarinda gorulebilir). Palet zaten
   Arsenal kirmizi/altin/koyu-zemin (--red #e51a2d, --gold #d9a95f,
   --bg #080a0e) - turkuaz/GECCEBET degeri yok, guard testi
   (ArsenalIskeletTest::test_eski_turkuaz_renk_literalleri_kalmadi) bu
   dosyayi da tarar ve gecer. */
:root{--bg:#080a0e;--panel:#11161d;--panel2:#171e27;--line:#2a333f;--muted:#8f9baa;--red:#e51a2d;--red2:#ff3347;--white:#f3f5f7;--gold:#d9a95f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 70% 10%,#1c1115 0,#090b0f 26%,#06080b 70%);color:var(--white);font:500 15px 'DM Sans',sans-serif}.filter{border:1px solid var(--line);background:#171d25;color:#fff;border-radius:9px;padding:11px 17px;font-weight:700;cursor:pointer}.kicker{font-size:10px;letter-spacing:1.7px;color:#677380;font-weight:800;margin:0 12px 13px}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:18px}.hero-progress{position:absolute;bottom:16px;left:36px;display:flex;gap:6px;z-index:3}.hero-progress i{height:4px;width:23px;border-radius:3px;background:#ffffff45}.hero-progress i.on{background:var(--red2);width:39px}.quick-row{display:flex;gap:9px;margin:18px 0 26px}.search{height:43px;display:flex;align-items:center;gap:9px;background:#161d25;border:1px solid #36414d;border-radius:8px;color:#84909d;padding:0 13px;flex:1}.search input{background:none;border:0;outline:0;color:#fff;min-width:0;flex:1;font:inherit}.search kbd{background:#2a333e;border-radius:4px;padding:4px 7px;color:#9fa9b3;font-size:10px}.filter{background:#171e26;color:#a6b1bc;padding:11px 13px}.filter.active{background:var(--red);border-color:var(--red);color:#fff}.section{margin-bottom:27px}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:14px}.section-head h2{font:700 23px 'Barlow Condensed';margin:3px 0 0;letter-spacing:.2px}.section-head a{color:#8d99a6;font-size:12px;text-decoration:none}.game-row{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:11px}.game-card{border-radius:10px;overflow:hidden;position:relative;min-height:161px;color:white;padding:9px;background:#1a2630;border:1px solid #ffffff12;box-shadow:0 8px 20px #0004}.game-card b{display:block;font-size:12px;line-height:1.05;text-transform:uppercase;font-weight:800}.game-card>span{display:block;color:#32db87;font-size:9px;margin-top:9px}.live-games .game-card{background:#203447}
@media(max-width:1150px){.game-row{grid-template-columns:repeat(4,minmax(120px,1fr))}}
@media(max-width:780px){.hero-grid{grid-template-columns:1fr}.quick-row{overflow:auto;padding-bottom:3px}.search{min-width:220px}.filter{white-space:nowrap}.game-row{display:flex;overflow:auto;padding-bottom:8px}.game-card{min-width:137px}.section-head h2{font-size:21px}}

/* User-supplied game artwork: wide desktop grid, horizontal mobile rail. */
.game-row{grid-template-columns:repeat(8,minmax(100px,1fr))}.game-card.image-card{padding:0 0 9px;background:#161d25;min-height:190px}.image-card img{width:100%;height:142px;display:block;object-fit:cover}.game-card.image-card b,.game-card.image-card>span{margin-left:9px;margin-right:9px}.game-card.image-card b{margin-top:9px}
@media(max-width:1150px){.game-row{grid-template-columns:repeat(4,minmax(120px,1fr))}}
@media(max-width:780px){.game-row{display:flex;overflow:auto}.game-card.image-card{min-width:137px}}

/* Keep the game rail contained like the reference: the artwork itself is the tile. */
.game-card.image-card{background:transparent;border:0;box-shadow:none;border-radius:0;padding:0;min-height:0}
.game-card.image-card img{height:158px;aspect-ratio:0.72;object-fit:cover;border-radius:9px}
.game-card.image-card b,.game-card.image-card>span{display:none}
@media(max-width:1150px){.game-card.image-card img{height:170px}}
@media(max-width:780px){.game-card.image-card{min-width:137px}.game-card.image-card img{height:190px}}


/* Preserve the complete supplied artwork; never crop the top or bottom of a game image. */
.game-card.image-card img{object-fit:contain;object-position:center center;background:transparent}

/* Single-image campaign slider with a clockwise travelling highlight. */
.visual-slider{height:auto;aspect-ratio:2 / 1;padding:2px;border:0;background:conic-gradient(from 0deg,#e51a2d 0deg,#e51a2d 250deg,#ffb0b8 292deg,#e51a2d 328deg,#e51a2d 360deg);animation:sliderGlow 4s linear infinite}
.visual-slider:after{display:none}
.slider-frame{width:100%;height:100%;overflow:hidden;border-radius:15px;background:#13070a}
.slider-frame img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#13070a}
.visual-slider .hero-progress{left:50%;bottom:10px;transform:translateX(-50%)}
.visual-slider .hero-progress i{width:22px;background:#ffffff99}
.visual-slider .hero-progress i.on{width:34px;background:#fff}
@keyframes sliderGlow{to{background:conic-gradient(from 360deg,#e51a2d 0deg,#e51a2d 250deg,#ffb0b8 292deg,#e51a2d 328deg,#e51a2d 360deg)}}

/* Sliderin yanindaki kampanya paneli. Gorev 6: .promo-card ve tek cocugu
   .promo-shine kurallari SILINDI (duzeltme turu 1: .promo-shine ilk turda
   kalmisti, konumlandirilmis atasi olmayan oksuz bir kuraldi) - sablonun
   ilk taslagindan kalmislardi, hicbir arsenal gorunumu o sinifi basmiyor
   (anasayfanin kampanya bandi .campaign-* kullaniyor) ve
   arsenal.css app.css ten SONRA yuklendigi icin ayni adli siniflari olan
   henuz tasinmamis sayfalara siziyorlardi. .hero-grid izgarasi KALDI:
   anasayfa onu basiyor. */
.hero-grid{grid-template-columns:minmax(0,1fr) 290px;align-items:stretch}

/* Compact game rails so the supplied artwork reads as one tight collection. */
.game-row{grid-template-columns:repeat(8,minmax(0,1fr));gap:5px}

/* Sag alt mac modulu: TAMAMEN SILINDI (Gorev 6 + duzeltme turu 1).
   .sport-card / .sport-label / .sport-title / .sport-teams / .club* /
   .sport-score / .sport-odds / .sport-cta - hicbiri resources/views/
   arsenal, public/arsenal/js ya da panel gorunumlerinde gecmiyor (grep).
   Anasayfanin spor bulteni .sportsbook-* siniflarini basiyor. */
@media(max-width:1150px){.game-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}}

/* Arsenal floating layout — compact content frame, independent right rail. */
/* Sablon v2 (Desktop/index/styles.css 56-58): bordo html zemini + govdede top
   filigrani. html kurali app.css'in html{background:#090603} kuralini ezer
   (bu dosya app.css'ten SONRA yukleniyor); ezilmezse asiri kaydirmada ve
   kisa sayfanin altinda eski kahverengi zemin gorunur. isolation:isolate
   govdeyi kendi istif baglami yapar: izgara (body:before, z -1) zeminin
   USTUNDE, icerigin ALTINDA kalir. */
html{min-height:100%;background:#16090e;color-scheme:dark}
body{position:relative;isolation:isolate;min-height:100vh;padding:154px 0 80px;background:radial-gradient(circle at 50% -8%,rgba(143,12,31,.27),transparent 30%),radial-gradient(circle at 8% 62%,rgba(229,26,45,.055),transparent 27%),linear-gradient(rgba(6,8,11,.965),rgba(7,8,12,.975)),url('../img/arsenal-cannon-mark.png') center 46vh/880px auto no-repeat fixed,#07090d;color:#f4f6f8;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.008) 1px,transparent 1px);background-size:88px 88px;opacity:.32;z-index:-1}
.site-glow{position:fixed;width:620px;height:620px;left:50%;top:-390px;transform:translateX(-50%);border-radius:50%;background:#e51a2d;filter:blur(140px);opacity:.12;pointer-events:none;z-index:-1}

.floating-header{position:fixed;z-index:50;top:14px;left:50%;transform:translateX(-50%);width:min(1200px,calc(100% - 36px));border:1px solid rgba(255,255,255,.1);border-radius:18px;background:linear-gradient(180deg,rgba(20,24,31,.78),rgba(10,13,18,.65));box-shadow:0 18px 55px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.05);backdrop-filter:blur(22px);overflow:hidden}
.floating-header:before{content:"";position:absolute;left:14%;right:14%;top:-1px;height:1px;background:linear-gradient(90deg,transparent,#ff4354,transparent);opacity:.8}
.header-top{position:relative;height:76px;display:grid;grid-template-columns:1fr 240px 1fr;align-items:center;padding:0 22px}
.brand-center{justify-self:center;width:220px;height:68px;display:flex;align-items:center;justify-content:center}
.brand-center img{display:block;width:205px;height:64px;object-fit:contain;mix-blend-mode:screen;filter:drop-shadow(0 8px 18px rgba(0,0,0,.45))}
.social-links{display:flex;align-items:center;gap:18px}
.social-links a{display:block;width:22px;height:22px;color:#ed2337;transition:color .2s ease,transform .2s ease;line-height:0}
.social-links a:hover{color:#fff;transform:translateY(-2px)}
.social-links svg{width:22px;height:22px;overflow:visible}
.social-links svg circle,.social-links svg rect{fill:none;stroke:currentColor;stroke-width:1.8}
.social-links svg path,.social-links .solid-dot{fill:currentColor;stroke:none}
.account-actions{justify-self:end;display:flex;align-items:center;gap:9px}
.login-btn,.signup-btn{height:38px;border-radius:9px;padding:0 16px;color:#fff;font:700 12px 'DM Sans',sans-serif;cursor:pointer;transition:.2s ease}
.login-btn{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.035)}
.login-btn:hover{border-color:rgba(255,255,255,.36);background:rgba(255,255,255,.08)}
.signup-btn{border:1px solid #f02b3e;background:linear-gradient(135deg,#ed2337,#b90d20);box-shadow:0 9px 25px rgba(229,26,45,.23)}
.signup-btn:hover{filter:brightness(1.12);transform:translateY(-1px)}
.floating-nav{height:44px;display:flex;align-items:center;justify-content:center;gap:4px;border-top:1px solid rgba(255,255,255,.07);background:rgba(4,7,11,.34)}
.floating-nav a{position:relative;color:#9ba5b0;text-decoration:none;font-size:12px;font-weight:700;padding:12px 18px;transition:.2s ease}
.floating-nav a:hover,.floating-nav a.active{color:#fff}
.floating-nav a.active:after{content:"";position:absolute;height:2px;left:18px;right:18px;bottom:4px;border-radius:2px;background:#ef2136;box-shadow:0 0 12px #ef2136}

.floating-sidebar{position:fixed;z-index:45;left:16px;top:164px;width:60px;max-height:calc(100vh - 184px);padding:9px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:linear-gradient(180deg,rgba(20,25,33,.9),rgba(9,12,17,.92));box-shadow:0 24px 58px rgba(0,0,0,.5);backdrop-filter:blur(20px);overflow:hidden;transition:width .28s cubic-bezier(.2,.8,.2,1)}
.floating-sidebar:hover,.floating-sidebar.is-open{width:214px}
.sidebar-toggle{width:40px;height:38px;padding:10px;border:0;border-radius:10px;background:rgba(255,255,255,.045);display:flex;flex-direction:column;justify-content:center;gap:4px;cursor:pointer}
.sidebar-toggle span{display:block;width:18px;height:2px;border-radius:2px;background:#f0394b;transition:.22s ease}
.floating-sidebar.is-open .sidebar-toggle span:first-child{transform:translateY(6px) rotate(45deg)}
.floating-sidebar.is-open .sidebar-toggle span:nth-child(2){opacity:0}
.floating-sidebar.is-open .sidebar-toggle span:last-child{transform:translateY(-6px) rotate(-45deg)}
.side-menu{display:flex;flex-direction:column;gap:3px;margin-top:8px}
.side-menu a{height:38px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;min-width:194px;border-radius:9px;color:#aeb7c1;text-decoration:none;font-size:12px;font-weight:650;transition:.18s ease}
.side-menu a:hover,.side-menu a.active{color:#fff;background:linear-gradient(90deg,rgba(229,26,45,.23),rgba(229,26,45,.04));box-shadow:inset 2px 0 0 #ef2b3e}
.side-menu i{width:40px;text-align:center;color:#ed3245;font-style:normal;font-size:16px}
.side-menu .menu-icon{height:100%;display:flex;align-items:center;justify-content:center;color:#f1263d}
.side-menu .menu-icon svg{display:block;width:23px;height:23px;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 7px rgba(241,38,61,.2))}
.side-menu .menu-icon img{display:block;width:27px;height:21px;object-fit:contain;filter:drop-shadow(0 0 7px rgba(241,38,61,.24))}
.side-menu a:hover .menu-icon,.side-menu a.active .menu-icon{color:#ff3449}
.side-menu span{opacity:0;white-space:nowrap;transform:translateX(-5px);transition:.18s ease}
.side-menu em{opacity:0;margin-right:8px;padding:3px 5px;border-radius:4px;background:rgba(229,26,45,.15);color:#ff5d6c;font-size:8px;font-style:normal}
.floating-sidebar:hover .side-menu span,.floating-sidebar.is-open .side-menu span,.floating-sidebar:hover .side-menu em,.floating-sidebar.is-open .side-menu em{opacity:1;transform:none}

.page-frame{width:min(1200px,calc(100% - 36px));margin:0 auto}
.core-layout{display:grid;grid-template-columns:minmax(0,1fr) 282px;gap:18px;align-items:start}
.main-content{min-width:0}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 208px;gap:12px;align-items:stretch}
.hero.visual-slider{width:100%;height:auto;min-height:0;aspect-ratio:2 / 1;padding:2px;border:0;border-radius:14px;overflow:hidden;background:conic-gradient(from 0deg,#c20e21 0deg,#e51a2d 250deg,#fff 289deg,#ff5362 306deg,#c20e21 360deg);animation:sliderGlow 4s linear infinite;box-shadow:0 16px 42px rgba(0,0,0,.44)}
.slider-frame{border-radius:12px;background:#13070a}
.slider-frame img{width:100%;height:100%;object-fit:contain}
.visual-slider .hero-progress{left:50%;bottom:8px;transform:translateX(-50%)}
.visual-slider .hero-progress i.on{height:3px;width:30px}
.quick-row{display:grid;grid-template-columns:minmax(240px,1fr) repeat(4,auto);gap:7px;margin:12px 0 24px}
/* Sablon v2 (styles.css 115-117): kirmizi tonlu arama kutusu + odak halkasi. */
.search{height:41px;border-radius:8px;background:linear-gradient(105deg,rgba(42,13,20,.96),rgba(18,21,28,.96) 58%,rgba(31,12,18,.94));border-color:rgba(229,40,59,.46);box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 8px 26px rgba(85,4,17,.18);color:#d45462;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
.search:focus-within{border-color:#ef3146;background:linear-gradient(105deg,rgba(55,14,23,.98),rgba(18,21,28,.98) 62%,rgba(38,11,18,.97));box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 0 0 3px rgba(229,26,45,.1),0 10px 30px rgba(85,4,17,.22)}
.search input::placeholder{color:#9e7d85;opacity:1}
.filter{height:41px;padding:0 12px;border-radius:8px;font-size:11px;background:#171d25}
.filter.active{background:linear-gradient(135deg,#ed2337,#bd1022);box-shadow:0 9px 24px rgba(229,26,45,.17)}
.section{margin-bottom:24px}
.section-head{margin-bottom:10px;align-items:end}
.section-head .kicker{display:block;margin:0 0 3px;font-size:8px;color:#687481}
.section-head h2{font-size:21px;margin:0}
.section-head a{font-size:10px}
.game-row{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px}
.game-card.image-card{min-width:0;min-height:0;padding:0;border:0;background:transparent;box-shadow:none}
.game-card.image-card img{display:block;width:100%;height:auto;aspect-ratio:0.71;object-fit:contain;object-position:center;border-radius:8px;background:transparent;transition:transform .2s ease,filter .2s ease}
.game-card.image-card:hover img{transform:translateY(-3px);filter:brightness(1.06)}

.insight-rail{display:flex;flex-direction:column;gap:14px;min-width:0}
.rail-module{border:1px solid rgba(255,255,255,.1);border-radius:14px;background:linear-gradient(145deg,rgba(22,28,36,.92),rgba(11,15,20,.94));box-shadow:0 16px 42px rgba(0,0,0,.28);overflow:hidden}
.rail-heading{display:flex;align-items:end;justify-content:space-between;padding:15px 15px 11px;border-bottom:1px solid rgba(255,255,255,.07)}
.rail-heading span{display:block;margin-bottom:2px;color:#ed2b3e;font-size:8px;font-weight:800;letter-spacing:1.3px}
.rail-heading h2{margin:0;font:700 20px 'Barlow Condensed',sans-serif}
.rail-heading a{color:#75818d;text-decoration:none;font-size:9px}
.fixture-list{padding:5px 10px 9px}
.fixture{display:grid;grid-template-columns:37px minmax(0,1fr) 39px;gap:8px;align-items:center;padding:10px 3px;border-bottom:1px solid rgba(255,255,255,.07)}
.fixture:last-child{border-bottom:0}
.fixture-date{width:34px;height:39px;border-radius:8px;background:#202833;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.08)}
.featured-fixture .fixture-date{background:linear-gradient(145deg,#e72538,#8e0b19);border-color:#f04758}
.fixture-date b{font:800 16px/1 'Barlow Condensed';color:#fff}
.fixture-date span{font-size:7px;color:#aeb7c1;margin-top:2px}
.fixture-teams{display:flex;flex-direction:column;gap:2px;min-width:0}
.fixture-teams strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fixture-teams small{font-size:8px;color:#6f7b88}
.fixture-time{font:700 13px 'Barlow Condensed';color:#e7ebef;text-align:right}
.news-module{background:transparent;border-color:rgba(255,255,255,.08)}
.rail-news{margin:0 12px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.rail-news:last-child{border-bottom:0}
.rail-news-visual{height:98px;border-radius:9px;overflow:hidden;display:grid;place-items:center;margin-bottom:10px;background:radial-gradient(circle at 70% 20%,#c82335,transparent 45%),linear-gradient(135deg,#27313d,#5c0e18)}
.rail-news-visual img{width:148px;height:82px;object-fit:contain;mix-blend-mode:screen;opacity:.9}
.rail-news-meta,.compact-news>div{display:flex;align-items:center;justify-content:space-between}
.rail-news-meta span,.compact-news span{color:#f03a4b;font-size:8px;font-weight:800;letter-spacing:.8px}
.rail-news time,.compact-news time{color:#6f7b87;font-size:8px}
.rail-news h3{margin:7px 0 5px;font-size:12px;line-height:1.35}
.rail-news p{margin:0;color:#7d8995;font-size:9px;line-height:1.5}
.compact-news a{color:#f34655;text-decoration:none;font-size:9px}
.match-of-day{padding:14px 12px}
.match-label{color:#f13a4b;font-size:8px;font-weight:800;letter-spacing:1.2px}
.match-title{display:flex;justify-content:space-between;align-items:center;margin-top:8px}
.match-title h2{margin:0;font:700 17px 'Barlow Condensed'}
.match-title h2 span{color:#707c87;font-size:10px;margin:0 3px}
.match-title time{color:#9ba5af;font-size:9px}
.match-clubs{display:flex;align-items:center;justify-content:space-between;text-align:center;margin:14px 0 12px}
.match-club{width:74px;display:flex;flex-direction:column;align-items:center;gap:5px}
.match-club>div{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#f5f5f5;border:1px solid rgba(255,255,255,.22);overflow:hidden}
.match-club img{width:42px;height:36px;object-fit:contain;mix-blend-mode:multiply}
.match-club b{font-size:9px}
.opponent-badge{background:linear-gradient(145deg,#4c74d1,#182950)!important;color:#fff;font:800 22px 'Barlow Condensed'}
.versus strong{display:block;font-size:18px}.versus small{display:block;margin-top:3px;color:#707c88;font-size:8px}
.match-odds{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.match-odds button{padding:7px 3px;border-radius:6px;border:1px solid #303b46;background:#1d2630;color:#87939f;font-size:8px}
.match-odds b{display:block;margin-top:2px;color:#fff;font-size:10px}
.match-cta{width:100%;height:32px;margin-top:8px;border:0;border-radius:6px;background:linear-gradient(135deg,#ed2337,#b90d20);color:#fff;font-size:10px;font-weight:800;cursor:pointer}

@media(max-width:1320px){
  .floating-sidebar{left:10px}
  .page-frame,.floating-header{width:min(1120px,calc(100% - 34px))}
  .core-layout{grid-template-columns:minmax(0,1fr) 265px;gap:14px}
  .hero-grid{grid-template-columns:minmax(0,1fr) 198px}
}
@media(max-width:1080px){
  body{padding-top:146px}
  .floating-sidebar{top:154px}
  .page-frame,.floating-header{width:calc(100% - 28px)}
  .core-layout{grid-template-columns:1fr}
  .insight-rail{display:grid;grid-template-columns:repeat(3,1fr);align-items:start}
  .rail-module{height:100%}
}
@media(max-width:780px){
  body{padding-top:137px;padding-bottom:30px}
  .floating-header{top:8px;width:calc(100% - 16px);border-radius:14px}
  .header-top{height:70px;grid-template-columns:1fr 136px 1fr;padding:0 11px}
  .brand-center{width:136px}.brand-center img{width:132px;height:54px}
  .social-links{gap:10px}.social-links a,.social-links svg{width:18px;height:18px}.social-links a:nth-child(n+3){display:none}
  .account-actions{gap:5px}.login-btn{display:none}.signup-btn{height:34px;padding:0 10px;font-size:10px}
  .floating-nav{height:42px;justify-content:flex-start;overflow:auto;padding:0 8px}.floating-nav a{white-space:nowrap;padding:11px 12px;font-size:10px}
  .floating-sidebar{top:auto;bottom:14px;left:12px;max-height:calc(100vh - 160px);z-index:60}
  .floating-sidebar:not(.is-open):not(:hover){width:58px}
  .page-frame{width:calc(100% - 22px)}
  .hero-grid{grid-template-columns:1fr 31%;gap:7px}
  .quick-row{display:flex;overflow:auto;padding-bottom:4px}.search{min-width:230px}.filter{white-space:nowrap}
  .game-row{display:flex;overflow:auto;gap:7px;padding-bottom:7px}.game-card.image-card{min-width:112px}.game-card.image-card img{height:auto;aspect-ratio:.71}
  .insight-rail{grid-template-columns:1fr}
}
@media(max-width:520px){
  .header-top{grid-template-columns:68px 1fr 82px}.social-links a:nth-child(n+2){display:none}
  .brand-center{width:150px}.brand-center img{width:145px}
  .signup-btn{padding:0 8px}.signup-btn span{display:none}
  .hero-grid{grid-template-columns:1fr}
}

/* Readability revision: wider body, larger content scale and vertically centered menu. */
body{padding-top:170px}
.floating-header{width:min(1480px,calc(100% - 170px));border-radius:20px}
.header-top{height:84px;grid-template-columns:1fr 270px 1fr;padding:0 30px}
.brand-center{width:250px;height:76px}
.brand-center img{width:232px;height:72px}
.social-links{gap:22px}
.social-links a,.social-links svg{width:24px;height:24px}
.social-links svg.brand-icon path{fill:currentColor}
.floating-nav{height:48px;gap:9px}
.floating-nav a{font-size:13px;padding:14px 21px}
.login-btn,.signup-btn{height:41px;padding:0 19px;font-size:13px}

.page-frame{width:min(1480px,calc(100% - 170px))}
.core-layout{grid-template-columns:minmax(0,1fr) 336px;gap:24px}
.hero-grid{grid-template-columns:minmax(0,1fr) 264px;gap:15px}
.hero.visual-slider{border-radius:16px}
.slider-frame{border-radius:14px}
.quick-row{grid-template-columns:minmax(320px,1fr) repeat(4,auto);gap:9px;margin:15px 0 29px}
.search,.filter{height:46px}
.search{font-size:13px;padding:0 15px}
.filter{padding:0 16px;font-size:12px}
.section{margin-bottom:30px}
.section-head{margin-bottom:13px}
.section-head .kicker{font-size:10px;letter-spacing:1.5px}
.section-head h2{font-size:25px}
.section-head a{font-size:12px}
.game-row{gap:8px}
.game-card.image-card img{border-radius:10px}
.promo-strip h2{font-size:34px}
.promo-strip p{font-size:13px}

.insight-rail{gap:18px}
.rail-module{border-radius:16px}
.rail-heading{padding:18px 18px 14px}
.rail-heading span{font-size:9px}
.rail-heading h2{font-size:24px}
.rail-heading a{font-size:11px}
.fixture-list{padding:7px 13px 12px}
.fixture{grid-template-columns:44px minmax(0,1fr) 48px;gap:10px;padding:13px 4px}
.fixture-date{width:40px;height:46px}
.fixture-date b{font-size:19px}
.fixture-date span{font-size:8px}
.fixture-teams{gap:3px}
.fixture-teams strong{font-size:12px}
.fixture-teams small{font-size:9px}
.fixture-time{font-size:15px}
.rail-news{margin:0 15px;padding:15px 0}
.rail-news-visual{height:122px;margin-bottom:12px}
.rail-news-visual img{width:178px;height:98px}
.rail-news-meta span,.compact-news span{font-size:9px}
.rail-news time,.compact-news time{font-size:9px}
.rail-news h3{font-size:14px;margin:9px 0 6px}
.rail-news p{font-size:11px}
.compact-news a{font-size:10px}
.match-of-day{padding:18px 15px}
.match-label{font-size:9px}
.match-title{margin-top:10px}
.match-title h2{font-size:21px}
.match-title time{font-size:11px}
.match-clubs{margin:18px 0 15px}
.match-club{width:88px;gap:7px}
.match-club>div{width:52px;height:52px}
.match-club img{width:49px;height:42px}
.match-club b{font-size:11px}
.match-odds button{padding:9px 4px;font-size:9px}
.match-odds b{font-size:12px}
.match-cta{height:38px;font-size:11px}

.floating-sidebar{top:50%;left:20px;bottom:auto;transform:translateY(-50%);width:76px;max-height:calc(100vh - 32px);padding:11px;border-radius:19px;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}
.floating-sidebar::-webkit-scrollbar{display:none}
.floating-sidebar:hover,.floating-sidebar.is-open{width:252px}
.sidebar-toggle{width:52px;height:48px;padding:14px;border-radius:12px}
.sidebar-toggle span{width:23px;height:2px}
.side-menu{gap:4px;margin-top:10px}
.side-menu a{height:47px;min-width:228px;grid-template-columns:52px 1fr auto;border-radius:11px;font-size:14px}
.side-menu i{width:52px;font-size:22px}
.side-menu .menu-icon svg{width:25px;height:25px}
.side-menu .menu-icon img{width:30px;height:23px}
.side-menu em{margin-right:10px;padding:4px 6px;font-size:9px}

@media(max-width:1560px){
  .floating-header,.page-frame{width:calc(100% - 170px)}
  .core-layout{grid-template-columns:minmax(0,1fr) 310px;gap:18px}
  .hero-grid{grid-template-columns:minmax(0,1fr) 238px;gap:12px}
  .floating-nav a{padding-left:16px;padding-right:16px}
}
@media(max-width:1200px){
  body{padding-top:160px}
  .floating-header,.page-frame{width:calc(100% - 30px)}
  .core-layout{grid-template-columns:1fr}
  .insight-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
  .rail-module{height:100%}
  .floating-sidebar{left:12px}
}
@media(max-width:900px){
  .header-top{grid-template-columns:1fr 190px 1fr;padding:0 16px}
  .brand-center{width:190px}.brand-center img{width:180px}
  .social-links{gap:14px}.social-links a:nth-child(n+3){display:none}
  .floating-nav{justify-content:flex-start;overflow-x:auto;padding:0 8px}.floating-nav a{white-space:nowrap}
  .insight-rail{grid-template-columns:1fr}
}
@media(max-width:780px){
  body{padding-top:145px}
  .floating-header{width:calc(100% - 16px)}
  .page-frame{width:calc(100% - 22px)}
  .header-top{height:76px;grid-template-columns:72px 1fr 94px;padding:0 10px}
  .brand-center{width:156px;height:65px}.brand-center img{width:150px;height:60px}
  .social-links a:nth-child(n+2){display:none}
  .account-actions .login-btn{display:none}.signup-btn{height:36px;padding:0 10px;font-size:10px}
  .floating-sidebar{top:auto;bottom:13px;left:12px;transform:none;width:66px;max-height:calc(100vh - 160px);padding:8px}
  .floating-sidebar:hover,.floating-sidebar.is-open{width:238px}
  .sidebar-toggle{width:48px;height:44px}.side-menu a{height:44px;grid-template-columns:48px 1fr auto;min-width:216px;font-size:13px}.side-menu i{width:48px;font-size:20px}
  .side-menu .menu-icon svg{width:23px;height:23px}.side-menu .menu-icon img{width:28px;height:21px}
  .hero-grid{grid-template-columns:1fr 31%;gap:8px}
  .quick-row{display:flex;overflow-x:auto}.search{min-width:260px}
}
@media(max-width:520px){
  .hero-grid{grid-template-columns:1fr}
}
@media(max-height:760px) and (min-width:781px){
  .floating-sidebar{padding:7px;width:66px}
  .floating-sidebar:hover,.floating-sidebar.is-open{width:236px}
  .sidebar-toggle{width:50px;height:39px;padding:11px}
  .side-menu{gap:1px;margin-top:5px}
  .side-menu a{height:39px;grid-template-columns:50px 1fr auto;min-width:218px;font-size:12px}
  .side-menu i{width:50px;font-size:19px}
  .side-menu .menu-icon svg{width:22px;height:22px}.side-menu .menu-icon img{width:27px;height:20px}
}

/* Safe icon bounds and Türkiye–Fransa match card. */
.social-links .whatsapp-icon{overflow:visible}
.social-links .whatsapp-icon path{transform:scale(.94);transform-origin:center;transform-box:fill-box}
.match-club>div.flag-badge{background:#f6f7f9;border-color:rgba(255,255,255,.3)}
.flag-badge span{display:block;font-size:29px;line-height:1;filter:drop-shadow(0 2px 3px rgba(0,0,0,.18))}
.match-info-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:7px;padding:10px 8px;border:1px solid #303b46;border-radius:7px;background:#1d2630;color:#8f9ba7;font-size:9px;text-align:center}
.match-info-row b{color:#fff;font-size:12px}
.match-info-row span:last-child{text-align:right}
.match-info-row span:first-child{text-align:left}

/* Popular providers carousel */
.providers-section{margin-top:2px;margin-bottom:32px}
.provider-viewport{position:relative;overflow:hidden;padding:5px 0 9px;outline:none;mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 14px),transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 14px),transparent 100%)}
.provider-track{display:flex;gap:10px;will-change:transform}
.provider-card{position:relative;flex:0 0 calc((100% - 60px)/7);height:76px;overflow:hidden;border:1px solid #272d35;border-radius:11px;background:radial-gradient(circle at 82% 10%,rgba(237,33,56,.08),transparent 42%),linear-gradient(145deg,#191d23,#0b0e13 72%);box-shadow:0 8px 22px rgba(0,0,0,.33),inset 0 1px 0 rgba(255,255,255,.035);isolation:isolate;transition:border-color .24s ease,box-shadow .24s ease,transform .24s ease}
.provider-card::before{content:"";position:absolute;inset:auto 13px 0;height:2px;background:linear-gradient(90deg,transparent,#ed2138,transparent);opacity:.34;transition:opacity .24s ease}
.provider-card::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(105deg,transparent 8%,rgba(237,33,56,.14) 47%,transparent 78%);opacity:0;transform:translateX(-55%);transition:opacity .25s ease,transform .44s ease;pointer-events:none}
.provider-card img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:cover;filter:drop-shadow(0 2px 7px rgba(0,0,0,.35))}
.provider-card:hover{z-index:2;border-color:rgba(237,33,56,.72);background:radial-gradient(circle at 78% 10%,rgba(237,33,56,.16),transparent 46%),linear-gradient(145deg,#1d1c22,#0c0e13 72%);box-shadow:0 0 0 1px rgba(237,33,56,.1),0 11px 28px rgba(0,0,0,.4),0 0 20px rgba(237,33,56,.1);transform:translateY(-2px)}
.provider-card:hover::before{opacity:1}
.provider-card:hover::after{opacity:1;transform:translateX(55%)}
.provider-viewport:focus-visible{border-radius:12px;box-shadow:0 0 0 2px rgba(237,33,56,.65)}

@media(max-width:900px){
  .provider-card{flex-basis:calc((100% - 40px)/5)}
}
@media(max-width:780px){
  .provider-card{flex-basis:calc((100% - 20px)/3);height:72px}
}
@media(max-width:520px){
  .provider-card{flex-basis:calc((100% - 10px)/2);height:68px}
}
@media(prefers-reduced-motion:reduce){
  .provider-card{transition:none}
}

/* Section lockups and static page header */
.floating-header{position:absolute}
.section-title-lockup{display:flex;align-items:center;gap:12px;min-width:0}
.section-title-lockup>img{flex:0 0 auto;width:42px;height:30px;object-fit:contain;filter:drop-shadow(0 0 11px rgba(237,33,56,.35))}
.section-title-lockup .kicker{margin-left:0}

/* Arsenal sportsbook carousel */
.sportsbook-section{margin-top:4px;margin-bottom:36px}
.sportsbook-heading{align-items:flex-end}
.sportsbook-live{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid #29333e;border-radius:8px;background:#111820;color:#8e9aa7;font-size:10px;font-weight:800;letter-spacing:.9px}
.sportsbook-viewport{position:relative;overflow:hidden;padding:5px 0 13px;outline:none}
.sportsbook-track{display:flex;gap:14px;will-change:transform}
.sportsbook-card{position:relative;flex:0 0 calc((100% - 28px)/3);min-width:0;overflow:hidden;border:1px solid #27323e;border-radius:15px;background:linear-gradient(155deg,#151d26 0%,#0d131a 64%,#10161e 100%);box-shadow:0 16px 34px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.025);isolation:isolate}
.sportsbook-card::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,transparent 5%,#ed2138 34%,#ed2138 66%,transparent 95%);opacity:.68}
.sportsbook-card::after{content:"";position:absolute;right:-22px;bottom:42px;width:156px;height:65px;background:url('../img/sportsbook-icon.png') center/contain no-repeat;opacity:.018;transform:rotate(-5deg);pointer-events:none}
.sportsbook-card.featured-match{background:linear-gradient(155deg,#171c24 0%,#110f15 68%,#171016 100%)}
.sportsbook-card-top{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:15px 17px 13px;border-bottom:1px solid rgba(255,255,255,.05)}
.sportsbook-league{display:flex;align-items:center;gap:7px;color:#8f9ba8;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.75px}
.sportsbook-league i{width:4px;height:16px;border-radius:4px;background:#ed2138;box-shadow:0 0 12px rgba(237,33,56,.42)}
.sportsbook-card-top time{display:flex;align-items:center;gap:7px;color:#7f8b97;font-size:10px;font-weight:800;white-space:nowrap}
.sportsbook-card-top time b{color:#f4f6f8;font-size:11px}
.sportsbook-card-top time span{padding-left:7px;border-left:1px solid #39424d;color:#ed596a}
.sportsbook-teams{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);align-items:center;gap:4px;padding:20px 17px 19px}
.sportsbook-team{display:flex;min-width:0;min-height:116px;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.sportsbook-flag{display:flex;width:68px;height:54px;align-items:center;justify-content:center;margin-bottom:12px;padding:8px;border:1px solid rgba(255,255,255,.17);border-radius:12px;background:linear-gradient(145deg,#fff,#e6e9ed);box-shadow:0 11px 23px rgba(0,0,0,.34)}
.sportsbook-flag img{display:block;width:100%;max-height:100%;object-fit:contain;border-radius:3px}
.sportsbook-team strong{max-width:100%;overflow:hidden;color:#f4f6f8;font:700 17px/1.1 'Barlow Condensed',sans-serif;text-overflow:ellipsis;white-space:nowrap}
.sportsbook-team small{margin-top:6px;color:#626f7d;font-size:9px;font-weight:900;letter-spacing:1.7px}
.sportsbook-vs{display:flex;align-items:center;justify-content:center}
.sportsbook-vs span{display:grid;width:34px;height:34px;place-items:center;border:1px solid #333d48;border-radius:50%;background:#0b1016;color:#ed4356;font-size:9px;font-weight:900;box-shadow:0 8px 18px rgba(0,0,0,.3)}
.sportsbook-vs i{display:none}
.sportsbook-viewport:focus-visible{border-radius:15px;box-shadow:0 0 0 2px rgba(237,33,56,.55)}

@media(max-width:900px){.sportsbook-card{flex-basis:calc((100% - 14px)/2)}}
@media(max-width:620px){
  .sportsbook-card{flex-basis:100%}
  .sportsbook-live{display:none}
  .section-title-lockup{gap:9px}.section-title-lockup>img{width:35px;height:25px}
}

/* Sponsorships */
.sponsors-section{margin-top:3px;margin-bottom:36px}
.sponsor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.sponsor-card{position:relative;min-width:0;overflow:hidden;border:1px solid #29313a;border-radius:14px;background:linear-gradient(155deg,#171b21,#0c0f14 72%);box-shadow:0 13px 30px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.025);transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}
.sponsor-card::before{content:"";position:absolute;z-index:2;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,transparent 7%,#ed2138 33%,#ed2138 68%,transparent 94%);opacity:.48}
.sponsor-card:hover{border-color:rgba(237,33,56,.62);box-shadow:0 16px 38px rgba(0,0,0,.4),0 0 23px rgba(237,33,56,.08);transform:translateY(-3px)}
.sponsor-logo-stage{position:relative;display:grid;height:105px;place-items:center;padding:17px 24px;overflow:hidden;border-bottom:1px solid #303740;background:linear-gradient(145deg,#f7f8fa,#e8ebef)}
.sponsor-logo-stage::after{content:"";position:absolute;inset:auto -15% -38px;height:65px;background:radial-gradient(ellipse,rgba(237,33,56,.14),transparent 68%);pointer-events:none}
.sponsor-logo{position:relative;z-index:1;display:block;max-width:82%;max-height:68px;object-fit:contain}
.emirates-logo{max-height:74px}.adidas-logo{max-width:62%;max-height:61px}.hotels-logo{max-width:88%;max-height:52px}.konami-logo{max-width:82%;max-height:50px}
.sponsor-card-body{display:flex;min-height:178px;flex-direction:column;padding:17px 17px 15px}
.sponsor-card-body>span{color:#ed4255;font-size:9px;font-weight:900;letter-spacing:1.25px}
.sponsor-card-body h3{margin:7px 0 8px;color:#f5f7f9;font:700 23px/1 'Barlow Condensed',sans-serif}
.sponsor-card-body p{margin:0;color:#8c98a4;font-size:12px;line-height:1.55}
.sponsor-card-body small{margin-top:auto;padding-top:14px;border-top:1px solid rgba(255,255,255,.055);color:#56616d;font-size:8px;font-weight:900;letter-spacing:1.15px}

@media(max-width:900px){.sponsor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.sponsor-grid{grid-template-columns:1fr}.sponsor-logo-stage{height:96px}.sponsor-card-body{min-height:160px}}
@media(prefers-reduced-motion:reduce){.sponsor-card{transition:none}}

/* Premium promotional banner */
.promo-strip.premium-promo{position:relative;display:flex;min-height:224px;align-items:stretch;margin-top:8px;padding:0;overflow:hidden;border:1px solid rgba(237,33,56,.62);border-radius:18px;background:linear-gradient(112deg,#0b0e13 0%,#111219 42%,#27080e 72%,#640b19 100%);box-shadow:0 20px 52px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.05);isolation:isolate}
.premium-promo::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,#000,transparent 77%)}
.premium-promo::after{content:"";position:absolute;z-index:5;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);pointer-events:none}
.promo-content{position:relative;z-index:3;display:flex;width:62%;flex-direction:column;justify-content:center;padding:31px 36px}
.promo-kicker{display:inline-flex;width:max-content;align-items:center;gap:8px;color:#f3a4ad;font-size:9px;font-weight:900;letter-spacing:1.65px}
.promo-kicker i{width:25px;height:2px;background:linear-gradient(90deg,#ed2138,transparent);box-shadow:0 0 9px #ed2138}
.promo-strip.premium-promo h2{margin:10px 0 8px;color:#f7f8fa;font:700 34px/.96 'Barlow Condensed',sans-serif;letter-spacing:.1px}
.promo-strip.premium-promo h2 b{color:#ff3047;text-shadow:0 0 24px rgba(237,33,56,.34)}
.promo-strip.premium-promo p{max-width:485px;margin:0 0 17px;color:#909aa6;font-size:12px;line-height:1.5}
.promo-actions{display:flex;align-items:center;gap:12px}
.promo-primary{height:40px;padding:0 18px;border:1px solid #ff4357;border-radius:8px;background:linear-gradient(135deg,#ef213a,#c90d24);box-shadow:0 10px 24px rgba(229,26,45,.25);color:#fff;font-weight:800;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}
.promo-primary:hover{box-shadow:0 12px 28px rgba(229,26,45,.36);transform:translateY(-2px)}
.promo-primary span{margin-left:6px}
.promo-code{display:flex;height:40px;align-items:center;gap:10px;padding:0 13px;border:1px dashed rgba(255,255,255,.2);border-radius:8px;background:rgba(255,255,255,.025)}
.promo-code small{color:#697580;font-size:8px;font-weight:900;letter-spacing:1px}.promo-code strong{color:#f4f6f8;font-size:11px;letter-spacing:1.2px}
.promo-visual{position:relative;z-index:2;display:flex;width:38%;align-items:center;justify-content:center;overflow:hidden}
.promo-visual::before,.promo-visual::after{content:"";position:absolute;border:1px solid rgba(255,62,82,.27);border-radius:50%}
.promo-visual::before{width:270px;height:270px;box-shadow:0 0 0 26px rgba(237,33,56,.045),0 0 0 52px rgba(237,33,56,.025)}
.promo-visual::after{width:176px;height:176px;background:radial-gradient(circle at 35% 28%,#ff5365 0,#d5152c 42%,#830817 100%);box-shadow:0 0 54px rgba(237,33,56,.43)}
.promo-visual>img{position:absolute;z-index:2;right:11%;bottom:-10%;width:190px;opacity:.11;filter:grayscale(1) brightness(4);transform:rotate(-7deg)}
.promo-percent{position:relative;z-index:4;display:grid;width:160px;height:160px;place-content:center;text-align:center;transform:rotate(-4deg)}
.promo-percent span{position:absolute;left:9px;top:31px;color:#ffb1b9;font:700 23px 'Barlow Condensed',sans-serif}.promo-percent strong{color:#fff;font:800 76px/.78 'Barlow Condensed',sans-serif;letter-spacing:-3px;text-shadow:0 8px 20px rgba(0,0,0,.34)}.promo-percent small{margin-top:9px;color:#fff;font-size:10px;font-weight:900;letter-spacing:2.1px}
.promo-cannon{position:absolute;z-index:1;left:46%;top:50%;width:230px;height:150px;background:url('../img/sportsbook-icon.png') center/contain no-repeat;opacity:.035;transform:translate(-50%,-50%) rotate(-6deg)}
.promo-light{position:absolute;z-index:0;border-radius:50%;filter:blur(55px);pointer-events:none}.promo-light-one{right:11%;top:-55px;width:230px;height:150px;background:#ed2138;opacity:.2}.promo-light-two{left:18%;bottom:-85px;width:280px;height:130px;background:#7c0e1a;opacity:.24}

/* Arsenal kurumsal footer - ILK TASLAK, neredeyse tamami SILINDI
   (Gorev 6 + duzeltme turu 1). Canli footer asagida "Arsenal footer v2"
   basligi altinda (.arsenal-footer / .footer-identity / .footer-signature /
   .footer-navigation / .footer-column / .footer-assurance) ve parca onu
   basiyor. Buradan silinenler: .site-footer(+::before), .footer-topline,
   .footer-brand, .footer-links-grid, .footer-link-group, .footer-trust,
   .license-card, .responsible-copy, .age-badge, .footer-notice - hicbiri
   hicbir gorunumde gecmiyor (grep). KALAN .footer-socials KULLANILIYOR
   (parca/sosyal.blade.php): v2 katmani onu .arsenal-footer .footer-socials
   ile daha ozel sekilde eziyor ama bare kural hala gecerli bir secici,
   bu yuzden dokunulmadi. */
body{padding-bottom:0}
.footer-socials{display:flex;align-items:center;gap:9px}.footer-socials a{display:grid;width:39px;height:39px;place-items:center;border:1px solid #303740;border-radius:50%;background:#12161c;color:#ed2940;text-decoration:none;transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease}.footer-socials a:hover{border-color:#ed2138;background:#ed2138;color:#fff;transform:translateY(-3px)}.footer-socials svg{width:18px;height:18px;fill:currentColor}.footer-socials a[aria-label="Instagram"] svg{fill:none;stroke:currentColor;stroke-width:1.8}.footer-socials .fill-dot{fill:currentColor;stroke:none}

@media(max-width:780px){
  .promo-strip.premium-promo{min-height:330px}.promo-content{width:100%;justify-content:flex-start;padding:28px 24px 150px}.promo-strip.premium-promo h2{font-size:31px}.promo-strip.premium-promo p{max-width:72%}.promo-visual{position:absolute;right:0;bottom:-23px;width:48%;height:190px}.promo-visual::before{width:220px;height:220px}.promo-visual::after{width:135px;height:135px}.promo-percent{width:130px;height:130px}.promo-percent strong{font-size:62px}.promo-percent span{left:7px;top:27px}.promo-visual>img{width:145px}
  .footer-socials{width:100%;justify-content:flex-start}
}
@media(max-width:520px){
  .promo-strip.premium-promo{min-height:380px}.promo-content{padding:25px 20px 165px}.promo-strip.premium-promo h2{font-size:29px}.promo-strip.premium-promo p{max-width:100%}.promo-actions{align-items:flex-start;flex-direction:column}.promo-code{height:35px}.promo-visual{width:57%;height:175px}.promo-visual::after{width:122px;height:122px}.promo-percent strong{font-size:57px}
  .footer-socials{gap:7px}.footer-socials a{width:37px;height:37px}
}
@media(prefers-reduced-motion:reduce){.promo-primary,.footer-socials a{transition:none}}

/* Campaign banner v2 */
.campaign-banner{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);min-height:230px;margin-top:8px;overflow:hidden;border:1px solid #39252b;border-radius:18px;background:linear-gradient(112deg,#11151b 0%,#0a0d12 51%,#1a080d 72%,#5b0916 100%);box-shadow:0 22px 55px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.045);isolation:isolate}
.campaign-banner::before{content:"";position:absolute;z-index:0;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,transparent 5%,#ef233c 31%,#ff5264 53%,#ef233c 71%,transparent 95%);box-shadow:0 0 24px rgba(239,35,60,.48)}
.campaign-grid{position:absolute;z-index:0;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(90deg,#000 0,rgba(0,0,0,.5) 54%,transparent 86%)}
.campaign-copy{position:relative;z-index:3;display:flex;flex-direction:column;justify-content:center;padding:30px 38px}
.campaign-label{display:flex;align-items:center;gap:9px;color:#e98b96;font-size:9px;font-weight:900;letter-spacing:1.8px}.campaign-label span{width:30px;height:2px;background:linear-gradient(90deg,#ef233c,transparent);box-shadow:0 0 9px rgba(239,35,60,.8)}
.campaign-copy h2{margin:9px 0 8px;color:#f5f7f9;font:700 35px/.92 'Barlow Condensed',sans-serif;letter-spacing:.1px}.campaign-copy h2 strong{color:#ff3048;font-weight:800;text-shadow:0 0 25px rgba(239,35,60,.3)}
.campaign-copy>p{max-width:500px;margin:0;color:#8e99a5;font-size:12px;line-height:1.55}
.campaign-footer{display:flex;align-items:center;gap:19px;margin-top:18px}.campaign-footer button{height:41px;padding:0 18px;border:1px solid #ff465a;border-radius:8px;background:linear-gradient(135deg,#ef233c,#bc0b20);box-shadow:0 10px 25px rgba(229,26,45,.27);color:#fff;font-weight:800;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.campaign-footer button:hover{box-shadow:0 13px 30px rgba(229,26,45,.38);transform:translateY(-2px)}.campaign-footer button span{margin-left:7px}.campaign-footer ul{display:flex;gap:13px;margin:0;padding:0;list-style:none}.campaign-footer li{display:flex;align-items:center;gap:6px;color:#7f8b97;font-size:9px;font-weight:700}.campaign-footer li::before{content:"";width:5px;height:5px;border-radius:50%;background:#ef233c;box-shadow:0 0 8px #ef233c}
.campaign-stage{position:relative;z-index:2;display:grid;place-items:center;overflow:hidden}.campaign-stage::before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle at 32% 25%,#ff5366,#d3112a 46%,#790714 100%);box-shadow:0 0 65px rgba(239,35,60,.36)}.campaign-stage>img{position:absolute;right:-4px;bottom:-15px;width:205px;opacity:.11;filter:grayscale(1) brightness(4);transform:rotate(-7deg)}
.campaign-orbit{position:absolute;border:1px solid rgba(255,83,102,.22);border-radius:50%}.orbit-one{width:300px;height:300px;box-shadow:0 0 0 25px rgba(239,35,60,.035)}.orbit-two{width:368px;height:368px;border-color:rgba(255,83,102,.09)}
.campaign-offer{position:relative;z-index:3;display:flex;align-items:center;flex-direction:column;transform:rotate(-4deg)}.campaign-offer small{margin-bottom:4px;color:#ffd9dd;font-size:9px;font-weight:900;letter-spacing:2.5px}.campaign-offer b{display:flex;align-items:flex-start;color:#fff;font:800 80px/.72 'Barlow Condensed',sans-serif;letter-spacing:-4px;text-shadow:0 10px 24px rgba(0,0,0,.32)}.campaign-offer b i{margin:5px 3px 0 0;color:#ffbec5;font-size:25px;font-style:normal;letter-spacing:0}.campaign-offer span{margin-top:12px;padding:5px 9px;border:1px solid rgba(255,255,255,.2);border-radius:20px;background:rgba(8,10,14,.26);color:#fff;font-size:7px;font-weight:900;letter-spacing:1.45px}

/* Arsenal footer v2 */
.arsenal-footer{position:relative;margin-top:42px;overflow:hidden;border:1px solid #252b33;border-bottom:0;border-radius:18px 18px 0 0;background:radial-gradient(circle at 91% -8%,rgba(239,35,60,.14),transparent 29%),linear-gradient(180deg,#101319 0%,#090b0f 56%,#06080b 100%);box-shadow:0 -18px 52px rgba(0,0,0,.3)}
.arsenal-footer::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:58px 100%;pointer-events:none}
.footer-identity{position:relative;display:flex;align-items:center;justify-content:space-between;gap:35px;padding:29px 36px;border-bottom:1px solid rgba(255,255,255,.065)}
.footer-signature{display:flex;max-width:690px;align-items:center;gap:22px}.footer-signature>img{width:168px;height:68px;object-fit:contain;filter:drop-shadow(0 9px 25px rgba(229,26,45,.18))}.footer-signature>div{padding-left:22px;border-left:1px solid #313741}.footer-signature span{color:#ef4054;font-size:9px;font-weight:900;letter-spacing:1.8px}.footer-signature p{max-width:460px;margin:7px 0 0;color:#7c8793;font-size:12px;line-height:1.55}
.arsenal-footer .footer-socials{display:flex;flex:0 0 auto;align-items:center;gap:9px}.arsenal-footer .footer-socials a{display:grid;width:40px;height:40px;place-items:center;border:1px solid #303741;border-radius:50%;background:#12161c;color:#ef2941;transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease}.arsenal-footer .footer-socials a:hover{border-color:#ef233c;background:#ef233c;color:#fff;transform:translateY(-3px)}.arsenal-footer .footer-socials svg{width:18px;height:18px;fill:currentColor}.arsenal-footer .footer-socials a[aria-label="Instagram"] svg{fill:none;stroke:currentColor;stroke-width:1.8}.arsenal-footer .footer-socials .fill-dot{fill:currentColor;stroke:none}
.footer-navigation{position:relative;display:grid;grid-template-columns:.78fr 1fr 1fr;gap:58px;padding:35px 38px 39px}
.footer-column{display:flex;flex-direction:column}.footer-column h2{display:flex;align-items:center;gap:10px;margin:0 0 16px;color:#f0f2f4;font-size:11px;font-weight:900;letter-spacing:1.8px;text-transform:uppercase}.footer-column h2 span{width:23px;height:2px;background:linear-gradient(90deg,#ef233c,transparent);box-shadow:0 0 8px rgba(239,35,60,.5)}.footer-column a{position:relative;width:max-content;max-width:100%;padding:6px 0;color:#87919c;font-size:12px;text-decoration:none;transition:color .18s ease,transform .18s ease}.footer-column a::after{content:"";position:absolute;right:-14px;top:50%;width:0;height:1px;background:#ef233c;transition:width .18s ease}.footer-column a:hover{color:#fff;transform:translateX(4px)}.footer-column a:hover::after{width:8px}
.footer-assurance{position:relative;display:grid;grid-template-columns:395px minmax(0,1fr);align-items:center;gap:30px;margin:0 31px;padding:22px 7px;border-top:1px solid rgba(255,255,255,.065);border-bottom:1px solid rgba(255,255,255,.065)}
.license-panel{display:flex;align-items:center;gap:14px}.license-panel>img{display:block;width:246px;height:auto;filter:drop-shadow(0 9px 22px rgba(0,0,0,.35))}.license-panel>div{display:flex;flex-direction:column}.license-panel b{color:#ced5dc;font-size:9px;letter-spacing:1px}.license-panel span{margin-top:4px;color:#69747f;font-size:9px;line-height:1.4}
.responsible-panel{display:flex;align-items:center;gap:18px}.age-seal{display:grid;flex:0 0 52px;width:52px;height:52px;place-items:center;border:1px solid #616873;border-radius:50%;box-shadow:inset 0 0 0 5px #0b0e12;color:#fff;font:700 16px 'DM Sans',sans-serif}.responsible-panel p{margin:0;color:#747f8a;font-size:11px;line-height:1.65}.responsible-panel strong{display:block;margin-bottom:3px;color:#cbd1d7;font-size:11px}
.footer-legal{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:20px 38px}.footer-legal p{max-width:850px;margin:0;color:#5f6974;font-size:10px;line-height:1.58}.footer-legal span{color:#876d72;font-size:10px;white-space:nowrap}

@media(max-width:1080px){.footer-navigation{gap:30px;padding-inline:28px}.footer-assurance{grid-template-columns:350px 1fr}.license-panel>img{width:225px}.campaign-banner{grid-template-columns:1.15fr .85fr}}
@media(max-width:780px){
  .campaign-banner{grid-template-columns:1fr;min-height:360px}.campaign-copy{justify-content:flex-start;padding:27px 24px 180px}.campaign-copy h2{font-size:32px}.campaign-copy>p{max-width:70%}.campaign-stage{position:absolute;right:0;bottom:-28px;width:48%;height:210px}.campaign-stage::before{width:150px;height:150px}.orbit-one{width:205px;height:205px}.orbit-two{width:255px;height:255px}.campaign-offer b{font-size:62px}.campaign-stage>img{width:150px}
  .footer-identity{align-items:flex-start;padding:25px;flex-direction:column}.footer-signature{width:100%}.footer-navigation{grid-template-columns:1fr 1fr;gap:30px;padding:30px 25px}.footer-column:last-child{grid-column:1/-1}.footer-assurance{grid-template-columns:1fr;gap:20px;margin:0 24px}.footer-legal{align-items:flex-start;padding:20px 25px;flex-direction:column;gap:12px}.footer-legal span{white-space:normal}
}
@media(max-width:520px){
  .campaign-banner{min-height:415px}.campaign-copy{padding:25px 20px 198px}.campaign-copy h2{font-size:30px}.campaign-copy>p{max-width:100%}.campaign-footer{align-items:flex-start;flex-direction:column;gap:12px}.campaign-footer ul{flex-wrap:wrap}.campaign-stage{width:60%;height:195px}.campaign-stage::before{width:135px;height:135px}.campaign-offer b{font-size:58px}.campaign-offer span{font-size:6px}
  .arsenal-footer{margin-top:30px;border-radius:14px 14px 0 0}.footer-signature{align-items:flex-start;flex-direction:column;gap:10px}.footer-signature>img{width:146px;height:58px}.footer-signature>div{padding:0;border:0}.arsenal-footer .footer-socials{gap:7px}.arsenal-footer .footer-socials a{width:37px;height:37px}.footer-navigation{grid-template-columns:1fr;padding:28px 22px}.footer-column:last-child{grid-column:auto}.footer-assurance{margin:0 20px}.license-panel{align-items:flex-start;flex-direction:column}.license-panel>img{width:260px;max-width:100%}.responsible-panel{align-items:flex-start;flex-direction:column}.footer-legal{padding-inline:22px}
}
@media(prefers-reduced-motion:reduce){.campaign-footer button,.arsenal-footer .footer-socials a,.footer-column a{transition:none}}

/* Portable local typography and final alignment corrections. */
@font-face{font-family:'Barlow Condensed';src:url('../fonts/barlow-condensed-500.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/barlow-condensed-600.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/barlow-condensed-700.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/barlow-condensed-800.ttf') format('truetype');font-style:normal;font-weight:800;font-display:swap}
@font-face{font-family:'DM Sans';src:url('../fonts/dm-sans-400.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('../fonts/dm-sans-500.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:'DM Sans';src:url('../fonts/dm-sans-600.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:'DM Sans';src:url('../fonts/dm-sans-700.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
.section-head h2,.rail-heading h2,.match-title h2,.right-section h2,.campaign-copy h2,.sponsor-card-body h3{font-family:'Barlow Condensed',sans-serif}
.flag-badge img{display:block;width:100%;height:100%;object-fit:contain;border-radius:3px;filter:drop-shadow(0 2px 3px rgba(0,0,0,.14))}
.campaign-banner{width:100%;margin-top:36px}

/* Live results rail */
.live-wins-module{position:relative;overflow:hidden;background:radial-gradient(circle at 100% 0,rgba(229,26,45,.13),transparent 36%),linear-gradient(155deg,#151a21,#090c10 78%)}
.live-wins-module::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:34px 100%;pointer-events:none}
.live-wins-heading{position:relative;display:flex;align-items:center;justify-content:space-between;padding:17px 15px 12px;border-bottom:1px solid rgba(255,255,255,.075)}
.live-wins-heading span{display:block;margin-bottom:2px;color:#ed2b3e;font-size:8px;font-weight:900;letter-spacing:1.35px}
.live-wins-heading h2{margin:0;font:700 22px 'Barlow Condensed',sans-serif;letter-spacing:.1px}
.live-wins-status{display:flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid rgba(42,214,132,.2);border-radius:20px;background:rgba(31,158,102,.07);color:#54e6a0;font-size:8px;font-weight:900;letter-spacing:1px}
.live-wins-status i,.live-wins-foot span i{width:6px;height:6px;border-radius:50%;background:#2bd889;box-shadow:0 0 0 4px rgba(43,216,137,.08),0 0 11px rgba(43,216,137,.55);animation:liveWinPulse 1.7s ease-in-out infinite}
.live-wins-columns{position:relative;display:flex;align-items:center;justify-content:space-between;padding:9px 15px 6px;color:#5f6a76;font-size:7px;font-weight:900;letter-spacing:1.25px}
.live-wins-list{position:relative;padding:0 9px;overflow:hidden}
.live-win-row{position:relative;display:grid;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:60px;padding:7px 7px;border-bottom:1px solid rgba(255,255,255,.065);transition:background .2s ease}
.live-win-row:last-child{border-bottom:0}.live-win-row:hover{background:rgba(255,255,255,.025)}
.live-win-row::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:2px;border-radius:2px;background:currentColor;opacity:.8}
.live-win-game{display:block;width:42px;height:46px;border:1px solid rgba(255,255,255,.12);border-radius:8px;object-fit:cover;object-position:center;box-shadow:0 7px 16px rgba(0,0,0,.36)}
.live-win-copy{min-width:0}.live-win-copy strong{display:block;overflow:hidden;color:#edf0f3;font-size:10px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.live-win-copy span{display:flex;align-items:center;gap:5px;margin-top:5px;color:#7f8b97;font-size:9px;font-weight:700}.live-win-copy span i{width:5px;height:5px;border-radius:50%;background:#77838f}
.live-win-amount{text-align:right}.live-win-amount small{display:block;margin-bottom:4px;color:#68737f;font-size:6px;font-weight:900;letter-spacing:1px}.live-win-amount b{display:block;font-size:10px;font-weight:900;white-space:nowrap}
.live-win-row.is-profit{color:#35dc91}.live-win-row.is-profit .live-win-amount b{color:#35dc91;text-shadow:0 0 16px rgba(53,220,145,.18)}.live-win-row.is-profit .live-win-copy span i{background:#35dc91;box-shadow:0 0 8px rgba(53,220,145,.45)}
.live-win-row.is-loss{color:#ff4355}.live-win-row.is-loss .live-win-amount b{color:#ff4355;text-shadow:0 0 16px rgba(255,67,85,.16)}.live-win-row.is-loss .live-win-copy span i{background:#ff4355;box-shadow:0 0 8px rgba(255,67,85,.4)}
.live-win-row.is-new{animation:liveWinEnter .52s cubic-bezier(.2,.75,.24,1)}
.live-wins-foot{position:relative;display:flex;align-items:center;justify-content:space-between;margin:5px 10px 0;padding:11px 5px 13px;border-top:1px solid rgba(255,255,255,.07);color:#6f7a85;font-size:8px}.live-wins-foot span{display:flex;align-items:center;gap:7px}.live-wins-foot b{color:#8b404a;font-size:7px;letter-spacing:1.2px}
@keyframes liveWinPulse{50%{opacity:.42;transform:scale(.74)}}
@keyframes liveWinEnter{from{opacity:0;transform:translateY(-16px);filter:blur(3px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@media(max-width:1200px) and (min-width:901px){.live-wins-module{grid-column:1/-1}.live-wins-list{display:grid;grid-template-columns:1fr 1fr;column-gap:16px}.live-win-row:nth-child(odd){border-right:1px solid rgba(255,255,255,.06)}}
@media(max-width:520px){.live-win-row{grid-template-columns:46px minmax(0,1fr) auto;min-height:64px}.live-win-game{width:44px;height:49px}.live-win-copy strong,.live-win-amount b{font-size:11px}}
@media(prefers-reduced-motion:reduce){.live-wins-status i,.live-wins-foot span i,.live-win-row.is-new{animation:none}}

/* Full-width campaign slider: the former side banner has been removed. */
.hero-grid{display:block;width:100%}
.hero.visual-slider{width:100%;max-width:none;aspect-ratio:2 / 1;border-radius:16px}
.slider-frame{border-radius:14px}
.slider-frame img{object-fit:contain;object-position:center}
@media(max-width:780px){.hero-grid{display:block}.hero.visual-slider{aspect-ratio:2 / 1;border-radius:13px}.slider-frame{border-radius:11px}}

/* Compact 4:1 slider with a true clockwise travelling border light. */
.hero.visual-slider{position:relative;isolation:isolate;width:100%;max-width:none;height:auto;aspect-ratio:4 / 1;padding:2px;border:0;border-radius:16px;overflow:hidden;background:#790916;animation:none;box-shadow:0 16px 42px rgba(0,0,0,.44),0 0 0 1px rgba(229,26,45,.34)}
.hero.visual-slider::before{content:"";position:absolute;z-index:0;left:-30%;top:50%;width:160%;aspect-ratio:1;background:conic-gradient(from 0deg,transparent 0 73%,rgba(229,26,45,.16) 78%,#ff3347 84%,#fff 87%,#ff6b79 90%,transparent 96%);transform:translateY(-50%) rotate(0deg);transform-origin:center;animation:sliderBorderOrbit 3.8s linear infinite;pointer-events:none}
.slider-frame{position:relative;z-index:1;width:100%;height:100%;overflow:hidden;border-radius:14px;background:#13070a}
.slider-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.visual-slider .hero-progress{z-index:3}
@keyframes sliderBorderOrbit{to{transform:translateY(-50%) rotate(360deg)}}
@media(max-width:780px){.hero.visual-slider{aspect-ratio:4 / 1;border-radius:13px}.slider-frame{border-radius:11px}}
@media(prefers-reduced-motion:reduce){.hero.visual-slider::before{animation:none}}

/* Cok slaytli hero (Gorev 1): slaytlar ust uste, yalniz .on gorunur. Tek
   slaytta da ayni kural gecerli (o slayt hep .on) - iki ayri duzen
   tutulmaz. NOT: --accent bu dosyada tanimli degil (degiskenler --red /
   --red2 / --gold), o yuzden aktif nokta rengi mevcut --red2'ye baglandi -
   tanimsiz degisken noktanin hic renklenmemesine yol acardi. */
.visual-slider .slider-frame { position: relative; }
/* INCELEME duzeltme turu 1, Important #1: opacity:0 TEK BASINA
   hit-testing'i / tab sirasini kapatmiyordu - konumlu kardesler DOM
   sirasiyla boyandigi icin en usteki (son) slayt butun tiklamalari
   topluyordu, gizli <a>'lar da Tab ile odak aliyordu. visibility:hidden +
   pointer-events:none gizli slayti erisilebilirlik agacindan ve tiklama
   hedefinden cikarir. visibility'nin KENDI gecisi .6s GECIKMELI, yani
   slayt .on sinifi kalkinca opaklik solene kadar (.6s) hala gorunur/
   tiklanabilir kalir - donus (.on eklenirken) ise transition-delay:0s ile
   ANINDA gorunur+tiklanabilir olur. */
.visual-slider .hero-slide {
  position: absolute; inset: 0; opacity: 0; display: block;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .6s ease, visibility 0s linear .6s;
}
.visual-slider .hero-slide.on {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 1;
  transition-delay: 0s;
}
.visual-slider .hero-slide img { width: 100%; height: 100%; object-fit: cover; display: block; }
.hero-progress { display: flex; gap: 6px; }
.hero-progress-dot { flex: 1; height: 3px; background: rgba(255,255,255,.25); border-radius: 2px; }
.hero-progress-dot.on { background: var(--red2); }

@media (prefers-reduced-motion: reduce) {
  .visual-slider .hero-slide { transition: none; }
}

/* Dedicated mobile experience */
.mobile-bottom-nav,.mobile-menu-drawer,.mobile-menu-backdrop{display:none}
.mobile-menu-backdrop[hidden]{display:none}
.mobile-live-wins{display:none}

@media(max-width:780px){
  /* Sablon v2 (styles.css 603-606): mobil bordo zemin + kucuk top filigrani.
     body:after alt barin altindaki bosluk + safe-area seridini doldurur;
     z 92 = cekmece arka plani (91) USTUNDE, cekmece (93) ve alt bar (94)
     ALTINDA (arama 96 / hesap penceresi 95 zaten ustte). */
  html{scroll-padding-top:132px;background:#16090e}
  body{padding-top:132px;padding-bottom:calc(104px + env(safe-area-inset-bottom));overflow-x:hidden;background:radial-gradient(circle at 50% 3%,rgba(105,12,26,.52),transparent 24%),linear-gradient(rgba(7,8,12,.96),rgba(7,8,12,.975)),url('../img/arsenal-cannon-mark.png') center 42vh/410px auto no-repeat fixed,#07090d}
  body:before{inset:0;background-size:64px 64px;opacity:.22;transform:none}
  body:after{content:"";position:fixed;z-index:92;left:0;right:0;bottom:0;height:calc(16px + env(safe-area-inset-bottom));pointer-events:none;background:linear-gradient(180deg,#12080c,#16090e)}
  body.mobile-menu-open{overflow:hidden}
  .floating-sidebar{display:none!important}
  .floating-header{top:7px;width:calc(100% - 14px);border-radius:15px;background:linear-gradient(180deg,rgba(20,23,29,.94),rgba(8,11,15,.91));box-shadow:0 16px 42px rgba(0,0,0,.55);backdrop-filter:blur(20px)}
  .header-top{height:68px;grid-template-columns:46px minmax(0,1fr) 88px;padding:0 9px}
  .social-links{gap:0}.social-links a{display:none!important}.social-links a:first-child{display:grid!important;width:34px;height:34px;place-items:center;border:1px solid rgba(239,35,60,.23);border-radius:50%;background:rgba(239,35,60,.055)}.social-links svg{width:18px;height:18px}
  .brand-center{width:138px;height:58px}.brand-center img{width:136px;height:55px}
  .account-actions{gap:0}.account-actions .login-btn{display:none}.signup-btn{height:35px;padding:0 10px;border-radius:8px;font-size:10px}.signup-btn span{display:none}
  .floating-nav{height:42px;justify-content:flex-start;gap:0;padding:0 5px;overflow-x:auto;scrollbar-width:none}.floating-nav::-webkit-scrollbar{display:none}.floating-nav a{flex:0 0 auto;padding:12px 13px;font-size:10px}.floating-nav a.active:after{left:13px;right:13px;bottom:3px}
  .page-frame{width:calc(100% - 20px);max-width:none}
  .core-layout{display:block}.main-content{width:100%}.insight-rail{display:none!important}

  .hero.visual-slider{aspect-ratio:2.25 / 1;padding:2px;border-radius:13px;box-shadow:0 12px 32px rgba(0,0,0,.46),0 0 0 1px rgba(229,26,45,.28)}
  .slider-frame{border-radius:11px}.slider-frame img{object-fit:cover;object-position:center}
  .visual-slider .hero-progress{bottom:5px}.visual-slider .hero-progress i.on{width:22px;height:2px}

  .quick-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:10px 0 24px;overflow:visible;padding:0}
  .search{grid-column:1/-1;min-width:0;width:100%;height:44px;padding:0 12px}.search input{min-width:0;font-size:12px}.search kbd{display:none}
  .filter{height:39px;padding:0 5px;font-size:10px;white-space:nowrap}

  .section{margin-bottom:25px}.section-head{margin-bottom:11px}.section-title-lockup{gap:8px}.section-title-lockup>img{width:32px;height:23px}.section-head .kicker{margin:0 0 3px;font-size:8px;letter-spacing:1.25px}.section-head h2{font-size:22px;line-height:1}.section-head>a{font-size:9px}
  .game-row{display:flex;gap:8px;margin-inline:-1px;padding:2px 1px 8px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.game-row::-webkit-scrollbar{display:none}.game-card.image-card{flex:0 0 31%;min-width:0;scroll-snap-align:start}.game-card.image-card img{width:100%;height:auto;aspect-ratio:.71;border-radius:10px}

  .providers-section{margin-bottom:26px}.provider-viewport{margin-inline:-2px;padding:4px 2px 8px}.provider-track{gap:8px}.provider-card{flex-basis:calc((100% - 8px)/2);height:64px;border-radius:10px}
  .sportsbook-section{margin-bottom:18px}.sportsbook-heading{align-items:center}.sportsbook-card{flex-basis:100%;border-radius:13px}.sportsbook-card-top{padding:12px 13px 10px}.sportsbook-league{font-size:9px}.sportsbook-card-top time{font-size:8px}.sportsbook-card-top time b{font-size:9px}.sportsbook-teams{grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr);padding:15px 12px 13px}.sportsbook-team{min-height:96px}.sportsbook-flag{width:58px;height:47px;margin-bottom:9px}.sportsbook-team strong{font-size:16px}.sportsbook-cta-row{padding:10px}

  .mobile-live-wins{display:block;margin:0 0 27px;border-radius:14px}.mobile-live-wins .live-wins-list{display:grid;grid-template-columns:1fr;padding:0 8px}.mobile-live-wins .live-win-row:nth-child(n+6){display:none}.mobile-live-wins .live-wins-heading{padding:15px 13px 11px}.mobile-live-wins .live-wins-heading h2{font-size:23px}.mobile-live-wins .live-win-row{grid-template-columns:45px minmax(0,1fr) auto;min-height:63px}.mobile-live-wins .live-win-game{width:43px;height:48px}.mobile-live-wins .live-win-copy strong,.mobile-live-wins .live-win-amount b{font-size:11px}

  .sponsors-section{margin-bottom:28px}.sponsor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sponsor-logo-stage{height:82px;padding:12px}.sponsor-logo-stage .emirates-logo{width:auto;max-width:78%;height:48px;max-height:48px;object-position:center}.sponsor-card{border-radius:12px}.sponsor-card-body{min-height:145px;padding:13px 12px 11px}.sponsor-card-body h3{font-size:20px}.sponsor-card-body p{font-size:10px;line-height:1.45}.sponsor-card-body small{font-size:6px;letter-spacing:.75px}

  .campaign-banner{min-height:360px;margin-top:18px;border-radius:15px}.campaign-copy{padding:25px 20px 178px}.campaign-copy h2{font-size:31px}.campaign-copy>p{max-width:100%;font-size:11px}.campaign-footer{align-items:flex-start;flex-direction:column;gap:11px}.campaign-footer ul{flex-wrap:wrap}.campaign-stage{right:-5px;width:62%;height:190px}.campaign-offer b{font-size:58px}

  .arsenal-footer{margin-top:27px;margin-bottom:0;border-radius:15px 15px 0 0}.footer-identity{gap:18px;padding:22px 20px}.footer-signature{align-items:flex-start;flex-direction:column;gap:8px}.footer-signature>img{width:144px;height:56px}.footer-signature>div{padding:0;border:0}.footer-signature p{font-size:11px}.arsenal-footer .footer-socials{gap:7px;flex-wrap:wrap}.arsenal-footer .footer-socials a{width:38px;height:38px}.footer-navigation{grid-template-columns:1fr;gap:24px;padding:27px 21px}.footer-column:last-child{grid-column:auto}.footer-column a{font-size:13px}.footer-assurance{grid-template-columns:1fr;gap:19px;margin:0 20px;padding:20px 0}.license-panel{align-items:flex-start;flex-direction:column}.license-panel>img{width:260px;max-width:100%}.responsible-panel{align-items:flex-start}.footer-legal{align-items:flex-start;padding:19px 21px 28px;flex-direction:column;gap:11px}.footer-legal span{white-space:normal}

  /* Sablon v2 (styles.css 640): safe-area alt bosluga tasindi (ic dolguda
     degil), zemin biraz daha opak. */
  .mobile-bottom-nav{position:fixed;z-index:94;left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));display:grid;height:70px;grid-template-columns:repeat(5,1fr);align-items:center;padding:4px 6px;border:1px solid rgba(255,255,255,.11);border-radius:18px;background:linear-gradient(180deg,rgba(21,25,32,.98),rgba(8,11,15,.99));box-shadow:0 -12px 38px rgba(0,0,0,.54),inset 0 1px 0 rgba(255,255,255,.05);backdrop-filter:blur(22px)}
  .mobile-bottom-nav::before{display:none}
  .mobile-nav-item{position:relative;z-index:2;display:flex;height:56px;align-items:center;justify-content:center;gap:5px;flex-direction:column;padding:0;border:0;background:transparent;color:#77828e;text-decoration:none;font:700 9px 'DM Sans',sans-serif;cursor:pointer;transform:translateY(-4px)}.mobile-nav-item svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mobile-nav-item:hover,.mobile-nav-item:focus-visible{color:#ff3d52}.mobile-nav-item:nth-child(2){padding-right:9px}.mobile-nav-item:nth-child(4){padding-left:9px}
  /* Sayfanin alt_bar_aktif kancasi (layout) aktif sekmeyi is-active +
     aria-current ile isaretler; renk sablonun .mobile-nav-item.active
     kuralindan (Desktop/index/slot.css 45). */
  .mobile-nav-item.is-active{color:#ff3e53}
  .mobile-nav-home{position:relative;z-index:3;display:flex;height:66px;align-items:center;justify-content:flex-end;gap:3px;flex-direction:column;padding-bottom:5px;color:#f4f6f8;text-decoration:none;font:700 9px 'DM Sans',sans-serif;transform:translateY(-2px)}.mobile-nav-home>span{position:absolute;top:-25px;display:grid;width:58px;height:64px;place-items:center;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.mobile-nav-home>span::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 31%,rgba(255,255,255,.08) 42%,rgba(255,255,255,.92) 50%,rgba(255,255,255,.12) 58%,transparent 69%);background-size:260% 100%;background-position:170% 0;-webkit-mask:url('../img/mobile-crest.webp') center/contain no-repeat;mask:url('../img/mobile-crest.webp') center/contain no-repeat;opacity:0;pointer-events:none;animation:mobileCrestShine 5.6s ease-in-out infinite}.mobile-nav-home img{display:block;width:51px;height:60px;object-fit:contain;filter:drop-shadow(0 5px 9px rgba(0,0,0,.48));transform:translateY(-4px)}.mobile-nav-home small{font-size:9px}

  .mobile-menu-backdrop{position:fixed;z-index:91;inset:0;display:block;background:rgba(2,4,7,.72);backdrop-filter:blur(4px)}
  .mobile-menu-drawer{position:fixed;z-index:93;left:8px;right:8px;bottom:86px;display:block;max-height:calc(100dvh - 112px);padding:13px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:radial-gradient(circle at 80% 0,rgba(229,26,45,.13),transparent 32%),linear-gradient(165deg,#171c24,#090c11 76%);box-shadow:0 24px 70px rgba(0,0,0,.72);overflow:auto;opacity:0;visibility:hidden;transform:translateY(24px) scale(.98);transform-origin:bottom center;transition:opacity .24s ease,transform .24s ease,visibility .24s ease}.mobile-menu-drawer.is-open{opacity:1;visibility:visible;transform:none}
  .mobile-menu-head{display:flex;align-items:center;justify-content:space-between;padding:3px 3px 12px;border-bottom:1px solid rgba(255,255,255,.075)}.mobile-menu-head>div{display:flex;align-items:center;gap:10px}.mobile-menu-head img{width:31px;height:37px;object-fit:contain}.mobile-menu-head span{display:flex;flex-direction:column}.mobile-menu-head small{color:#ef3b50;font-size:7px;font-weight:900;letter-spacing:1.4px}.mobile-menu-head strong{margin-top:2px;font:700 21px 'Barlow Condensed',sans-serif}.mobile-menu-close{display:grid;width:36px;height:36px;place-items:center;border:1px solid #313944;border-radius:10px;background:#161b22;color:#ef3a4e;font-size:25px;line-height:1;cursor:pointer}
  .mobile-menu-links{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:12px 0}.mobile-menu-links a{display:grid;min-height:48px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;padding:0 9px;border:1px solid rgba(255,255,255,.065);border-radius:11px;background:rgba(255,255,255,.025);color:#aab3bd;text-decoration:none;font-size:11px;font-weight:700}.mobile-menu-links a.active{border-color:rgba(239,35,60,.35);background:linear-gradient(90deg,rgba(229,26,45,.17),rgba(229,26,45,.035));color:#fff}.mobile-menu-links .menu-icon{display:flex;width:30px;height:100%;align-items:center;justify-content:center;color:#ef3348}.mobile-menu-links .menu-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mobile-menu-links .menu-icon img{width:25px;height:19px;object-fit:contain}.mobile-menu-links em{padding:3px 4px;border-radius:4px;background:rgba(229,26,45,.13);color:#ff5969;font-size:6px;font-style:normal}
  .mobile-menu-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:8px;padding-top:2px}.mobile-menu-actions button{height:43px;border:1px solid #343d48;border-radius:10px;background:#171c23;color:#fff;font-weight:800}.mobile-menu-actions button:last-child{border-color:#f03549;background:linear-gradient(135deg,#ed2337,#b90d20)}
}

@media(max-width:420px){
  .header-top{grid-template-columns:40px minmax(0,1fr) 82px}.brand-center{width:128px}.brand-center img{width:126px}.signup-btn{padding:0 8px}
  .game-card.image-card{flex-basis:32.5%}.section-head h2{font-size:21px}.section-head>a{font-size:8px}
  .sponsor-grid{grid-template-columns:1fr}.sponsor-logo-stage{height:90px}.sponsor-card-body{min-height:145px}
  .mobile-menu-links{grid-template-columns:1fr 1fr}.mobile-menu-links a{padding-inline:7px;font-size:10px}
}

@media(prefers-reduced-motion:reduce){.mobile-menu-drawer{transition:none}}
@keyframes mobileCrestShine{0%,64%{background-position:170% 0;opacity:0}69%{opacity:.82}87%{background-position:-70% 0;opacity:.72}92%,100%{background-position:-70% 0;opacity:0}}
@media(prefers-reduced-motion:reduce){.mobile-nav-home>span::after{animation:none}}

/* ==================================================================
   BLADE UYARLAMASI (Gorev 4 - cerceve)
   Sablonun statik HTML'inde olmayan, gercek siteye gecerken zorunlu olan
   birkac kural. Sablonun kendi kurallari DEGISTIRILMEDI; burasi yalniz
   ekleme yapar.
   ================================================================== */

/* Giris/Kayit sablonda <button> idi. Gercek sitede bunlar /login ve
   /register'a giden <a> (script yoksa da calissin, orta tikla yeni sekmede
   acilsin) - inline bir <a>'ya yukseklik/padding islemiyor. */
.login-btn, .signup-btn, .mobile-menu-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  text-decoration: none;
  white-space: nowrap;
}

/* Header'daki uye kutusu: sablonda bakiye alani HIC yok (giris/kayit
   dugmeleri her zaman basiliydi). Tutar .login-btn kabugunu kullaniyor;
   etiket kucuk ve sonuk, rakam beyaz. */
.account-actions .hd-bal > span { color: #8f9baa; font-weight: 700; }
.account-actions .hd-bal > .money { color: #fff; font-weight: 800; }
/* Kutu oturmasi: app.css'in .hd-bal'i (line-height 1.15, 17px rakam,
   asimetrik padding) Arsenal'in 41px'lik dugme kabugunda etiketi ust
   kenara yapistiriyordu. Etiket + rakam tek blok olarak dikeyde ortalanir,
   yan dugmelerle ayni hizada durur. */
.account-actions .hd-bal {
  gap: 3px;
  padding: 0 16px;
  line-height: 1;
  text-align: center;
}
.account-actions .hd-bal > span { font-size: 9px; letter-spacing: .14em; }
.account-actions .hd-bal > .money { font-size: 15px; }

/* Bakiye gizleme (goz) dugmesi. Yerlesimi/davranisi kopyalanan temanin
   app.css'inden geliyor (.hd-money/.hd-eye, [data-bal-hidden] maskesi);
   burada yalniz PALET duzeltiliyor - oradaki --tx-3/--aqua-bright
   degiskenleri okyanus temasinin renkleri, Arsenal seridinde yabanci
   duruyordu. */
.account-actions .hd-eye { color: #8f9baa; }
.account-actions .hd-eye:hover { color: #fff; }
.account-actions .hd-eye:focus-visible { outline-color: #ed2337; }

/* MASKE TEK KURALDA, ISARETE BAGLI. app.css'in kurali yalniz .hd-bal
   ICINDEKI <b>'yi maskeliyordu; cerceve tutari UC yerde basiyor (baslik,
   mobil cekmece, oyun cubugu) ve digerleri goz kapaliyken ACIK kaliyordu -
   dugmenin tek amaci ("omuz ustunden bakan biri") alt bardaki Menu
   dugmesine tek dokunusla bozuluyordu. Artik olcut sunucunun bastigi
   [data-bal-deger] isareti: cerceveye yeni bir tutar eklenirse isareti
   almadigi surece testler kirmiziya doner (ArsenalEksikSayfalarTest).
   Hesap sayfalarindaki tutarlar BILEREK kapsam disi - orada oyuncu zaten
   cuzdanina bakiyor, gizleme anlamsiz. */
[data-bal-hidden] [data-bal-deger] { position: relative; color: transparent; }
[data-bal-hidden] [data-bal-deger]::after {
  content: '••••••';
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0;
  color: #8f9baa;
  letter-spacing: .08em;
}

/* Cekmecedeki yatirim satiri artik bir kap icinde (tutar + goz dugmesi yan
   yana): buton bir <a>'nin icine konamaz. Sablonun "birincil dugme"
   gorunumu .mobile-menu-actions a:last-child'a dayaliydi ve kap yuzunden
   kayboluyordu - ayni gorunum acikca bu sinifa baglandi. */
.mobile-menu-actions .mobile-menu-money { display: flex; align-items: center; gap: 6px; }
.mobile-menu-actions .mobile-menu-money > a {
  flex: 1;
  border-color: #f03549;
  background: linear-gradient(135deg, #ed2337, #b90d20);
}
/* app.css 560px altinda .hd-eye'i gizliyor (dar baslikta yer yok). Cekmece
   TAM OLARAK o boyutta acilan yuzey - buradaki dugme her boyutta durmali,
   bu yuzden secici daha ozel (medya sorgusu ozgullugu degistirmez). */
.mobile-menu-actions .hd-eye {
  display: grid;
  flex: 0 0 43px;
  width: 43px;
  height: 43px;
  border: 1px solid #343d48;
  border-radius: 10px;
  background: #171c23;
  color: #8f9baa;
}
.mobile-menu-actions .hd-eye:hover { color: #fff; }
.mobile-menu-actions .hd-eye:focus-visible { outline-color: #ed2337; }

/* MOBIL BASLIKTA BAKIYE (kullanici istegi 2026-09-26). Dar baslikta
   .login-btn gizli oldugu icin tutar da (.hd-bal bir .login-btn) hic
   gorunmuyordu. Uyede sag sutunda "Yatirim" dugmesinin SOLUNDA yalniz
   tutardan olusan bir cip; goz dugmesi cekmecede (baslikta yer yok).
   Iki oge sabit 88px'lik sag sutuna sigmadigi icin uye basliginda sag
   sutun icerige gore genisler, logo ortadaki esnek sutunda kuculur.
   Ziyaretci basligi degismez: .hd-money yalniz @auth'ta basiliyor. */
@media (max-width: 780px) {
  .header-top:has(.hd-money) { grid-template-columns: 34px minmax(0, 1fr) auto; }
  .header-top:has(.hd-money) .brand-center { width: 100%; max-width: 138px; justify-self: center; }
  .header-top:has(.hd-money) .brand-center img { width: 100%; height: auto; max-height: 55px; object-fit: contain; }
  .account-actions:has(.hd-money) { gap: 6px; }
  .account-actions .hd-money { display: flex; }
  .account-actions .hd-money .hd-eye { display: none; }
  .account-actions .login-btn.hd-bal {
    display: inline-flex;
    height: 35px;
    padding: 0 8px;
    border-radius: 8px;
  }
  .account-actions .hd-bal > span { display: none; }
  .account-actions .hd-bal > .money { font-size: 11.5px; white-space: nowrap; }
  .account-actions:has(.hd-money) .signup-btn { padding: 0 9px; }
}

/* Cekmecenin alt dugmeleri de <a> (bkz. yukarisi). Sablonun
   .mobile-menu-actions button kurallarinin aynisi. */
.mobile-menu-actions a {
  height: 43px;
  border: 1px solid #343d48;
  border-radius: 10px;
  background: #171c23;
  color: #fff;
  font-weight: 800;
}
.mobile-menu-actions a:last-child {
  border-color: #f03549;
  background: linear-gradient(135deg, #ed2337, #b90d20);
}

/* Footer'in "guvence" seridi sablonda iki hucreliydi (lisans rozeti + 18
   kutusu). Rozet basilmiyor (dogrulanabilir bir lisans kaydi yok - bkz.
   footer.blade.php yorumu), tek kalan hucre 395px'e sikismasin. */
.footer-assurance.is-tek { grid-template-columns: minmax(0, 1fr); }

/* Cerceve basilmayan sayfalar ($headerYok: giris, kayit, sifre sifirlama,
   e-posta dogrulama). Sablonun `body{padding:154px 0 80px}` kurali (ve tum
   kirilma noktasi turevleri) sabit header ile mobil alt bara yer aciyor;
   ikisi de basilmadiginda geriye bos bir serit kaliyor. .page-frame'in
   1200px'lik kabi da ayni sekilde yalniz cerceveli sayfalar icin - auth
   ekranlari tam genislikte bolunmus tasarim (auth.css .auth).
   Secici `body:not(...)` oldugu icin ozgullugu yukaridaki tum `body`
   kurallarindan yuksek ve dosyanin en sonunda duruyor: her kirilma
   noktasinda kazanir. */
body:not(.arsenal-cerceve) { padding-top: 0; padding-bottom: 0; }
body:not(.arsenal-cerceve) .page-frame { width: auto; max-width: none; }
/* Sablon v2 mobil zemininin body:after seridi yalniz alt bardaki bosluk
   + safe-area icin var; alt bar basilmayan sayfada (ayni $headerYok
   kapisi) icerigin son 16px'ini ortup duran bos bir serit olurdu. */
body:not(.arsenal-cerceve)::after { content: none; }

/* Dil secici. Sablonda hic yok (statik tasarim tek dilli); coklu dil
   kurulumunda basiliyor - header'da kod rozetleri, cekmecede tam adlar. */
.account-actions .arsenal-dil {
  display: flex;
  align-items: center;
  gap: 2px;
  padding: 3px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 9px;
  background: rgba(255, 255, 255, .035);
}
.account-actions .arsenal-dil a {
  padding: 5px 8px;
  border-radius: 6px;
  color: #8f9baa;
  text-decoration: none;
  font: 700 11px 'DM Sans', sans-serif;
}
.account-actions .arsenal-dil a.is-on { background: #ed2337; color: #fff; }

.mobile-menu-drawer .arsenal-dil {
  display: flex;
  gap: 7px;
  margin-top: 10px;
  /* Altindaki hesap/yatirim satiriyla arasi: bosluk olmadan iki dugme
     sirasi birbirine yapisiyordu (mobil cekmece, 2026-09-26). */
  margin-bottom: 10px;
  padding-top: 11px;
  border-top: 1px solid rgba(255, 255, 255, .075);
}
.mobile-menu-drawer .arsenal-dil a {
  display: inline-flex;
  flex: 1;
  height: 38px;
  align-items: center;
  justify-content: center;
  border: 1px solid #343d48;
  border-radius: 10px;
  color: #aab3bd;
  text-decoration: none;
  font-size: 12px;
  font-weight: 700;
}
.mobile-menu-drawer .arsenal-dil a.is-on { border-color: #f03549; color: #fff; }

/* Dar baslikta giris dugmesi bile gizleniyor (arsenal.css'in kendi
   kurali): dil secici de gizlenir, karsiligi cekmecede duruyor. */
@media (max-width: 1150px) {
  .account-actions .arsenal-dil { display: none; }
}

/* ------------------------------------------------------------------
   ANASAYFA (Gorev 5) uyarlamalari. Sablonun kartlari sabit varliklarla
   basiliyordu; gercek veriye baglaninca uc durum ek kural gerektirdi. */

/* Saglayici seridi: sablonla gelen 14 logonun disinda kalan saglayici
   (katalogda var, logosu yok) icin ad plakasi. Olmayan bir markanin
   logosunu basmak yerine adini yaziyoruz. */
.provider-card b {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 0 10px;
  color: #cfd6dd;
  font: 700 14px 'Barlow Condensed', sans-serif;
  letter-spacing: .5px;
  text-align: center;
}

/* Canli kazanc satirinda oyunun kapagi yoksa izgaranin ilk sutunu
   (43px) bos bir cerceve olarak kalir - baska bir oyunun gorseli
   yer tutucu olarak KONMAZ. */
.live-win-blank {
  display: block;
  width: 42px;
  height: 46px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 8px;
  background: #161d25;
}

/* Kampanya bandinin CTA'si sablonda <button> idi ve hicbir yere
   gitmiyordu; artik promosyon detayina giden bir <a>. Gorunum
   .campaign-footer button ile ayni. */
.campaign-footer .campaign-cta {
  display: inline-flex;
  align-items: center;
  height: 41px;
  padding: 0 18px;
  border: 1px solid #ff465a;
  border-radius: 8px;
  background: linear-gradient(135deg, #ef233c, #bc0b20);
  box-shadow: 0 10px 25px rgba(229, 26, 45, .27);
  color: #fff;
  font-weight: 800;
  text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease;
}
.campaign-footer .campaign-cta:hover {
  box-shadow: 0 13px 30px rgba(229, 26, 45, .38);
  transform: translateY(-2px);
}
.campaign-footer .campaign-cta span { margin-left: 7px; }

/* Hizli satirin filtreleri sablonda olu <button>'di; artik gercek lobi
   baglantilari. .filter'in dugme gorunumunu <a> icin tamamla. */
a.filter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  white-space: nowrap;
}

/* ------------------------------------------------------------------
   ANASAYFA sablon v2 (Gorev 3). Kaynak: Desktop/index/index.html
   95-101 (hizli satir), 131-151 (saglayicilar), 266-297 (sag kolon).
   Izgara (8li tek sira) ve mobil ray kurallari yukarida sablondan
   geldi (.game-row / .game-row > .gcard); anasayfa seridi ilk 8 oyunu
   basar (home.blade.php $seritAdet). */

/* Hizli satir ikonlari: sablonun unicode glifleri yerine layout
   sprite'i (#i-grid #i-ball #i-slots #i-live2). */
a.filter svg {
  flex: none;
  width: 14px;
  height: 14px;
  margin-inline-end: 6px;
}

/* Panelden yuklenen saglayici logosu (GameProvider `logo` medyasi) bir
   kelime isareti: sablonun kart boyu logo gorselleri gibi `cover` ile
   kirpilirsa yazinin iki ucu kesilir. Kartin icinde oranini koruyarak
   sigar. */
.provider-card img.is-media {
  object-fit: contain;
  padding: 14px 18px;
}

/* Fikstur tarihinin ay adi sablondaki gibi BUYUK harf (sablonda EYL,
   EKI - Turkce noktali buyuk I ile). CSS ile: sayfanin lang niteligi
   (tr) Turkce buyuk harf kuralini uygular; PHP mb_strtoupper("Eki")
   noktasiz I verirdi. */
.fixture-date span { text-transform: uppercase; }

/* Gunun maci etiketi artik kaydin turnuvasi (sablonda buyuk harfli
   "ULUSLAR LIGI"); bultenin lig etiketi (.sportsbook-league) gibi
   buyur. Yedek "GUNUN MACI" zaten buyuk. */
.match-label { text-transform: uppercase; }

/* Gunun macinin "Mac Detayi"si sablonda olu bir <button>; artik spor
   bahisleri sayfasina giden <a>. .match-cta kutusu <button> icin
   yazilmisti (metin dugmede kendiliginden ortalanir) - <a> icin
   ortalama ve alt cizgisizlik elle. */
a.match-cta {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}
a.match-cta span { margin-inline-start: 5px; }

@media (max-width: 780px) {
  a.filter svg { width: 12px; height: 12px; margin-inline-end: 4px; }
}

/* FINAL INCELEME MAJOR-1. Sablonun uc "oran" kutusu (.sportsbook-odds
   .odd) KALKTI: uydurma ondalik oranlari 42px yuksekliginde, cerceveli,
   yuvarlatilmis kutularda basiyordu - goze BUTON gibi gorunuyordu, oysa
   kupon sepetine baglanan bir uc yok. Yerine kart basina TEK gercek
   eylem: spor bahisleri sayfasina baglanti, uzerinde hicbir sayi yok.
   Kartin hover'da yukselmesi (translateY) de kalkti; kart tiklanabilir
   degil, yalniz icindeki baglanti tiklanabilir olmali. */
.sportsbook-cta-row {
  position: relative;
  z-index: 1;
  padding: 13px 14px 14px;
  border-top: 1px solid rgba(255,255,255,.055);
  background: rgba(5,8,12,.36);
}
.sportsbook-cta {
  display: flex;
  height: 42px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid #2b3743;
  border-radius: 8px;
  background: #17212b;
  color: #e6eaee;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .6px;
  text-decoration: none;
  text-transform: uppercase;
}
.sportsbook-cta:hover,
.sportsbook-cta:focus-visible { border-color: #ed2138; color: #fff; }
@media (max-width: 780px) {
  .sportsbook-cta { height: 39px; }
}

@media (prefers-reduced-motion: reduce) {
  .campaign-footer .campaign-cta { transition: none; }
}


/* ==================================================================
   ORTAK DIKEY OYUN KARTI (sablon v2 - spec Bolum 2)
   Kaynak: Desktop/index/slot.css 28-29 (.slot-cover / .slot-favorite /
   .slot-game-info), 39, 44 (<=780), 48 (<=520); canli esi
   live-casino.css 11 + 25-31. Kurallar MEVCUT siniflara uyarlandi:
   .slot-game -> .gcard / .tcard, .slot-cover -> .gcard-art / .tcard-art,
   .slot-game-info -> .gcard-meta / .tcard-body, .slot-favorite -> .fav.
   Sinif adlari degismedi cunku "daha fazla" (casino.js), favori (app.js)
   ve arama katmani onlara bagli.

   Gorsel: sablonun posterleri dikey, sitedeki oyun gorsellerinin hicbiri
   degil (cogu yatay, bir kismi kare). Kap .72 dikey; gorsel
   games/_oyun-gorsel ile KESILMEDEN sigar (app.css .gorsel-img: contain),
   bos kalan ust/alt bandi ayni gorselin bulanik kopyasi (.gorsel-bg)
   doldurur - siyah bant yok, figur kesilmiyor.

   Sira: bu dosya app.css'ten SONRA yuklenir; app.css'in yatay kart
   kurallari (4:3 kap, panel zemini, doygunluk filtresi, perde katmanlari)
   ayni ozgullukte burada eziliyor. casino.css / canli.css bu dosyadan
   SONRA geliyor: oradaki eski kart kurallari (canli "masa plakasi", 4:3)
   kaldirildi, yalniz izgara ve canliya ozgu satirlar (limit) kaldi.

   Sablonun canli kartindaki son sadelestirme (live-casino.css 25-31:
   kenarliksiz kapak, kalp yok) UYGULANMADI: spec canli masayi da
   favorilenebilir yapiyor ve ayni karti istiyor - canli kart slot
   kartiyla ayni cerceveyi ve kalbi tasir.
   ================================================================== */
.gcard,
.tcard {
  position: relative;
  min-width: 0;
  border: 0;
  border-radius: 13px;
  overflow: visible;
  background: none;
  box-shadow: none;
  transition: transform .25s;
}
.gcard:hover,
.tcard:hover { transform: translateY(-4px); box-shadow: none; }

.gcard-art,
.tcard-art {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  aspect-ratio: .72;
  border: 1px solid rgba(255, 255, 255, .11);
  border-radius: 13px;
  background: #151922;
  box-shadow: 0 13px 26px rgba(0, 0, 0, .28);
  filter: none;
  transition: border-color .22s, box-shadow .22s;
}
/* Alt karartma (sablonun .slot-cover::after'i). */
.gcard-art::after,
.tcard-art::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: auto 0 0;
  height: 42%;
  background: linear-gradient(transparent, rgba(5, 7, 10, .78));
  pointer-events: none;
}
.gcard:hover .gcard-art,
.tcard:hover .tcard-art {
  border-color: rgba(240, 36, 60, .62);
  box-shadow: 0 18px 36px rgba(0, 0, 0, .4), 0 0 0 1px rgba(240, 36, 60, .13);
  filter: none;
}
.gcard-art img.gorsel-img,
.tcard-art img.gorsel-img { transition: transform .45s cubic-bezier(.2, .75, .2, 1), filter .3s; }
.gcard:hover .gcard-art img.gorsel-img,
.tcard:hover .tcard-art img.gorsel-img { transform: scale(1.04); filter: brightness(.68); }

/* Eski temanin perde katmanlari sablonda yok. Yeni kart parcalari onlari
   basmiyor; henuz sablona tasinmamis bir kart (canli lobinin "oynadigin
   masalar" rayi) hala basiyor - orada da gorunmesinler. */
.gcard .gcard-veil,
.gcard .gcard-shade,
.tcard .gcard-veil,
.tcard .gcard-shade { display: none; }

/* Hover eylemi: kapagin altinda kirmizi "Oyna" seridi (.slot-hover).
   Kart zaten bastan basa baglanti (.gcard-link); bu yalniz ipucu. */
.gcard .gcard-hover,
.tcard .gcard-hover {
  inset: auto 10px 11px;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 6px;
  background: none;
  opacity: 0;
  transform: translateY(9px);
  transition: opacity .25s, transform .25s;
}
.gcard:hover .gcard-hover,
.tcard:hover .gcard-hover { opacity: 1; transform: none; }
.gcard-hover .btn {
  flex: 1;
  height: 34px;
  gap: 5px;
  padding: 0 8px;
  border: 1px solid #f13b50;
  border-radius: 8px;
  background: linear-gradient(135deg, #ec253c, #b70c20);
  box-shadow: none;
  color: #fff;
  font-size: 8px;
  font-weight: 900;
}
.gcard-hover .btn svg { width: 10px; height: 10px; }

/* Rozet (oyunun badge alani; canli lobi rayinda CANLI): sol ust,
   sablonun .new-chip'i. */
.gcard .badge-new,
.tcard .badge-live {
  top: 8px;
  inset-inline-start: 8px;
  z-index: 3;
  height: auto;
  padding: 5px 7px;
  border: 1px solid rgba(239, 40, 63, .38);
  border-radius: 7px;
  background: rgba(192, 12, 34, .8);
  -webkit-backdrop-filter: blur(7px);
          backdrop-filter: blur(7px);
  color: #fff;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .6px;
  line-height: 1;
}

/* Kalp: sag ust, hep gorunur (sablonun .slot-favorite'i; eski kart
   kalbi yalniz hover'da aciyordu). Dolu hali kirmizi zemin. Kalp
   .gcard-link'in KARDESI ve onun ustunde - tiklama karta gitmez. */
.gcard .fav,
.tcard .fav {
  position: absolute;
  z-index: 5;
  top: 8px;
  inset-inline-end: 8px;
  display: grid;
  place-items: center;
  width: 29px;
  height: 29px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 9px;
  background: rgba(7, 10, 14, .7);
  -webkit-backdrop-filter: blur(7px);
          backdrop-filter: blur(7px);
  color: #fff;
  opacity: 1;
  cursor: pointer;
}
.gcard .fav svg,
.tcard .fav svg { width: 15px; height: 15px; }
.gcard .fav:hover,
.tcard .fav:hover { border-color: rgba(240, 36, 60, .62); color: #fff; }
.gcard .fav.is-on,
.tcard .fav.is-on {
  border-color: #ef3047;
  background: #d7152d;
  box-shadow: 0 5px 15px rgba(218, 19, 44, .36);
}
.gcard .fav.is-on svg,
.tcard .fav.is-on svg { fill: #fff; stroke: #fff; }

/* Ad + saglayici kapagin ALTINDA (.slot-game-info). Canli kartta alt
   satir "saglayici - tur", limit (tcard-foot, canli.css) onun altinda. */
.gcard-meta,
.tcard-body {
  position: relative;
  z-index: 2;
  padding: 10px 3px 1px;
  text-align: start;
}
.gcard-meta b,
.tcard-name {
  display: block;
  overflow: hidden;
  margin: 0;
  color: #f0f2f4;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.gcard-meta small,
.tcard-sub {
  display: block;
  overflow: hidden;
  margin: 4px 0 6px;
  color: #687481;
  font-size: 8px;
  font-weight: 700;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Anasayfa seritleri (.game-row) mobilde yatay ray: sablonun
   .game-card.image-card kuralinin (flex 31% / 32.5%) karti. Masaustunde
   ayni serit 8 sutunlu tek sira (.game-row, sablon styles.css 125);
   anasayfa en fazla 8 oyun basar (home.blade.php $seritAdet). */
@media (max-width: 780px) {
  .game-row > .gcard { flex: 0 0 31%; scroll-snap-align: start; }

  .gcard,
  .tcard,
  .gcard-art,
  .tcard-art { border-radius: 9px; }
  .gcard:hover,
  .tcard:hover { transform: none; }
  .gcard:hover .gcard-art img.gorsel-img,
  .tcard:hover .tcard-art img.gorsel-img { filter: none; }
  /* Dokunmatikte hover yok; serit ipucu da yok (.slot-hover gizli). */
  .gcard .gcard-hover,
  .tcard .gcard-hover { display: none; }
  .gcard-meta,
  .tcard-body { padding: 7px 1px 0; }
  .gcard-meta b,
  .tcard-name { font-size: 8px; line-height: 1.2; }
  .gcard-meta small,
  .tcard-sub { margin: 3px 0 5px; font-size: 7px; }
  .gcard .fav,
  .tcard .fav { top: 5px; inset-inline-end: 5px; width: 23px; height: 23px; border-radius: 7px; }
  .gcard .fav svg,
  .tcard .fav svg { width: 12px; height: 12px; }
  .gcard .badge-new,
  .tcard .badge-live { top: 5px; inset-inline-start: 5px; padding: 4px 5px; border-radius: 6px; font-size: 6px; }
}
@media (max-width: 520px) {
  .gcard-art,
  .tcard-art { aspect-ratio: .74; }
}
@media (max-width: 420px) {
  .game-row > .gcard { flex-basis: 32.5%; }
}
@media (prefers-reduced-motion: reduce) {
  .gcard,
  .tcard,
  .gcard-art img.gorsel-img,
  .tcard-art img.gorsel-img,
  .gcard .gcard-hover,
  .tcard .gcard-hover { transition: none; }
}
