:root{--orange:#ff6a00;--orange-2:#ff7c1f;--black:#0d0d0d;--panel:#1a1a1a;--line:#2a2a2a;--text:#f5f5f5;--muted:#a0a0a0}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,Segoe UI,Arial,sans-serif;background:var(--black);color:var(--text)}
header{background:#fff;padding:14px 20px;border-bottom:4px solid var(--orange)}header img{height:44px;display:block}
main{display:flex;min-height:calc(100vh - 76px)}
#side{width:260px;flex-shrink:0;border-right:1px solid var(--line);overflow-y:auto;max-height:calc(100vh - 76px);position:sticky;top:0}
#search{width:100%;padding:12px;border:0;border-bottom:2px solid var(--orange);background:var(--panel);color:var(--text);font-size:15px}
.c{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer}.c:hover{background:var(--panel)}
.c.on{background:var(--orange);color:#000;font-weight:600}.c img{width:20px;height:14px;object-fit:cover}
#main{flex:1;padding:20px;min-width:0}h2{margin-top:0}h2 span{color:var(--orange)}
#rec{border-left:4px solid var(--orange);background:var(--panel);padding:12px;margin-bottom:16px}#rec b{color:var(--orange)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.l{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:12px;text-align:center;cursor:pointer;transition:.15s}
.l:hover{border-color:var(--orange);transform:translateY(-2px)}
.l img{width:56px;height:56px;object-fit:contain;background:#fff;border-radius:6px;padding:4px}.l small{color:var(--muted)}
.back{background:none;border:1px solid var(--orange);color:var(--orange);padding:6px 12px;border-radius:6px;cursor:pointer;margin-bottom:12px}
.back:hover{background:var(--orange);color:#000}
.tabs{display:flex;gap:8px;margin:12px 0}.tabs button{background:var(--panel);color:var(--text);border:0;padding:8px 16px;border-radius:6px;cursor:pointer}
.tabs button.on{background:var(--orange);color:#000;font-weight:600}
table{width:100%;border-collapse:collapse;margin-bottom:20px;font-size:14px}th{color:var(--orange);text-align:center;border-bottom:2px solid var(--orange);padding:8px 4px}
td{padding:7px 4px;text-align:center;border-bottom:1px solid var(--line)}td.t{text-align:left;display:flex;align-items:center;gap:8px}
td img{width:20px;height:20px;object-fit:contain}tr:hover td{background:var(--panel)}td.pts{font-weight:700;color:var(--orange)}
.f{font-family:monospace;letter-spacing:2px}.f .W{color:#4caf50}.f .L{color:#f44336}.f .D{color:var(--muted)}
.day{color:var(--orange);font-weight:600;margin:18px 0 6px}
.fx{display:grid;grid-template-columns:1fr 80px 1fr;align-items:center;background:var(--panel);padding:8px 12px;margin-bottom:4px;border-radius:6px}
.fx .h{text-align:right;display:flex;justify-content:flex-end;gap:8px;align-items:center}.fx .a{display:flex;gap:8px;align-items:center}
.fx img{width:20px;height:20px;object-fit:contain}.fx .s{text-align:center;font-weight:700}.fx .s small{display:block;font-weight:400;color:var(--muted)}
.note{color:var(--muted)}
@media(max-width:700px){main{flex-direction:column}#side{width:100%;max-height:220px;position:static}.hide-sm{display:none}}

a.tl{color:inherit;text-decoration:none}a.tl:hover{color:var(--orange)}
.team{display:flex;gap:16px;align-items:center;margin-bottom:16px}.team .crest{width:80px;height:80px;object-fit:contain;background:#fff;border-radius:8px;padding:6px}
.team h2{margin:0}.venue{display:flex;gap:16px;background:var(--panel);border-left:4px solid var(--orange);padding:12px;border-radius:6px;flex-wrap:wrap}
.venue img{width:240px;max-width:100%;border-radius:6px}.venue h3{margin:0 0 6px;color:var(--orange)}.venue p{margin:2px 0}
.squad{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
.pl{background:var(--panel);border-radius:8px;padding:10px;text-align:center}.pl img{width:64px;height:64px;border-radius:50%;object-fit:cover;background:#333}
.pl b{color:var(--orange)}.pl small{color:var(--muted)}

a{text-decoration:none}tr.tr{cursor:pointer}tr.tr:hover td,tr.tr:hover a.tl{color:var(--orange)}tr.tr:hover td.pts{color:var(--text)}
.toggle{width:100%;text-align:left;background:var(--orange);color:#000;border:0;padding:10px 12px;font-weight:700;font-size:15px;cursor:pointer}
#side.collapsed .box{display:none}#side.collapsed{max-height:none}
.c.home{border-left:4px solid var(--orange)}
.sh{padding:10px 12px 4px;color:var(--orange);font-weight:700}#favs{border-bottom:1px solid var(--line);padding-bottom:6px}
.favbtn{margin-top:8px;background:none;border:2px solid var(--orange);color:var(--orange);padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer}
.favbtn.on,.favbtn:hover{background:var(--orange);color:#000}

/* Colour schemes: Original (default), Pitch night, Matchday light */
html[data-theme=pitch]{--black:#0a1f14;--panel:#143a26;--line:#1f4d34;--text:#f0fff4;--muted:#9cc2a8}
html[data-theme=light]{--black:#f6f7fb;--panel:#ffffff;--line:#e2e5ee;--text:#101c40;--muted:#5b6480}
html[data-theme=light] .l,html[data-theme=light] .fx,html[data-theme=light] .pl{box-shadow:0 1px 3px rgba(16,28,64,.08)}
header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.theme{display:flex;gap:6px;align-items:center;color:#101c40;font-size:14px}
.theme button{border:2px solid #ddd;border-radius:16px;padding:4px 10px;cursor:pointer;font-size:13px;background:#fff;color:#101c40}
.theme button.on{border-color:var(--orange);background:var(--orange);color:#000;font-weight:700}
.theme i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px;vertical-align:middle}

.news{display:block;background:var(--panel);border-left:4px solid var(--orange);padding:10px 12px;margin-bottom:6px;border-radius:6px;color:var(--text)}
.news:hover b{color:var(--orange)}.news small{display:block;color:var(--muted);margin-top:4px}

.teamcard{display:flex;gap:20px;align-items:stretch;flex-wrap:wrap;background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:8px;padding:16px;margin-bottom:8px}
.teamcard .team{margin:0;flex:1 1 220px}
.teamcard .venue{flex:2 1 380px;background:none;border:0;border-left:1px solid var(--line);border-radius:0;padding:0 0 0 20px;margin:0}
@media(max-width:700px){.teamcard .venue{border-left:0;border-top:1px solid var(--line);padding:16px 0 0}}

.sub{display:flex;gap:6px;margin:4px 0 10px}.sub button{background:none;border:1px solid var(--line);color:var(--text);padding:5px 12px;border-radius:14px;cursor:pointer;font-size:13px}
.sub button.on{border-color:var(--orange);color:var(--orange);font-weight:700}.live{color:#e53935;font-weight:700}

h2 .hlogo{height:1.3em;width:auto;max-width:2.2em;object-fit:contain;vertical-align:middle;margin-right:.4em;background:#fff;border-radius:4px;padding:2px}

.fx[data-fx]{cursor:pointer}.fx[data-fx]:hover{outline:1px solid var(--orange)}
.mhead{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:8px;padding:20px}
.mt{display:flex;align-items:center;justify-content:flex-end;gap:12px;font-size:20px;font-weight:700}.mt.a{justify-content:flex-start}.mt img{width:56px;height:56px;object-fit:contain}
.ms{text-align:center}.ms .big{font-size:40px;font-weight:800;color:var(--orange)}.mmeta{margin:8px 0 4px}
.tline{background:var(--panel);border-radius:8px;padding:8px}
.ev{display:flex;gap:8px;align-items:baseline;padding:5px 8px;width:50%}.ev.ea{margin-left:50%;flex-direction:row-reverse;text-align:right}
.ev .min{color:var(--orange);font-weight:700;min-width:36px}.ev small{color:var(--muted)}
.stats{background:var(--panel);border-radius:8px;padding:12px}.st{margin-bottom:10px}
.sl{display:flex;justify-content:space-between;font-size:14px;margin-bottom:4px}.sl span{color:var(--muted)}
.bar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:var(--line);gap:2px}.bar i{background:var(--orange)}.bar i.b{background:var(--muted);margin-left:auto}
.lineups{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lu{background:var(--panel);border-radius:8px;padding:12px}
.lu h4{display:flex;align-items:center;gap:8px;margin:0 0 8px}.lu h4 img{width:24px;height:24px;object-fit:contain}.lu h4 span{color:var(--orange);margin-left:auto}
.lu ul{list-style:none;padding:0;margin:0}.lu li{padding:4px 0;border-bottom:1px solid var(--line)}.lu li b{color:var(--orange);display:inline-block;width:26px}.lu li small{color:var(--muted)}
.lu .subs li{opacity:.8}
@media(max-width:700px){.mt{font-size:15px;flex-direction:column-reverse}.mt.a{flex-direction:column}.ms .big{font-size:30px}.ev{width:100%}.ev.ea{margin-left:0}.lineups{grid-template-columns:1fr}}

.mmeta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;color:var(--text);font-size:15px;font-weight:600;margin:12px 0 4px}
.mmeta .hlogo{height:22px;width:22px;object-fit:contain;background:#fff;border-radius:4px;padding:2px}
.theme span{display:none}
.theme button{width:26px;height:26px;padding:0;border-radius:50%;border:2px solid #ccc;display:flex;align-items:center;justify-content:center}
.theme button i{width:18px;height:18px;margin:0;border-radius:50%}
.theme button.on{background:#fff;border-color:var(--orange);box-shadow:0 0 0 2px var(--orange)}

.lbtns{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.lbtns .favbtn{margin-top:0;font-size:13px;padding:5px 12px}
.sh small{color:var(--muted);font-weight:400}

.tools{display:flex;align-items:center;gap:14px}
.share{display:flex;align-items:center;gap:2px;border:2px solid #101c40;background:#fff;color:#101c40;border-radius:16px;padding:4px 12px;font-size:13px;font-weight:700;cursor:pointer}
.share:hover,.share.done{background:var(--orange);border-color:var(--orange);color:#000}
.rivals{margin:6px 0 0;font-size:14px}.rivals .tl{color:var(--orange)}
.sug{position:relative}.sug span{flex:1}.sug .add{border:1px solid var(--orange);background:transparent;color:var(--orange);border-radius:50%;width:22px;height:22px;line-height:18px;padding:0;cursor:pointer;font-weight:700}
.sug .add:hover{background:var(--orange);color:#000}

.crumbs{display:inline-flex;gap:8px;margin-right:8px}.crumbs+.back{margin-left:0}
.worldlink{font-weight:700;color:var(--orange);border-bottom:1px solid var(--line)}
.map{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px;margin:10px 0 14px}
.worldmap{width:100%;height:auto;display:block}
.worldmap path{fill:var(--line);stroke:var(--black);stroke-width:.4;transition:fill .15s}
.worldmap path.has{fill:#2f7a52;cursor:pointer}
html[data-theme=light] .worldmap path.has{fill:#4a6fb5}
.worldmap path.home{fill:#c65a10}
.worldmap path.has:hover{fill:var(--orange)}
.maptip{position:absolute;pointer-events:none;background:#000;color:#fff;font-size:13px;padding:4px 8px;border-radius:6px;white-space:nowrap}
.zoom{margin-top:6px}
.zoom{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 0}.zoom button{background:none;border:1px solid var(--line);color:var(--text);padding:5px 12px;border-radius:14px;cursor:pointer;font-size:13px}
.zoom button.on{border-color:var(--orange);color:var(--orange);font-weight:700}
html[data-theme] .worldmap path.home{fill:#c65a10}
html[data-theme] .worldmap path.has:hover{fill:var(--orange)}

.burger{display:none;background:none;border:0;padding:8px;cursor:pointer;flex-direction:column;gap:5px}
.burger span{display:block;width:24px;height:3px;border-radius:2px;background:#101c40;transition:.2s}
.burger.x span:nth-child(1){transform:translateY(8px) rotate(45deg)}.burger.x span:nth-child(2){opacity:0}.burger.x span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:40}
@media(max-width:700px){
  header{flex-wrap:nowrap;padding:10px 12px;gap:8px}header img{height:32px;margin-right:auto}
  .burger{display:flex}.share{padding:4px 8px}.tools{gap:8px}.theme{gap:4px}
  #side{position:fixed;top:0;left:0;bottom:0;width:86%;max-width:320px;max-height:none;height:100%;z-index:50;background:var(--black);transform:translateX(-100%);transition:transform .25s;box-shadow:2px 0 18px rgba(0,0,0,.4)}
  #side.open{transform:none}
  body.menu-open{overflow:hidden}
}
@media(max-width:420px){.share{font-size:0;gap:0;padding:6px}.share svg{width:16px;height:16px}}

.drawerhead{display:none}
@media(max-width:700px){.drawerhead{display:flex;justify-content:space-between;align-items:center;padding:12px;border-bottom:2px solid var(--orange)}
.drawerhead button{background:none;border:0;color:var(--text);font-size:22px;cursor:pointer;line-height:1}
.theme button{width:24px;height:24px}.theme button i{width:16px;height:16px}}

.comp{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin:8px 0 -2px 4px}.comp img{width:16px;height:16px;object-fit:contain;background:#fff;border-radius:3px;padding:1px}
@media(max-width:700px){
  .burger{width:44px;height:44px;flex-shrink:0;border-radius:50%;background:var(--orange,#ff6a00);padding:0;align-items:center;justify-content:center;gap:4px;box-shadow:0 3px 8px rgba(0,0,0,.35),0 1px 2px rgba(0,0,0,.25);transition:transform .15s,box-shadow .15s}
  .burger span{width:20px;height:2.5px;background:#fff}
  .burger:active{transform:scale(.94);box-shadow:0 1px 4px rgba(0,0,0,.35)}
  .burger.x span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.burger.x span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
}

/* LED-green live indicator with a blinking dot */
.live{color:#39ff14;font-weight:700;text-shadow:0 0 6px rgba(57,255,20,.55)}
html[data-theme=light] .live{color:#00b83a;text-shadow:0 0 5px rgba(0,200,60,.35)}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 6px currentColor;margin-right:6px;vertical-align:middle;animation:blink 2s steps(1,end) infinite}
@keyframes blink{50%{opacity:.15}}
@media(prefers-reduced-motion:reduce){.dot{animation:none}}
.livelink small{color:var(--muted);font-weight:400}
.lfilter{width:100%;max-width:420px;padding:9px 12px;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:8px;font-size:14px;margin:4px 0 12px}
.lgroup{margin-bottom:14px}.lgroup.yours{border-left:3px solid var(--orange);padding-left:8px}
.lhead{display:flex;align-items:center;gap:8px;padding:8px 4px;border-bottom:1px solid var(--line);cursor:pointer;font-size:14px}
.lhead:hover b{color:var(--orange)}.lhead .flag{width:20px;height:14px;object-fit:cover}.lhead span{color:var(--muted)}.lhead small{margin-left:auto;color:var(--muted)}
.lhead .hlogo{width:20px;height:20px;object-fit:contain;background:#fff;border-radius:4px;padding:1px}
.lgroup.yours .lhead{cursor:default;color:var(--orange);font-weight:700}

header img{height:60px}@media(max-width:700px){header img{height:38px}}

.live.lmin{font-weight:400}

.lgbtn{display:block;margin:-4px 0 12px;font-size:13px;padding:5px 12px}.lgfav .lgc{opacity:.6;font-size:11px;margin-left:4px}

.info{width:30px;height:30px;border-radius:50%;border:2px solid #101c40;background:#fff;color:#101c40;font:italic 900 17px Georgia,serif;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.info:hover{background:var(--orange);border-color:var(--orange);color:#000}
.help{max-width:560px;width:calc(100% - 32px);max-height:85vh;overflow:auto;border:0;border-top:5px solid var(--orange);border-radius:12px;padding:22px 26px;background:var(--panel,#161616);color:var(--text,#eee);box-shadow:0 10px 40px rgba(0,0,0,.5)}
.help::backdrop{background:rgba(0,0,0,.6)}
.help h2{margin:0 0 10px}.help h3{margin:16px 0 4px;font-size:16px;color:var(--orange)}.help h3 .live{margin-right:4px}.help p{margin:0;line-height:1.5}
.help .hnote{margin-top:18px;font-size:13px;opacity:.7}
.hclose{position:sticky;top:0;float:right;background:none;border:0;color:inherit;font-size:20px;cursor:pointer}
html[data-theme=light] .help{background:#fff;color:#1a1a1a}
@media(max-width:420px){.info{width:28px;height:28px;font-size:15px}.help{padding:18px}}
