/* Futbolun Radarı — homepage (live-score portal layout: leagues | scores | standings). */
.home-main { padding:18px 0 80px; }

/* Category bar under the header */
.subnav { position:sticky; top:72px; z-index:90; background:var(--ink-2); border-bottom:1px solid var(--line); }
.subnav-in { display:flex; gap:2px; overflow-x:auto; scrollbar-width:none; }
.subnav-in::-webkit-scrollbar { display:none; }
.subnav a { flex:none; display:inline-flex; align-items:center; gap:8px; padding:12px 14px; color:var(--text-2); font-weight:700; font-size:13px; text-decoration:none; border-bottom:2px solid transparent; white-space:nowrap; }
.subnav a:hover { color:var(--chalk); }
.subnav a.on { color:var(--lime); border-bottom-color:var(--lime); }
.subnav .sn-login { margin-left:auto; color:var(--lime); }
.sn-count { background:var(--live); color:#fff; font-size:11px; padding:1px 7px; border-radius:999px; }
@media (max-width:600px){ .subnav { top:62px; } }

/* Manşet */
.manset { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(0,1fr); gap:16px; margin-bottom:16px; }
.ms-slider { position:relative; min-height:360px; padding:0; }
.ms-track { position:relative; height:100%; min-height:360px; }
.ms-slide { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end; padding:26px; text-decoration:none; color:#fff; opacity:0; transition:opacity .6s; background:linear-gradient(150deg, var(--grass-a), var(--ink-2)); }
.ms-slide.on { opacity:1; z-index:1; }
.ms-slide.ms-ph { opacity:1; justify-content:center; }
.ms-slide img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-1; }
.ms-slide .ms-art { position:absolute; z-index:-1; top:50%; right:6%; width:min(42%, 260px); aspect-ratio:1; transform:translateY(-58%); display:grid; place-items:center; border-radius:50%; background:radial-gradient(circle, rgba(255,255,255,.16) 0%, rgba(255,255,255,.04) 55%, transparent 70%); pointer-events:none; }
.ms-slide .ms-art img { position:static; inset:auto; width:72%; height:72%; object-fit:contain; z-index:auto; filter:drop-shadow(0 10px 28px rgba(0,0,0,.45)); }
.ms-slide .ms-art-fb { display:none; }
.ms-slide:after { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg, rgba(4,8,16,.92) 0%, rgba(4,8,16,.45) 55%, rgba(4,8,16,.1) 100%); }
.ms-slide .ms-src { display:inline-flex; align-self:flex-start; gap:8px; font-size:11px; font-weight:800; letter-spacing:1px; text-transform:uppercase; background:var(--lime); color:var(--on-acc); padding:5px 10px; border-radius:6px; margin-bottom:12px; }
.ms-slide strong { font-family:var(--display); font-weight:800; font-size:clamp(26px, 3.2vw, 42px); line-height:1.05; max-width:760px; text-shadow:0 2px 14px rgba(0,0,0,.5); }
.ms-slide p { margin:10px 0 0; color:#d6dceb; font-size:14px; max-width:640px; line-height:1.5; }
.ms-dots { position:absolute; z-index:2; right:18px; bottom:18px; display:flex; gap:6px; }
.ms-dots button { width:28px; height:28px; border-radius:8px; border:1px solid rgba(255,255,255,.35); background:rgba(0,0,0,.35); color:#fff; font:800 12px var(--body); cursor:pointer; }
.ms-dots button.on { background:var(--lime); color:var(--on-acc); border-color:var(--lime); }
.ms-side { display:flex; flex-direction:column; gap:16px; min-width:0; }
.fm-card { padding:16px 18px; }
.fm-top { display:flex; justify-content:space-between; align-items:center; font-size:11px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--muted); }
.fm-tag { color:var(--live); }
.fm-body { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:10px; padding:16px 0 4px; text-align:center; }
.fm-body .loading { grid-column:1/-1; padding:20px 0; }
.fm-team { display:flex; flex-direction:column; align-items:center; gap:8px; font-weight:800; font-size:13px; text-decoration:none; color:var(--chalk); min-width:0; }
.fm-team img, .fm-team .mini-crest { width:52px; height:52px; flex:none; }
.fm-team span { overflow:hidden; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.fm-score { font:900 40px var(--display); font-variant-numeric:tabular-nums; }
.fm-score small { display:block; font:800 12px var(--body); color:var(--live); }
.fm-comp { grid-column:1/-1; font-size:11px; color:var(--muted); }
.ms-headlines { padding:14px 16px; flex:1; }
.ms-list-head { display:flex; align-items:center; gap:10px; font-size:11px; font-weight:900; letter-spacing:1.4px; color:var(--live); margin-bottom:6px; }
.ms-headlines ol { list-style:none; margin:0; padding:0; counter-reset:h; }
.ms-headlines li a { display:flex; gap:10px; padding:8px 0; border-bottom:1px solid var(--line-soft); color:var(--chalk); text-decoration:none; font-size:13.5px; font-weight:600; line-height:1.4; }
.ms-headlines li:last-child a { border-bottom:0; }
.ms-headlines li a:before { counter-increment:h; content:counter(h); font:900 16px var(--display); color:var(--lime); min-width:16px; }
.ms-headlines li a:hover { color:var(--lime); }

/* Three-column body */
.home-grid { display:grid; grid-template-columns:220px minmax(0,1fr) 330px; gap:16px; align-items:start; }
.col-left, .col-right { display:flex; flex-direction:column; gap:16px; position:sticky; top:130px; max-height:calc(100vh - 140px); overflow:auto; scrollbar-width:thin; }
.side-box { padding:14px; }
.side-title { margin:0 0 10px; font:800 18px var(--display); text-transform:uppercase; letter-spacing:.6px; }
.side-head { display:flex; justify-content:space-between; align-items:center; gap:8px; margin-bottom:8px; }
.side-head .side-title { margin:0; }
.side-select { max-width:150px; border:1px solid var(--line); background:var(--ink); color:var(--chalk); border-radius:8px; padding:6px 8px; font:700 12px var(--body); }
.side-foot { margin:8px 0 0; font-size:11px; color:var(--muted-2); }
.side-more { display:block; margin-top:8px; font-size:12px; font-weight:800; color:var(--lime); text-decoration:none; }
.league-list { display:flex; flex-direction:column; }
.league-list button { display:flex; align-items:center; gap:10px; width:100%; padding:8px; border:0; border-radius:8px; background:none; color:var(--text-2); font:700 13px var(--body); text-align:left; cursor:pointer; }
.league-list button:hover { background:var(--panel-2); color:var(--chalk); }
.league-list button.on { background:rgba(var(--acc-rgb),.12); color:var(--lime); }
.league-list .flag { width:26px; height:20px; flex:none; display:grid; place-items:center; border-radius:4px; background:var(--ink); border:1px solid var(--line); font:800 9px var(--body); color:var(--muted); }
.league-list .cnt { margin-left:auto; font-size:11px; color:var(--muted-2); }
.join-box p { margin:0 0 12px; font-size:13px; color:var(--text-2); line-height:1.5; }
.join-box .google-btn { text-decoration:none; font-size:13px; padding:10px 12px; }
.join-box .link-btn { display:block; margin-top:10px; text-align:center; align-self:center; }

/* Score panel */
.score-panel { padding:0; }
.sp-head { display:flex; justify-content:space-between; align-items:center; padding:14px 16px 8px; }
.sp-head h2 { margin:0; font:800 24px var(--display); text-transform:uppercase; display:flex; align-items:baseline; gap:10px; }
.sp-head h2 small { font:700 12px var(--body); color:var(--muted); text-transform:none; }
.icon-btn { width:36px; height:36px; display:grid; place-items:center; border:1px solid var(--line); background:var(--ink); color:var(--chalk); border-radius:10px; cursor:pointer; }
.icon-btn svg { width:17px; height:17px; }
.icon-btn:hover { border-color:var(--lime); color:var(--lime); }
.icon-btn.spinning svg { animation:spin .8s linear infinite; }
.date-strip { display:grid; grid-template-columns:repeat(7, minmax(0,1fr)); gap:4px; padding:0 16px 10px; }
.date-strip button { border:1px solid var(--line); background:var(--ink); color:var(--muted); border-radius:10px; padding:6px 2px; font:700 11px var(--body); cursor:pointer; line-height:1.25; }
.date-strip button b { display:block; color:var(--chalk); font-size:13px; }
.date-strip button.on { background:var(--lime); border-color:var(--lime); color:var(--on-acc); }
.date-strip button.on b { color:var(--on-acc); }
.sp-filters { display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; padding:8px 16px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:rgba(255,255,255,.015); }
.state-tabs { display:flex; gap:4px; flex-wrap:wrap; }
.st { border:1px solid var(--line); background:none; color:var(--muted); border-radius:999px; padding:6px 11px; font:800 12px var(--body); cursor:pointer; display:inline-flex; align-items:center; gap:6px; }
.st b { font-size:11px; color:inherit; opacity:.8; }
.st .dot { width:6px; height:6px; border-radius:50%; background:var(--live); }
.st.on { background:var(--chalk); color:var(--ink); border-color:var(--chalk); }
.mini-check { display:flex; align-items:center; gap:6px; font-size:12px; color:var(--muted); cursor:pointer; }
.mini-check input { accent-color:var(--lime); }

.match-groups { min-height:200px; }
.mg { border-bottom:1px solid var(--line); }
.mg-head { display:flex; align-items:center; gap:10px; padding:9px 16px; background:var(--panel-2); font-size:12px; font-weight:800; color:var(--chalk); }
.mg-head img { width:18px; height:18px; object-fit:contain; }
.mg-head small { margin-left:auto; color:var(--muted-2); font-weight:700; }
.mr { display:grid; grid-template-columns:52px minmax(0,1fr) 62px minmax(0,1fr) 30px; align-items:center; gap:8px; padding:9px 16px; border-top:1px solid var(--line-soft); font-size:13px; }
.mr:hover { background:rgba(var(--acc-rgb),.04); }
.mr .tm { font-size:11px; font-weight:800; color:var(--muted); font-variant-numeric:tabular-nums; }
.mr.live .tm { color:var(--live); animation:blink 1.4s infinite; }
.mr .tn { display:flex; align-items:center; gap:7px; min-width:0; color:var(--chalk); text-decoration:none; font-weight:600; }
.mr .tn span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mr .tn.h { justify-content:flex-end; text-align:right; }
.mr .tn:hover { color:var(--lime); }
.mr .tn.win { font-weight:800; }
.mr .mini-crest { width:20px; height:20px; flex:0 0 20px; padding:2px; }
.mr .sc { text-align:center; font:800 16px var(--display); background:var(--ink); border:1px solid var(--line); border-radius:6px; padding:3px 0 2px; font-variant-numeric:tabular-nums; }
.mr.live .sc { background:var(--live); color:#fff; border-color:var(--live); }
.mr.up .sc { color:var(--muted-2); font-size:13px; }
.mr.goal { animation:goalFlash 2.4s ease-out; }
.fav { border:0; background:none; color:var(--muted-2); font-size:17px; cursor:pointer; padding:0; line-height:1; }
.fav.on { color:var(--gold); }
.sp-foot { margin:0; padding:12px 16px; font-size:11.5px; color:var(--muted-2); }
.empty { padding:40px 16px; text-align:center; color:var(--muted); font-size:14px; }

/* Standings / scorers */
.mini-table { width:100%; border-collapse:collapse; font-size:12.5px; }
.mini-table th { font-size:10px; color:var(--muted-2); font-weight:800; padding:6px 4px; text-align:center; letter-spacing:.8px; }
.mini-table th:nth-child(2) { text-align:left; }
.mini-table td { padding:6px 4px; border-top:1px solid var(--line-soft); text-align:center; font-weight:700; font-variant-numeric:tabular-nums; }
.mini-table td:nth-child(2) { text-align:left; }
.mini-table td.note { text-align:center; padding:20px; }
.mini-table .pos { display:inline-grid; place-items:center; width:20px; height:20px; border-radius:5px; font-size:11px; }
.mini-table tr:nth-child(-n+4) .pos { background:var(--lime); color:var(--on-acc); }
.mini-table tr.rel .pos { background:var(--live); color:#fff; }
.mini-table a { display:flex; align-items:center; gap:6px; color:var(--chalk); text-decoration:none; min-width:0; }
.mini-table a span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:150px; }
.mini-table a:hover { color:var(--lime); }
.mini-table .mini-crest { width:18px; height:18px; flex:0 0 18px; padding:1px; }
.mini-table td.pts { color:var(--lime); font:800 15px var(--display); }
.scorer-list { list-style:none; margin:0; padding:0; }
.scorer-list li a { display:grid; grid-template-columns:22px 34px minmax(0,1fr) auto; gap:8px; align-items:center; padding:7px 0; border-top:1px solid var(--line-soft); text-decoration:none; color:var(--chalk); }
.scorer-list li:first-child a { border-top:0; }
.scorer-list .rk { font:900 15px var(--display); color:var(--muted-2); }
.scorer-list .ph { width:34px; height:34px; border-radius:50%; object-fit:cover; background:var(--panel-2); display:grid; place-items:center; font-size:11px; font-weight:800; }
.scorer-list b { display:block; font-size:13px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.scorer-list small { color:var(--muted); font-size:11px; }
.scorer-list .gl { font:900 20px var(--display); color:var(--lime); }
.scorer-list a:hover b { color:var(--lime); }
.poll-cta { display:flex; align-items:center; gap:12px; text-decoration:none; color:var(--chalk); }
.poll-cta > span { font-size:26px; }
.poll-cta b { display:block; font-size:14px; }
.poll-cta small { color:var(--muted); font-size:12px; }
.poll-cta i { margin-left:auto; font-style:normal; color:var(--lime); }
.poll-cta:hover { border-color:var(--lime); }

/* News + SEO text */
.home-news { margin-top:34px; }
#home-news { padding:16px; }
.seo-text { margin-top:28px; }
.seo-text h2 { font-size:24px; }

/* Goal toast + mobile bottom nav */
.goal-toast { position:fixed; left:50%; top:120px; z-index:500; transform:translate(-50%,-30px); opacity:0; pointer-events:none; display:flex; align-items:center; gap:12px; padding:10px 20px; border-radius:999px; background:var(--lime); color:var(--on-acc); box-shadow:0 20px 50px rgba(0,0,0,.5); transition:transform .5s var(--ease-spring), opacity .3s; }
.goal-toast.show { opacity:1; transform:translate(-50%,0); }
.goal-toast b { font:900 26px var(--display); }
.goal-toast span { font-weight:700; font-size:13px; }
.bottom-nav { display:none; }
@keyframes goalFlash { 0% { background:rgba(var(--acc-rgb),.35); } 100% { background:transparent; } }

@media (max-width:1180px){
  .home-grid { grid-template-columns:minmax(0,1fr) 320px; }
  .col-left { grid-column:1/-1; position:static; max-height:none; order:-1; }
  .col-left .side-box:first-child { padding:10px; }
  .col-left .side-title { display:none; }
  .league-list { flex-direction:row; overflow-x:auto; gap:6px; scrollbar-width:none; }
  .league-list button { flex:none; width:auto; border:1px solid var(--line); border-radius:999px; padding:6px 12px; }
  .league-list .cnt { display:none; }
  .join-box { display:none; }
}
@media (max-width:900px){
  .manset { grid-template-columns:1fr; }
  .ms-slider, .ms-track { min-height:280px; }
  .home-grid { grid-template-columns:1fr; }
  .col-right { position:static; max-height:none; }
  body.home { padding-bottom:76px; }
  .bottom-nav { position:fixed; z-index:150; left:0; right:0; bottom:0; display:grid; grid-template-columns:repeat(4,1fr); padding:6px 8px calc(6px + env(safe-area-inset-bottom)); background:rgba(var(--ink-rgb),.94); backdrop-filter:blur(14px); border-top:1px solid var(--line); }
  .bottom-nav a { display:flex; flex-direction:column; align-items:center; gap:3px; min-height:50px; justify-content:center; color:var(--muted); text-decoration:none; font-size:10px; font-weight:800; }
  .bottom-nav a svg { width:22px; height:22px; }
  .bottom-nav a.active { color:var(--lime); }
}
@media (max-width:560px){
  .mr { grid-template-columns:40px minmax(0,1fr) 50px minmax(0,1fr) 22px; gap:5px; padding:8px 10px; font-size:12px; }
  .mr .tn .mini-crest { display:none; }
  .mg-head { padding:8px 10px; }
  .date-strip { padding:0 10px 10px; gap:3px; }
  .date-strip button { font-size:10px; }
  .sp-filters { padding:8px 10px; }
  .ms-slide { padding:18px; }
}
@media (prefers-reduced-motion: reduce){ .ms-slide { transition:none; } }
@media (max-width:560px){ .ms-slide .ms-art { width:120px; top:18px; right:14px; transform:none; } }

/* Score buttons open the match sheet */
.mr { cursor:pointer; }
.mr button.sc { width:100%; color:var(--chalk); cursor:pointer; transition:border-color .15s, transform .15s; }
.mr button.sc:hover, .mr button.sc:focus-visible { border-color:var(--lime); transform:scale(1.04); }
.mr.live button.sc { color:#fff; }
.mr.up button.sc { color:var(--muted-2); }
button.fm-score { background:none; border:0; color:var(--chalk); cursor:pointer; padding:0 6px; border-radius:10px; }
button.fm-score:hover, button.fm-score:focus-visible { color:var(--lime); }
