*,:after,:before{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{min-height:100%;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:#141417;color:#fff;line-height:1.5}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Header */
.header{background:#222 url(/assets/img/header/bg-logo.png) center no-repeat,url(/assets/img/header/bg-header-repeat.png) repeat,url(/assets/img/header/bg-header.png) center no-repeat;background-color:#222}
.header .box{max-width:1200px;margin:0 auto;position:relative;height:60px}
.header .logo{position:absolute;top:0;left:50%;transform:translateX(-50%);z-index:99}
.header .logo img{width:125px;height:auto;margin:-10px auto 0;padding-left:12px}
.bt-menu{position:absolute;left:0;top:0}
.bt-menu a,.search a{display:flex;align-items:center;justify-content:center;width:60px;height:60px;color:#fff;font-size:20px;transition:.2s}
.bt-menu a:hover,.search a:hover{color:#c6ff00}
.search{position:absolute;right:0;top:0}
.icon{width:22px;height:22px;fill:currentColor}

/* Menu lateral */
.menu{position:fixed;inset:0 auto 0 0;width:min(300px,88vw);max-width:300px;background:#333;z-index:10000;transform:translateX(-100%);transition:transform .25s ease;overflow-y:auto;list-style:none}
.menu.active{transform:translateX(0)}
.menu-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:9999;opacity:0;visibility:hidden;transition:.25s}
.menu-overlay.active{opacity:1;visibility:visible}
.header-menu{display:flex;align-items:center;justify-content:space-between;height:60px;background:#c5ff26;padding:0 10px}
.header-menu span{font-weight:700;font-size:24px;color:#222}
.close-menu{display:flex;align-items:center;justify-content:center;width:44px;height:44px;color:#222;font-size:28px}
.menu>ul{margin:0;padding:0;list-style:none}
.menu li{border-bottom:1px solid rgba(33,33,33,.4)}
.menu>ul>li>a{display:block;padding:0 10px;height:44px;line-height:44px;font-size:14px;color:#fff;transition:.2s}
.menu>ul>li>a:hover{background:rgba(0,0,0,.4);color:#c5ff26}
.sub-menu{background:#222;padding:0;margin:0;list-style:none}
.sub-menu a{display:block;padding:0 20px;height:40px;line-height:40px;font-size:13px;color:#ddd}
.sub-menu a:hover{color:#c5ff26}

/* Busca */
.busca{position:fixed;inset:0;z-index:10001;background:rgba(22,22,22,.95);display:none;align-items:center;justify-content:center;padding:20px}
.busca.active{display:flex}
.busca .box{width:min(600px,100%);background:#111;border:1px solid #333;border-radius:10px;overflow:hidden;display:flex;align-items:center;position:relative}
.busca input{flex:1;height:50px;background:0 0;border:0;color:#fff;padding:0 14px;font-size:18px;outline:0}
.busca button,.close-search{display:flex;align-items:center;justify-content:center;width:50px;height:50px;background:0 0;border:0;color:#c5ff26;cursor:pointer;font-size:22px}

/* Hero */
.hero{background:#0b0b0b;padding:18px 10px;text-align:center}
.hero h1{color:#c6ff00;font-size:clamp(16px,2.5vw,18px);margin:0 0 6px;font-weight:800}
.hero p{color:#ccc;font-size:13px;max-width:900px;margin:0 auto;line-height:1.4}

/* Carrossel canais - CSS scroll-snap (sem JS) */
.grid{padding:10px 0;border-bottom:2px solid #9acd32;background:#000}
.box-content-grid{max-width:1200px;margin:0 auto;padding:0 10px}
.carousel-wrap{position:relative}
.carousel{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;padding:4px 0 12px;scrollbar-width:thin;scrollbar-color:#c6ff00 #111}
.carousel::-webkit-scrollbar{height:6px}
.carousel::-webkit-scrollbar-thumb{background:#c6ff00;border-radius:3px}
.carousel-slide{flex:0 0 auto;scroll-snap-align:start;display:grid;gap:10px;width:min(300px,78vw)}
.carousel-slide img{width:300px;height:auto;border-radius:10px;object-fit:cover;transition:transform .2s}
.carousel-slide a:hover img{transform:scale(1.02)}
.carousel-nav{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border:0;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;cursor:pointer;display:none;align-items:center;justify-content:center;font-size:22px;z-index:2}
@media(min-width:768px){
  .carousel-nav{display:flex}
  .carousel-nav.prev{left:-8px}
  .carousel-nav.next{right:-8px}
}

/* Layout principal */
.fm-wrap{max-width:1200px;margin:0 auto;padding:14px}
.fm-grid{display:grid;grid-template-columns:1fr 340px;gap:14px}
@media(max-width:992px){.fm-grid{grid-template-columns:1fr}}
.fm-title{display:inline-block;background:#c6ff00;color:#0b0b0b;font-weight:800;font-size:13px;padding:4px 10px;border-radius:2px;margin:0 0 8px;text-transform:uppercase}
.fm-panel{background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.08);border-radius:6px;overflow:hidden;padding:10px}

/* Cards jogos ao vivo */
.fm-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
@media(max-width:992px){.fm-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.fm-cards{grid-template-columns:1fr}}
.fm-card{position:relative;border-radius:16px;overflow:hidden;background:#0f1117;border:1px solid rgba(255,255,255,.05);min-height:140px;transition:.25s ease}
.fm-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px rgba(0,0,0,.5);border-color:rgba(198,255,0,.35)}
.fm-card .bg{height:120px;background:#222 center/cover no-repeat}
.fm-card .meta{position:absolute;top:6px;left:6px;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.18);padding:3px 8px;border-radius:3px;font-size:11px;font-weight:800}
.fm-card .meta b{color:#c6ff00}
.fm-card .txt{padding:10px}
.fm-card .txt h2{margin:0;font-size:14px;line-height:1.2;font-weight:700;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fm-card .txt .date{margin-top:6px;font-size:11px;color:rgba(255,255,255,.65)}

/* Sidebar TOP Jogos */
.fm-side-list{display:flex;flex-direction:column;gap:10px}
.fm-side-item{position:relative;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:#0f0f0f;height:92px;transition:.18s ease}
.fm-side-item:hover{transform:translateY(-2px);border-color:rgba(198,255,0,.35);box-shadow:0 10px 22px rgba(0,0,0,.45)}
.fm-side-item .bg{position:absolute;inset:0;background:#222 center/cover no-repeat;filter:saturate(1.05) contrast(1.05);transform:scale(1.02)}
.fm-side-item::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.35) 55%,rgba(0,0,0,.05) 100%),linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.55) 100%);pointer-events:none}
.fm-side-item .title{position:absolute;left:10px;right:10px;bottom:10px;font-size:12.5px;font-weight:900;line-height:1.15;text-shadow:0 2px 12px rgba(0,0,0,.85);z-index:2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* Conteúdo SEO */
.fm-textbox{background:linear-gradient(180deg,#0b0b0b 0%,#050505 100%);border:1px solid rgba(198,255,0,.08);border-radius:12px;padding:26px;margin-top:14px;box-shadow:0 20px 60px rgba(0,0,0,.55)}
.fm-textbox h2{font-size:clamp(20px,3vw,26px);font-weight:800;margin:30px 0 12px;color:#e5e5e5;position:relative;padding-bottom:10px}
.fm-textbox h2:first-of-type{margin-top:0}
.fm-textbox h2::after{content:"";display:block;width:60px;height:3px;margin-top:10px;border-radius:10px;background:#c6ff00}
.fm-textbox p{color:#bdbdbd;font-size:15.5px;line-height:1.8;margin-bottom:14px}
.fm-textbox a{color:#c6ff00;font-weight:700}
.fm-textbox a:hover{color:#fff;text-shadow:0 0 12px rgba(198,255,0,.7)}
.fm-textbox ul{margin:18px 0;padding:0;list-style:none}
.fm-textbox li{padding:7px 0 7px 22px;position:relative;color:#d0d0d0;font-size:15px;border-bottom:1px solid rgba(255,255,255,.05)}
.fm-textbox li::before{content:"";width:6px;height:6px;background:#c6ff00;border-radius:50%;position:absolute;left:0;top:14px;box-shadow:0 0 10px #c6ff00}

/* Footer */
.fm-footer{background:#0b0b0b;padding:35px 0 30px;border-top:1px solid rgba(255,255,255,.05);margin-top:20px}
.fm-footer-wrap{max-width:1180px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:420px 1fr;gap:35px;align-items:start}
.fm-footer-name{font-size:22px;font-weight:900;color:#fff;letter-spacing:.5px}
.fm-footer-desc{color:#cfcfcf;font-size:13px;line-height:1.65;max-width:360px;margin-top:8px}
.fm-footer-desc strong{color:#c6ff00}
.fm-footer-h{color:#c6ff00;font-size:13px;font-weight:900;margin-bottom:12px;letter-spacing:.6px;text-transform:uppercase;text-align:center}
.fm-cols-4{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:6px 18px;justify-items:center}
.fm-footer-links a{display:block;color:#eaeaea;font-size:13px;line-height:24px;opacity:.9;transition:.15s}
.fm-footer-links a:hover{color:#c6ff00;opacity:1}
.copyright{text-align:center;padding:16px;color:#666;font-size:12px;border-top:1px solid rgba(255,255,255,.05);margin-top:20px}

/* Telegram flutuante */
.tg-ball{position:fixed;bottom:35px;right:35px;width:75px;height:75px;background:#0088cc;border-radius:50%;z-index:9999;display:flex;align-items:center;justify-content:center;box-shadow:0 0 25px rgba(0,136,204,.8);transition:.3s;animation:pulseTG 2s infinite}
.tg-ball::after{content:"";width:30px;height:30px;background:url(/assets/icons/telegram.svg) center/contain no-repeat;filter:invert(1)}
.tg-ball::before{content:"Entrar no Telegram";position:absolute;top:-22px;left:50%;transform:translateX(-50%);background:#ffd000;color:#000;font-size:11px;font-weight:700;padding:3px 8px;border-radius:6px;white-space:nowrap}
.tg-ball:hover{transform:scale(1.08)}
@keyframes pulseTG{0%{box-shadow:0 0 25px rgba(0,136,204,.8),0 0 0 0 rgba(0,136,204,.5)}70%{box-shadow:0 0 25px rgba(0,136,204,.8),0 0 0 18px rgba(0,136,204,0)}100%{box-shadow:0 0 25px rgba(0,136,204,.8),0 0 0 0 rgba(0,136,204,0)}}

@media(max-width:900px){
  .fm-footer-wrap{grid-template-columns:1fr;gap:25px}
  .fm-footer-h{text-align:left}
  .fm-cols-4{grid-template-columns:repeat(2,minmax(140px,1fr));justify-items:start}
}
@media(max-width:768px){
  .tg-ball{width:52px;height:52px;bottom:20px;right:20px}
  .tg-ball::after{width:22px;height:22px}
  .fm-textbox{padding:20px}
}

/* ===== Páginas internas ===== */
.sub-header{background:#1b1b1b center/cover no-repeat;min-height:150px;position:relative}
.sub-header::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85),rgba(27,27,27,.4))}
.sub-header .inner{position:relative;z-index:1;max-width:900px;margin:0 auto;padding:80px 16px 24px;text-align:center}
.sub-header h1{font-size:clamp(18px,3vw,22px);color:#fff;margin:0 0 8px;font-weight:800}
.sub-header p{color:#ccc;font-size:13px;margin:0;line-height:1.4}
.sub-header .tags{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:12px}
.sub-header .tags a{font-size:12px;border:1px solid #c6ff00;color:#c6ff00;padding:4px 10px;border-radius:5px}
.sub-header .tags a:hover{background:rgba(0,0,0,.4)}

.image-post{max-width:720px;margin:20px auto;border-radius:8px;border:2px solid #c5ff26;background:#111;overflow:hidden;aspect-ratio:16/9;position:relative}
.image-post .placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#fff;text-align:center;padding:20px;background:rgba(0,0,0,.75)}
.image-post .placeholder b{color:#c6ff00;font-size:clamp(20px,4vw,28px);display:block;margin-bottom:8px}
.image-post .placeholder span{font-size:14px;color:#aaa}

.options-bar{max-width:720px;margin:0 auto 20px;padding:8px;text-align:center;background:#222;border-top:2px solid #c5ff26;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.options-bar a{display:inline-block;padding:8px 14px;font-size:14px;font-weight:700;border:1px solid #333;border-radius:5px;color:#c5ff26;text-transform:uppercase;transition:.2s}
.options-bar a:hover{background:#c5ff26;color:#111}

.fm-player{max-width:900px;margin:20px auto;background:rgba(0,0,0,.55);border:1px solid rgba(198,255,0,.22);border-radius:12px;overflow:hidden}
.fm-player-head{padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.08)}
.fm-player-title{margin:0;font-size:15px;font-weight:800;color:#fff}
.fm-player-note{margin:4px 0 0;font-size:12px;color:rgba(255,255,255,.65)}
.fm-player-body{aspect-ratio:16/9;background:#0a0a0a;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#888;padding:20px;text-align:center}
.fm-player-body b{color:#c6ff00;font-size:18px;margin-bottom:8px}
.fm-player-options{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px;border-top:1px solid rgba(255,255,255,.08);justify-content:center}
.fm-player-options a{padding:8px 16px;border:1px solid rgba(198,255,0,.35);border-radius:999px;color:#c6ff00;font-size:12px;font-weight:800}

.fm-team-wrap{max-width:1200px;margin:0 auto;padding:14px}
.fm-team-head{background:rgba(0,0,0,.55);border:1px solid rgba(198,255,0,.22);border-radius:12px;padding:16px;margin:10px 0 14px}
.fm-team-title{margin:0;color:#fff;font-size:26px;line-height:1.1;font-weight:900}
.fm-team-sub{margin-top:6px;color:rgba(255,255,255,.78);font-size:14px;line-height:1.45}
.fm-team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media(max-width:992px){.fm-team-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.fm-team-grid{grid-template-columns:1fr}}
.fm-match{background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden;transition:.15s ease}
.fm-match:hover{transform:translateY(-2px);border-color:rgba(198,255,0,.35)}
.fm-match a{display:block;color:#fff}
.fm-match-thumb{aspect-ratio:16/9;background:#101010;position:relative}
.fm-match-thumb img{width:100%;height:100%;object-fit:cover}
.fm-badge{position:absolute;top:10px;left:10px;background:#c6ff00;color:#0b0b0b;font-weight:900;font-size:11px;padding:4px 9px;border-radius:999px}
.fm-match-body{padding:12px}
.fm-match-title{margin:0;font-size:14px;font-weight:900;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fm-match-meta{margin-top:8px;color:rgba(255,255,255,.72);font-size:12px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.fm-pill{border:1px solid rgba(198,255,0,.35);color:#c6ff00;font-weight:900;padding:3px 8px;border-radius:999px;font-size:11px}
.breadcrumb{font-size:12px;color:#888;padding:10px 14px 0;max-width:1200px;margin:0 auto}
.breadcrumb a{color:#c6ff00}
.breadcrumb span{margin:0 6px}

/* ===== Auth / Conta / Checkout ===== */
.fm-auth{max-width:440px;margin:40px auto;padding:0 16px}
.fm-auth-box{background:linear-gradient(180deg,#0b0b0b 0%,#050505 100%);border:1px solid rgba(198,255,0,.15);border-radius:12px;padding:28px;box-shadow:0 20px 60px rgba(0,0,0,.55)}
.fm-auth-box h1{font-size:24px;font-weight:900;color:#fff;margin:0 0 6px}
.fm-auth-box .sub{color:rgba(255,255,255,.65);font-size:13px;margin:0 0 22px}
.fm-field{margin-bottom:16px}
.fm-field label{display:block;font-size:12px;font-weight:800;color:rgba(255,255,255,.8);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px}
.fm-field input{width:100%;height:46px;background:#141417;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#fff;padding:0 14px;font-size:15px;outline:0;transition:border-color .15s}
.fm-field input:focus{border-color:#c6ff00}
.fm-btn{display:block;width:100%;height:48px;background:#c6ff00;color:#0b0b0b;border:0;border-radius:8px;font-size:15px;font-weight:900;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:.2s;text-align:center;line-height:48px}
.fm-btn:hover{background:#d4ff3d;box-shadow:0 0 20px rgba(198,255,0,.35)}
.fm-btn:disabled{opacity:.6;cursor:not-allowed}
.fm-auth-alt{text-align:center;margin-top:18px;font-size:13px;color:rgba(255,255,255,.6)}
.fm-auth-alt a{color:#c6ff00;font-weight:800}
.fm-msg{border-radius:8px;padding:10px 14px;font-size:13px;font-weight:700;margin-bottom:16px;display:none}
.fm-msg.error{display:block;background:rgba(207,46,46,.15);border:1px solid rgba(207,46,46,.4);color:#ff8a8a}
.fm-msg.ok{display:block;background:rgba(198,255,0,.1);border:1px solid rgba(198,255,0,.35);color:#c6ff00}
.fm-plans{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}
@media(max-width:560px){.fm-plans{grid-template-columns:1fr}}
.fm-plan{background:#141417;border:2px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;cursor:pointer;text-align:center;transition:.2s}
.fm-plan:hover,.fm-plan.selected{border-color:#c6ff00}
.fm-plan .name{font-size:14px;font-weight:900;color:#fff;text-transform:uppercase}
.fm-plan .price{font-size:28px;font-weight:900;color:#c6ff00;margin:8px 0 2px}
.fm-plan .per{font-size:12px;color:rgba(255,255,255,.55)}
.fm-plan .save{display:inline-block;margin-top:8px;background:rgba(198,255,0,.12);color:#c6ff00;font-size:11px;font-weight:800;padding:3px 10px;border-radius:999px}
.fm-account-row{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:14px}
.fm-account-row .k{color:rgba(255,255,255,.55);font-weight:700}
.fm-account-row .v{color:#fff;font-weight:700;text-align:right}
.fm-badge-status{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:900;text-transform:uppercase}
.fm-badge-status.active{background:rgba(198,255,0,.15);color:#c6ff00}
.fm-badge-status.none{background:rgba(255,255,255,.08);color:rgba(255,255,255,.6)}
.fm-link-btn{background:none;border:0;color:#c6ff00;font-weight:800;font-size:13px;cursor:pointer;padding:0}
