/* RootBet v3: home fixtures, betting sites, reviews, predictions, leagues, referrals (loaded after styles.css + games.css) */
.muted{color:var(--muted)}
.btn-sm{height:34px;padding:0 12px;font-size:12.5px;border-radius:9px}
.btn-gold{background:var(--gold);color:#1d1400}
.btn-gold:hover{filter:brightness(1.06)}
.cta-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:14px 0 0}
.card-h{margin:0;font-size:16px}
.card-h small{color:var(--faint);font-weight:600;font-size:12px;margin-left:6px}
.more-link{margin-left:auto;color:var(--accent);font-weight:700;font-size:13px}
.board-foot{padding:10px 14px;border-top:1px solid var(--line);font-size:12px;color:var(--faint)}
.board-foot a{color:var(--accent);font-weight:600}
.gpage.narrow{max-width:980px}
.gcol{display:flex;flex-direction:column;gap:16px;min-width:0}
.tb-foot{margin:10px 0 0;font-size:11.5px;color:var(--faint)}
.tb-foot a{color:var(--accent);font-weight:600}

/* home layout */
.layout.home{grid-template-columns:minmax(0,1fr) 340px}
.home-side{position:sticky;top:calc(var(--hdr) + 16px)}
.home .board{margin-top:16px}

/* fixture rows */
.fx{display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 14px;border-top:1px solid var(--line)}
.fx:first-child{border-top:0}
.fx-when{font-size:12px;color:var(--muted);line-height:1.35}
.fx-when b{display:block;color:var(--text);font-weight:600}
.fx-teams{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14.5px;margin-bottom:6px}
.fx-teams:hover{color:var(--accent)}
.fx-teams i{font-style:normal;color:var(--faint);font-weight:600}
.fx-act{display:flex;gap:6px;align-items:center}
.fx-ft{font:italic 800 18px/1 var(--display);color:var(--accent)}
.cbar{max-width:420px}
.cbar.none{font-size:12px;color:var(--faint)}
.cseg{display:flex;height:6px;border-radius:6px;overflow:hidden;background:var(--panel-3);gap:2px}
.cseg span{display:block;height:100%}
.cseg .sH{background:var(--accent)}
.cseg .sD{background:#5C6B86}
.cseg .sA{background:#6FB6FF}
.clab{display:flex;justify-content:space-between;gap:8px;font-size:11.5px;color:var(--muted);margin-top:5px;font-weight:600}
.cbar small{font-size:11px;color:var(--faint)}

/* bookmaker tiles + cards */
.bk-tile{--c:var(--accent);display:inline-grid;place-items:center;width:52px;height:52px;border-radius:14px;flex:none;background:color-mix(in srgb,var(--c) 18%,transparent);border:1.5px solid color-mix(in srgb,var(--c) 55%,transparent);color:var(--c);font:italic 800 22px/1 var(--display)}
.bk-tile.sm{width:38px;height:38px;border-radius:10px;font-size:16px}
.bk-tile.lg{width:68px;height:68px;border-radius:18px;font-size:28px}
.tbs{padding:14px 16px}
.tb{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line)}
.tb:first-of-type{border-top:0}
.tb-rank{width:18px;color:var(--faint);font-weight:800;font-size:12px}
.tb-txt{flex:1;min-width:0}
.tb-txt b{display:block;font-size:14px}
.tb-txt small{display:block;color:var(--muted);font-size:12px;line-height:1.35}
.spot{padding:14px 16px}
.spot-b{display:flex;gap:12px;align-items:center}
.spot-b b{display:block}
.spot-b small{color:var(--muted);font-size:12px}
.spot-offer{font:italic 800 22px/1.1 var(--display);text-transform:uppercase;color:var(--gold);margin:12px 0}
.disclosure{font-size:12px;color:var(--faint);margin:14px 2px}
.bk-list{display:flex;flex-direction:column;gap:12px}
.bk{padding:18px}
.bk-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.bk-rank{font:italic 800 26px/1 var(--display);color:var(--faint);width:40px}
.bk-name{flex:1;min-width:180px}
.bk-name h2{margin:0;font-size:20px}
.bk-name h2 a:hover{color:var(--accent)}
.bk-name small{color:var(--muted);font-size:13px}
.bk-cta{display:flex;flex-direction:column;align-items:center;gap:6px}
.bk-cta .rev{font-size:12.5px;color:var(--muted);font-weight:600}
.bk-cta .rev:hover{color:var(--text)}
.bk-offer{margin:14px 0 10px;padding:12px 14px;border-radius:12px;background:rgba(255,197,61,.07);border:1px solid rgba(255,197,61,.22)}
.bk-offer .lbl,.rv-offer .lbl{display:block;font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--gold);margin-bottom:3px}
.bk-offer b{font-size:16px}
.bk-meta{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:13px;color:var(--text)}
.bk-meta i{font-style:normal;color:var(--faint);font-weight:600;margin-right:6px}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.chips span{padding:5px 10px;border-radius:20px;background:var(--panel-2);border:1px solid var(--line);font-size:12px;font-weight:600;color:#c3cde0}
.terms{font-size:11.5px;color:var(--faint);margin:12px 0 0;line-height:1.5}

/* prose pages */
.prose{padding:22px}
.prose h1{margin:0 0 6px;font:italic 800 42px/1 var(--display);text-transform:uppercase}
.prose h2{font-size:18px;margin:24px 0 10px}
.prose h2:first-child{margin-top:0}
.prose p,.prose li{color:#c3cde0;line-height:1.7}
.prose ul{padding-left:20px}
.prose a{color:var(--accent)}
.prose .lead-p{font-size:16px;color:var(--muted)}
.doc-card .doc-grid .card{padding:16px}
.doc-card .doc-grid h3{margin:0 0 4px;font-size:15px}
.doc-card .doc-grid p{margin:0;color:var(--muted);font-size:13.5px}
.doc-card .help p{margin:0 0 8px}
.doc-card .big-num{font:italic 800 38px/1.1 var(--display)}
.faq{border-top:1px solid var(--line);padding:12px 0}
.faq summary{cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:10px}
.faq summary::after{content:"+";color:var(--accent);font-weight:800}
.faq[open] summary::after{content:"–"}
.faq p{margin:8px 0 0}
.crumbs{font-size:12.5px;color:var(--faint);margin:0 2px 12px}
.crumbs a{color:var(--muted)}
.crumbs a:hover{color:var(--text)}
.gh-bk{background:radial-gradient(600px 300px at 90% 40%,rgba(255,197,61,.18),transparent 60%),linear-gradient(110deg,#0a1324 40%,#1f1a0c)}
.gh-bk .eyebrow,.gh-bk h1 em{color:var(--gold)}

/* reviews */
.rv-head{padding:20px}
.rv-top{display:flex;gap:16px;align-items:center}
.rv-top h1{margin:0;font:italic 800 40px/1 var(--display);text-transform:uppercase}
.rv-top p{margin:6px 0 0;color:var(--muted)}
.rv-offer{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:16px;padding:14px 16px;border-radius:14px;background:rgba(255,197,61,.07);border:1px solid rgba(255,197,61,.22)}
.rv-offer b{font-size:18px;flex:1;min-width:200px}
.rv-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.rv-facts div{background:var(--bg-2);border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.rv-facts i{display:block;font-style:normal;font-size:11px;color:var(--faint);font-weight:700;text-transform:uppercase;letter-spacing:.5px}
.rv-facts b{font-size:13.5px}
.rv-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;margin-top:16px;align-items:start}
.pros li::marker{content:"✓  ";color:var(--accent)}
.cons li::marker{content:"!  ";color:var(--gold)}
.others{padding:14px 16px}
.mini-b{display:flex;gap:10px;align-items:center;padding:9px 0;border-top:1px solid var(--line)}
.mini-b:first-of-type{border-top:0}
.mini-b span b{display:block;font-size:13.5px}
.mini-b span small{display:block;color:var(--muted);font-size:11.5px;line-height:1.3}
.mini-b:hover b{color:var(--accent)}

/* prediction pages */
.pv-head{padding:22px}
.pv-head .eyebrow{margin-bottom:6px}
.pv-head h1{margin:0 0 8px;font:italic 800 42px/1 var(--display);text-transform:uppercase}
.pv-head p{color:#c3cde0;line-height:1.7;margin:10px 0 0}
.pv-when{display:flex;align-items:center;gap:8px;color:var(--accent)!important;font-weight:700;margin:0!important}
.pv-when .ic{width:17px;height:17px}
.pv-ft{margin-top:12px;font-size:16px}
.pv-picks,.pv-bet,.pv-tip{padding:18px;margin-top:14px}
.pv-picks .cbar{max-width:none}
.pv-picks .clab{font-size:13px}
.pv-bet p{color:var(--muted);margin:0}
.pv-tip p{margin:0;color:#dfe6f2;line-height:1.7}
.scores{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.scores span{display:flex;flex-direction:column;align-items:center;min-width:74px;padding:8px 10px;border-radius:12px;background:var(--bg-2);border:1px solid var(--line);font-size:11.5px;color:var(--muted);font-weight:600}
.scores b{font:italic 800 24px/1 var(--display);color:var(--text)}
.gpage.narrow > .card:not(.pv-head):not(.prose){margin-top:14px}
.gpage.narrow > .card .card-title{padding:0}
.gpage.narrow > section.card:last-of-type{padding:16px}
.mini-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-top:4px}
.mini-f{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:12px;background:var(--bg-2);border:1px solid var(--line)}
.mini-f:hover{border-color:var(--line-2)}
.mini-f .cc{align-self:flex-start;margin-bottom:4px}
.mini-f small{color:var(--muted);font-size:12px}

/* predictor extras */
.lbtabs{margin-bottom:10px}
.lbtabs button{flex:1;justify-content:center}
.leagues{padding:16px}
.leagues .meta{margin-left:auto;font-size:11.5px;color:var(--faint);font-weight:600}
.lg-forms{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.lg-form{display:flex;gap:6px}
.lg-form input{flex:1;min-width:0;height:40px;border-radius:10px;border:1px solid var(--line-2);background:var(--bg-2);padding:0 12px;outline:0}
.lg-form input:focus{border-color:rgba(31,224,143,.6)}
.lg{border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-top:10px;background:var(--bg-2)}
.lg-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.lg-top b{font-size:15px}
.lg-code{font:italic 800 16px/1 var(--display);letter-spacing:1px;color:var(--gold);background:rgba(255,197,61,.1);padding:4px 8px;border-radius:8px}
.lg-top .sp{flex:1}
.lg-top button,.lg-top a{height:30px;padding:0 10px;border-radius:8px;border:1px solid var(--line-2);background:none;font-size:12px;font-weight:700;color:var(--muted);display:inline-flex;align-items:center;gap:6px}
.lg-top button:hover,.lg-top a:hover{color:var(--text)}
.lg-top .ic{width:14px;height:14px}
.lg ol{list-style:none;margin:8px 0 0;padding:0}
.lg li{display:flex;gap:10px;padding:6px 0;border-top:1px solid var(--line);font-size:13px}
.lg li:first-child{border-top:0}
.lg li .nm{flex:1}
.lg li.you{color:var(--accent);font-weight:700}
.betcard{padding:14px 16px}
.betcard p{margin:0;color:var(--muted);font-size:13px}

/* spin extras */
.m-stats.four{grid-template-columns:repeat(4,1fr);max-width:560px}
.refer{padding:14px 16px}
.refer p{margin:0 0 10px;color:var(--muted);font-size:13px}
.ref-link{display:flex;gap:6px}
.ref-link input{flex:1;min-width:0;height:40px;border-radius:10px;border:1px solid var(--line-2);background:var(--bg-2);padding:0 10px;font-size:12.5px;color:var(--text)}
.ref-share{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}
.ref-stats{margin-top:10px;font-size:12.5px;color:var(--muted)}
.ref-stats b{color:var(--text)}
.outbox{width:100%;max-width:520px;padding:14px 16px;border-radius:14px;border:1px solid rgba(255,197,61,.3);background:rgba(255,197,61,.06);text-align:center}
.outbox p{margin:6px 0 0;color:var(--muted);font-size:13px}
.outbox .cta-row{justify-content:center;margin-top:10px}

/* forms */
.cform select,.cform textarea{width:100%;border-radius:11px;border:1px solid var(--line-2);background:var(--bg-2);padding:10px 14px;outline:0;font:inherit;color:inherit}
.cform select{height:46px}
.cform textarea{resize:vertical;min-height:120px}
.cform select:focus,.cform textarea:focus{border-color:rgba(31,224,143,.6)}
.form-msg.ok{color:var(--accent)}
.join-note a{color:var(--accent)}

@media (max-width:1240px){.layout.home{grid-template-columns:minmax(0,1fr) 320px}}
@media (max-width:980px){
  .layout.home{grid-template-columns:minmax(0,1fr)}
  .home-side{position:static}
  .rv-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:680px){
  .fx{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"when act" "main main";gap:8px}
  .fx-when{grid-area:when;display:flex;gap:6px}
  .fx-when b{display:inline}
  .fx-main{grid-area:main}
  .fx-act{grid-area:act}
  .bk-head{gap:10px}
  .bk-rank{width:auto;font-size:20px}
  .bk-cta{flex-direction:row;width:100%}
  .bk-cta .btn{flex:1}
  .rv-top h1,.pv-head h1,.prose h1{font-size:32px}
  .rv-facts{grid-template-columns:1fr}
  .lg-forms{grid-template-columns:1fr}
  .m-stats.four{grid-template-columns:repeat(2,1fr)}
  .prose{padding:18px}
}
