@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@400;500;600;700;800;900&display=swap');
:root{--bg:#080e17;--bg2:#0c1521;--surface:#101b29;--surface2:#142233;--stroke:#253648;--text:#f3f7fc;--dim:#8295ab;--green:#bbf34d;--green2:#73cf45;--red:#ff5f69;--blue:#77b3ee;--radius:18px;--shadow:0 20px 55px rgba(0,0,0,.23)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Cairo',Tahoma,Arial,sans-serif;color:var(--text);background:radial-gradient(ellipse at 52% -280px,#17304a 0,transparent 800px),var(--bg);min-height:100vh}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}svg{width:21px;height:21px;vertical-align:middle}::selection{background:var(--green);color:#111}
.container{max-width:1220px;padding:0 24px;margin:auto}.topbar{height:83px;border-bottom:1px solid #203045;background:#0a121edb;position:sticky;top:0;z-index:50;backdrop-filter:blur(18px)}.topbar-inner{height:100%;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:11px;white-space:nowrap}.brand-icon{width:44px;height:44px;border-radius:14px;background:var(--green);display:grid;place-items:center;color:#0d1720;box-shadow:0 0 0 5px #b9f34b13}.brand-icon svg{width:27px;height:27px}.brand-name{font-size:23px;line-height:1.3;font-weight:900;letter-spacing:-.8px}.brand-name span{color:var(--green)}.brand-caption{display:block;font-size:10px;color:#8b9fb4;letter-spacing:.1px;font-weight:600;margin-top:-1px}.topnav{display:flex;gap:5px;margin-inline:auto}.topnav a{padding:11px 14px;color:#9aa9b9;border-radius:11px;font-weight:700;font-size:13px;transition:.2s}.topnav a:hover,.topnav a.active{color:var(--green);background:#213029}.header-tools{display:flex;align-items:center;gap:11px}.outline-btn,.icon-btn{border:1px solid #2b3b50;background:#13202d;color:#e4eaf4;border-radius:11px;padding:10px 15px;font-size:12px;font-weight:800}.icon-btn{width:42px;height:42px;padding:0;display:grid;place-items:center}.outline-btn:hover,.icon-btn:hover{border-color:var(--green)}.mobile-only{display:none}.disclaimer{color:#cbd7ea;background:#142134;border:1px solid #29415c;border-radius:13px;padding:11px 16px;font-size:12px;margin-top:20px;display:flex;align-items:center;gap:10px}.disclaimer svg{color:#eecb72;flex-shrink:0}
.hero{margin-top:23px;border:1px solid #28443f;border-radius:24px;min-height:250px;position:relative;overflow:hidden;background:radial-gradient(circle at 22% 100%,#1b6949 0,transparent 48%),linear-gradient(110deg,#172d35,#0c1e2e 68%);display:flex;align-items:center;justify-content:space-between;padding:35px 48px;box-shadow:var(--shadow)}.hero:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(100deg,transparent 0 42px,#ffffff04 42px 43px);pointer-events:none}.hero-content{position:relative;z-index:2}.eyebrow{display:inline-flex;align-items:center;gap:7px;color:var(--green);font-size:12px;font-weight:900;background:#c9fb5012;border:1px solid #b6f14b40;padding:6px 12px;border-radius:99px}.dot{width:7px;height:7px;display:inline-block;background:var(--green);border-radius:50%;box-shadow:0 0 0 4px #b3ef4840}.hero h1{font-size:42px;line-height:1.45;margin:10px 0 5px;font-weight:900;letter-spacing:-1.4px}.hero h1 span{color:var(--green)}.hero p{font-size:14px;color:#bed0db;margin:0 0 23px}.hero-actions{display:flex;gap:10px;align-items:center}.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--green);color:#142019;padding:11px 21px;border:0;border-radius:12px;font-weight:900;font-size:13px;box-shadow:0 8px 22px #baff4633}.primary-btn:hover{background:#d1ff76}.ghost-btn{display:inline-flex;align-items:center;gap:7px;border:1px solid #577369;background:#ffffff09;color:#eaf3ef;padding:10px 16px;border-radius:12px;font-size:13px;font-weight:800}.hero-art{position:relative;width:35%;min-height:210px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stadium{width:295px;height:195px;transform:rotate(-18deg);border:1px solid #b8e7bb3b;border-radius:90px;background:radial-gradient(ellipse at center,#57ca7839,#307f5644 45%,transparent 46%),repeating-linear-gradient(90deg,#65ca8942 0 25px,#56b97b42 25px 50px);position:absolute;box-shadow:0 0 0 12px #ffffff0b,0 0 0 26px #ffffff06,0 10px 80px #8bec7740}.stadium:before{content:'';position:absolute;left:50%;top:50%;border:2px solid #d3f9d047;width:63px;height:63px;border-radius:50%;transform:translate(-50%,-50%)}.stadium:after{content:'';position:absolute;inset:10px 45%;border-left:2px solid #d3f9d047}.ball{font-size:64px;z-index:2;filter:drop-shadow(0 15px 20px #0009);transform:translate(-35px,-45px)}.floating-chip{position:absolute;bottom:3px;left:0;border:1px solid #647e70;background:#1b2d31e5;backdrop-filter:blur(10px);padding:7px 15px;border-radius:11px;font-size:13px;color:#d3e5db;font-weight:800;display:flex;align-items:center;gap:8px;z-index:2}.floating-chip span{color:var(--green)}
.stats-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:20px 0 32px}.stat{background:#111e2bc9;border:1px solid #26384b;border-radius:15px;padding:19px;display:flex;align-items:center;gap:15px}.stat-ic{display:grid;place-items:center;width:44px;height:44px;background:#aef24517;border-radius:12px;color:var(--green)}.stat-ic.red{color:var(--red);background:#ff5f6814}.stat-ic.blue{color:#8ebbed;background:#8ebbed16}.stat strong{display:block;font-size:21px;line-height:1.4}.stat span:last-child{color:var(--dim);font-size:12px;font-weight:700}
.content-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:0 0 18px}.section-kicker{font-size:12px;color:var(--green);font-weight:900}.content-heading h2{font-size:25px;line-height:1.6;margin:1px 0 0;letter-spacing:-.5px}.content-heading p{font-size:12px;color:var(--dim);margin:2px 0}.select{background:#142333;border:1px solid #2b4055;color:#d4e2ed;padding:10px 13px;border-radius:10px;outline:0;font-size:12px;min-width:152px}.filter-row{display:flex;gap:11px;flex-wrap:wrap;align-items:center;margin-bottom:14px}.tabs{display:flex;gap:6px;flex:1}.tab{border:1px solid transparent;border-radius:11px;background:#14202d;color:#95a6b7;font-weight:800;font-size:13px;padding:10px 18px;white-space:nowrap}.tab:hover{color:#fff}.tab.active{background:var(--green);color:#14211c}.counter{margin-inline-start:4px;opacity:.7}.search{height:45px;width:230px;display:flex;align-items:center;gap:8px;background:#14202d;border:1px solid #263a50;border-radius:11px;padding:0 13px;color:#8ea2b7}.search:focus-within{border-color:var(--green)}.search input{background:transparent;border:0;outline:0;width:100%;color:white;font-size:12px}.search input::placeholder{color:#8495a7}.days{display:flex;gap:10px;margin-bottom:24px;overflow-x:auto;padding:2px 0 9px;scrollbar-width:thin}.day{min-width:110px;padding:12px 21px;background:#111c2a;border:1px solid #26354a;border-radius:12px;text-align:center;color:#93a5ba;font-size:12px;font-weight:800}.day strong{display:block;font-size:16px;color:#e7f0fa}.day.active{background:#182f26;border-color:#91c64d;color:var(--green)}.day.active strong{color:var(--green)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start;padding-bottom:70px}.match-list{display:grid;gap:13px}.match-card{overflow:hidden;background:linear-gradient(145deg,#132130,#101b29);border:1px solid #25374a;border-radius:18px;transition:transform .2s,border-color .2s}.match-card:hover{transform:translateY(-2px);border-color:#59846a}.match-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 20px 0;color:#93a8bc;font-size:11px;font-weight:800}.league-name{display:flex;align-items:center;gap:8px}.league-circle{width:26px;height:26px;background:linear-gradient(125deg,#314c6b,#192c43);color:#b3deff;display:grid;place-items:center;border-radius:8px;font-size:13px}.match-status{display:inline-flex;gap:6px;align-items:center;font-size:11px}.match-status.live{color:var(--red)}.match-status.live:before{content:'';width:7px;height:7px;background:var(--red);border-radius:50%;box-shadow:0 0 0 4px #ff5f6822;animation:blink 1.5s infinite}.match-status.upcoming{color:#d2dce7}.match-status.finished{color:#96a6b7}@keyframes blink{50%{opacity:.3}}.match-main{display:grid;grid-template-columns:minmax(0,1fr) 110px minmax(0,1fr);gap:8px;align-items:center;padding:13px 20px 18px}.team{display:flex;align-items:center;gap:12px;min-width:0}.team.away{justify-content:flex-end;flex-direction:row-reverse}.team-crest{width:55px;height:55px;flex-shrink:0;border-radius:15px;display:grid;place-items:center;font-size:15px;font-weight:900;letter-spacing:-1px;box-shadow:0 6px 14px #0002;color:white;border:1px solid #ffffff3d;position:relative;isolation:isolate}.team-crest:before{content:'';position:absolute;inset:5px;border:1px solid #ffffff3b;border-radius:10px;z-index:-1}.team-name{font-size:14px;font-weight:900;line-height:1.8}.team-tag{display:block;font-size:11px;font-weight:800;color:#71869b}.score{text-align:center;white-space:nowrap}.score strong{font-family:Arial,Tahoma,sans-serif;display:block;font-size:30px;letter-spacing:2px}.score time{display:block;font-size:12px;font-weight:900;color:#e6ecf2}.score .game-time{font-size:11px;color:#91a6b9}.match-foot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #273748;padding:10px 19px;gap:9px;background:#0d19255c}.foot-note{display:flex;align-items:center;gap:7px;color:#8399af;font-size:11px}.watch-btn{display:inline-flex;gap:7px;align-items:center;border-radius:8px;padding:7px 13px;background:#b9f34b15;border:1px solid #b9f34b40;color:var(--green);font-size:11px;font-weight:900}.watch-btn:hover{background:var(--green);color:#0d1b19}.favorite{background:transparent;border:0;color:#72889e;display:grid;place-items:center;width:30px;height:30px}.favorite.on{color:#f6cf68}.favorite.on svg{fill:#f6cf68}.right-rail{display:grid;gap:16px}.rail-box{padding:23px;background:#111e2c;border:1px solid #263a4b;border-radius:18px}.rail-box h3{font-size:16px;margin:0 0 14px}.rail-box p{font-size:12px;color:#98a8b8;line-height:2;margin:0 0 15px}.rail-box h3 .muted{font-size:11px;color:var(--dim);font-weight:700}.rail-schedule{display:grid;gap:11px}.rail-game{border-top:1px solid #273748;padding-top:12px;display:flex;align-items:center;justify-content:space-between;gap:8px}.rail-game strong{font-size:12px}.rail-game small{display:block;color:#8396ac;font-size:10px}.rail-game span{font-size:12px;color:var(--green);font-weight:900}.rail-hero{background:linear-gradient(150deg,#243b2c,#152533);border:1px solid #435f4e;position:relative;overflow:hidden}.rail-hero:after{content:'⚽';position:absolute;left:-27px;bottom:-33px;opacity:.11;font-size:145px}.rail-hero>*{position:relative;z-index:1}.rail-box .mini-link{font-size:12px;font-weight:900;color:var(--green)}.empty-state{text-align:center;padding:60px 25px;background:#111d2a;border-radius:17px;border:1px dashed #3c4b5b}.empty-state svg{width:45px;height:45px;color:#7792aa}.empty-state h3{font-size:17px;margin:10px 0 0}.empty-state p{font-size:12px;color:#8ca0b4}
.footer{background:#0a131f;border-top:1px solid #25364a}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:22px;padding-bottom:24px;color:#8ba1b6;font-size:11px}.footer a:hover{color:var(--green)}.footer-links{display:flex;gap:16px}.mobile-nav{display:none}.toast{position:fixed;left:50%;bottom:25px;transform:translateX(-50%) translateY(25px);background:#d7fda7;color:#122015;border-radius:10px;padding:9px 18px;z-index:100;opacity:0;pointer-events:none;font-size:12px;font-weight:900;transition:.2s}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.breadcrumbs{display:flex;gap:9px;align-items:center;color:#96a9bb;font-size:12px;margin-top:24px}.breadcrumbs a:hover{color:var(--green)}.watch-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;margin-top:23px;margin-bottom:65px}.watch-title{font-size:25px;margin:0 0 13px}.player-shell{position:relative;background:#04090d;aspect-ratio:16/9;border:1px solid #3b5060;border-radius:19px;overflow:hidden;display:grid;place-items:center}.player-placeholder{display:grid;place-items:center;text-align:center;padding:25px;color:#d9e7f2}.player-placeholder .big{width:67px;height:67px;background:#baf34b20;border:1px solid #baf34b59;border-radius:19px;display:grid;place-items:center;color:var(--green);margin-bottom:14px}.player-placeholder .big svg{width:35px;height:35px}.player-placeholder h3{font-size:16px;margin:5px 0}.player-placeholder p{font-size:12px;line-height:2;color:#90a3b6;max-width:390px}.player-shell video,.player-shell iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}.player-shell video{object-fit:contain}.watch-info{margin-top:15px;padding:22px;border:1px solid #2b3c4e;border-radius:18px;background:#13202e}.watch-info h3{margin:0 0 12px;font-size:15px}.watch-info p{color:#a0b1c1;line-height:2;font-size:13px;margin:0}.watch-teams{display:flex;align-items:center;justify-content:center;gap:20px;margin:0 0 19px}.watch-teams .team-name{margin-top:5px;font-size:13px}.center-team{display:grid;justify-items:center;gap:5px}.watch-score{font-size:28px;font-weight:900}.pill{border-radius:20px;border:1px solid #355044;background:#bafa4c12;color:var(--green);font-weight:900;font-size:11px;padding:5px 13px}.tool-btn{padding:9px 12px;border-radius:10px;border:1px solid #385066;background:#1a2a3a;color:#eef4f9;font-size:12px;font-weight:800}.player-error{color:#f59a9a;display:none;font-size:12px;margin-top:8px}.helper-panel{display:none;padding:14px 20px;background:#1c2b3a;border:1px solid #304c61;margin-top:13px;border-radius:13px;color:#d8e9f4;font-size:12px;line-height:2}.helper-panel.visible{display:block}
.admin-layout{display:grid;grid-template-columns:280px 1fr;gap:18px;margin:25px 0 65px}.editor-list,.editor{background:#111e2b;border:1px solid #2b4052;border-radius:17px;padding:22px}.editor-list h2,.editor h2{font-size:17px;margin:0 0 17px}.edit-item{border:1px solid #26394d;color:#b9cad9;background:#152535;border-radius:10px;text-align:right;width:100%;margin-bottom:7px;padding:11px;font-size:12px;font-weight:800}.edit-item.active{border-color:#b4ee49;color:var(--green)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.field{display:grid;gap:7px}.field label{color:#abbdd0;font-size:12px;font-weight:800}.field input,.field select{width:100%;min-width:0;background:#0d1825;border:1px solid #2a4358;color:white;border-radius:9px;padding:11px;outline:none;font-size:12px}.field input:focus,.field select:focus{border-color:var(--green)}.wide{grid-column:1/-1}.admin-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.note{font-size:12px;color:#99acc1;line-height:2}.warn{background:#292417;border:1px solid #675637;border-radius:12px;padding:12px 16px;font-size:12px;color:#e8d7a0}
@media(max-width:970px){.topnav{display:none}.hero-art{width:30%}.hero{padding:30px}.hero h1{font-size:36px}.layout,.watch-layout{grid-template-columns:minmax(0,1fr)}.right-rail{grid-template-columns:1fr 1fr}.stats-strip{gap:9px}.stat{padding:15px}}
@media(max-width:600px){.container{padding:0 15px}.topbar{height:67px}.topbar-inner{gap:9px}.brand-icon{width:38px;height:38px;border-radius:12px}.brand-name{font-size:19px}.brand-caption{font-size:8px}.outline-btn{display:none}.mobile-only{display:grid}.header-tools{margin-inline-start:auto}.topbar .icon-btn{width:37px;height:37px}.disclaimer{font-size:10px;line-height:1.8;margin-top:14px;padding:9px 10px;align-items:start}.disclaimer svg{margin-top:2px}.hero{margin-top:15px;min-height:215px;border-radius:18px;padding:24px 21px}.hero h1{font-size:28px;line-height:1.5;margin-top:13px;max-width:260px}.hero p{font-size:11px;max-width:240px;line-height:2;margin-bottom:17px}.eyebrow{font-size:10px;padding:5px 8px}.hero-art{position:absolute;width:170px;height:170px;left:-38px;bottom:-35px;opacity:.25}.stadium{width:210px;height:130px}.ball{font-size:46px}.floating-chip{display:none}.primary-btn{padding:9px 14px;font-size:11px}.ghost-btn{font-size:11px;padding:8px 11px}.stats-strip{grid-template-columns:repeat(3,1fr);gap:7px;margin:14px 0 25px}.stat{padding:12px 7px;gap:4px;justify-content:center;flex-direction:column;align-items:center;text-align:center;border-radius:12px}.stat-ic{width:31px;height:31px;border-radius:9px}.stat-ic svg{width:17px;height:17px}.stat strong{font-size:17px}.stat span:last-child{font-size:9px}.content-heading h2{font-size:21px}.content-heading p{font-size:10px}.select{min-width:125px;max-width:140px;padding:9px 7px;font-size:10px}.tabs{width:100%;overflow-x:auto}.tab{padding:9px 13px;font-size:11px}.search{width:100%;height:42px}.filter-row{gap:9px}.days{margin-bottom:15px}.day{min-width:91px;padding:8px 13px;font-size:10px}.day strong{font-size:14px}.match-head{padding:12px 13px 0;font-size:10px}.match-main{grid-template-columns:minmax(0,1fr) 75px minmax(0,1fr);gap:1px;padding:12px 11px 14px}.team{gap:6px;flex-direction:column}.team.away{flex-direction:column}.team-crest{height:42px;width:42px;font-size:12px;border-radius:11px}.team-crest:before{border-radius:7px}.team-name{font-size:10px;line-height:1.5;text-align:center}.team-tag{display:none}.score strong{font-size:25px}.score time{font-size:11px}.match-foot{padding:9px 13px}.foot-note{font-size:9px}.watch-btn{font-size:10px;padding:7px 10px}.right-rail{grid-template-columns:1fr}.rail-box{padding:18px}.footer-inner{display:grid;justify-content:center;text-align:center;padding-bottom:88px;gap:7px}.footer-links{justify-content:center}.mobile-nav{display:flex;justify-content:space-around;align-items:center;position:fixed;bottom:0;left:0;right:0;z-index:60;padding:9px 8px calc(9px + env(safe-area-inset-bottom));border-top:1px solid #294053;background:#0b1826ee;backdrop-filter:blur(16px)}.mobile-nav a{display:grid;place-items:center;gap:2px;font-size:10px;color:#93a4b7;font-weight:800}.mobile-nav a.active{color:var(--green)}.mobile-nav svg{width:22px;height:22px}.watch-title{font-size:20px}.watch-layout{margin-top:12px}.player-shell{border-radius:12px}.player-placeholder .big{width:47px;height:47px}.player-placeholder .big svg{width:27px;height:27px}.player-placeholder h3{font-size:13px}.player-placeholder p{font-size:10px}.watch-info{padding:15px}.admin-layout{grid-template-columns:1fr}.editor-list{padding:14px}.editor-list .edit-list-container{display:flex;gap:7px;overflow-x:auto}.edit-item{white-space:nowrap}.editor{padding:15px}.form-grid{gap:10px}.field input,.field select{font-size:11px}.admin-actions .primary-btn{font-size:11px}}

/* Real club badges: transparent image fitted without stretching the original shield. */
.team-crest.has-image{background:#edf4f91a;border:1px solid #ffffff20;overflow:hidden;padding:5px;box-shadow:0 5px 18px #0002}
.team-crest.has-image:before{display:none}
.team-crest.has-image .crest-image{position:relative;width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 2px 2px #0004)}
.team-crest.has-image .crest-fallback{display:none}
.team-crest.has-image.logo-failed{padding:0}
.team-crest.has-image.logo-failed .crest-image{display:none}
.team-crest.has-image.logo-failed .crest-fallback{display:grid;place-items:center;width:100%;height:100%;font-size:13px;color:white}
.team-crest.national-flag{font-size:28px;line-height:1}
@media(max-width:600px){.team-crest.has-image{padding:4px}.team-crest.national-flag{font-size:24px}}

.rail-game .rail-teams{display:flex;gap:3px;flex:0 0 auto}.rail-game .rail-teams .team-crest{height:26px;width:26px;border-radius:6px;font-size:7px;padding:2px}.rail-game .rail-teams .national-flag{font-size:15px}.rail-game>div:nth-child(2){flex:1;min-width:0}

/* Live-data enhancements */
.league-logo{width:22px;height:22px;object-fit:contain;margin-inline-end:7px;vertical-align:middle}
.match-status.canceled,.match-status.postponed{color:#ffd6a0;background:#4c3d2d}
#updateInfo{color:#c1e7a0}
.empty-state .tool-btn{margin:15px 0 0}
