:root{--bg:#f7f7f5;--card:#fff;--ink:#1a1a1a;--muted:#6b6b6b;--line:#e4e4e0;--accent:#1f4e79;--soft:#eef3f8}
*{box-sizing:border-box}html,body{margin:0;padding:0}
body{background:var(--bg);color:var(--ink);font:16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.top{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line);padding:12px 18px}
.top h1{margin:0;font-size:18px;font-weight:700;letter-spacing:.2px}
.top .sub{margin:2px 0 0;color:var(--muted);font-size:12.5px}
.wrap{max-width:1300px;margin:0 auto;padding:14px 18px 60px}
.sports{display:flex;gap:8px;margin:0 0 12px;flex-wrap:wrap}
.sbtn{flex:1 1 160px;text-align:center;border:1px solid var(--line);background:#fff;border-radius:11px;padding:12px 14px;cursor:pointer;transition:.14s}
.sbtn:hover{border-color:var(--accent)}
.sbtn.on{background:var(--accent);color:#fff;border-color:var(--accent)}
.sbtn b{display:block;font-size:15px}
.sbtn span{font-size:12px;opacity:.7}
.sbtn.on span{opacity:.85}
.controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 12px}
.chip{border:1px solid var(--line);background:#fff;border-radius:20px;padding:7px 14px;font-size:13.5px;cursor:pointer;white-space:nowrap}
.chip:hover{border-color:var(--accent)}
.chip.on{background:var(--accent);color:#fff;border-color:var(--accent)}
.chip .n{opacity:.55;margin-left:5px;font-size:11.5px}
input.search{flex:1 1 200px;min-width:170px;padding:9px 13px;font-size:14px;border:1px solid var(--line);border-radius:20px;outline:none;background:#fff}
input.search:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--soft)}
.groups{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 10px}
.gchip{border:1px dashed var(--line);background:#fff;border-radius:8px;padding:6px 12px;font-size:13px;cursor:pointer}
.gchip:hover{border-color:var(--accent)}
.gchip.on{background:var(--soft);border:1px solid var(--accent);color:var(--accent);font-weight:600}
.gchip .n{opacity:.55;margin-left:4px;font-size:11.5px}
.teams{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 14px;max-height:120px;overflow:auto;padding:2px}
.tchip{border:1px solid var(--line);background:#fff;border-radius:8px;padding:5px 10px;font-size:12.5px;cursor:pointer}
.tchip:hover{border-color:var(--accent)}
.tchip.on{background:var(--accent);color:#fff;border-color:var(--accent)}
.tchip .n{opacity:.55;margin-left:4px;font-size:11px}
.count{color:var(--muted);font-size:13px;margin:0 0 12px}
.grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(158px,1fr))}
.card{margin:0;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;cursor:zoom-in;transition:.14s}
.card:hover{border-color:var(--accent);transform:translateY(-2px)}
.card img{width:100%;aspect-ratio:3/4;object-fit:cover;background:#eee}
.card figcaption{padding:6px 9px;font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.load{display:block;margin:24px auto;padding:11px 26px;border:1px solid var(--line);background:#fff;border-radius:10px;font-size:14px;cursor:pointer}
.load:hover{border-color:var(--accent)}
.lb{position:fixed;inset:0;background:rgba(12,12,12,.94);z-index:60;display:flex;align-items:center;justify-content:center}
.lb[hidden]{display:none}
.lb img{max-width:93vw;max-height:86vh;object-fit:contain;border-radius:6px}
.lb-cap{position:absolute;bottom:14px;left:0;right:0;text-align:center;color:#ddd;font-size:13px}
.lb button{position:absolute;background:rgba(255,255,255,.13);color:#fff;border:0;font-size:28px;cursor:pointer;border-radius:50%;width:46px;height:46px;display:grid;place-items:center}
.lb button:hover{background:rgba(255,255,255,.26)}
.lb-close{top:14px;right:14px}.lb-prev{left:12px;top:50%;transform:translateY(-50%)}.lb-next{right:12px;top:50%;transform:translateY(-50%)}
.foot{border-top:1px solid var(--line);padding:18px;color:var(--muted);font-size:12.5px;text-align:center}
@media(max-width:560px){.grid{grid-template-columns:repeat(auto-fill,minmax(126px,1fr));gap:9px}.wrap{padding:12px 12px 44px}.teams{max-height:96px}}
