body {
	background: #101114 !important;
	font-family: 'Rubik' !important;
	overflow-x: hidden !important;
}

*:focus, button:focus, input:focus, textarea:focus, .btn-primary:not(:disabled):not(.disabled).active:focus, .btn-primary:not(:disabled):not(.disabled):active:focus, .show>.btn-primary.dropdown-toggle:focus {
    outline: none !important;
    box-shadow: none !important;
}

/* ----------- THEME2 ----------- */
.btn-top-user {
    margin-top: 9px;
    border-radius: 50px !important;
}

.btn-odds.bg-success {
	background: #E10600 !important;
    border-color: #E10600 !important;
    color: #FFFFFF !important;
}

.btn-odds.bg-success:hover {
	background: #E10600 !important;
    border-color: #E10600 !important;
    color: #FFFFFF !important;
}

.btn-odds.bg-success .caption {
	color: rgba(0, 0, 0, .6) !important;
}

.col-padding-odd {
	padding: 0 2px !important;
}

.home-event-list-item {
	padding: 10px !important;
}

.home-event-list-item .row {
	margin: 10px -3px 0 -3px !important;
}

.home-event-list-item a {
	display: block;
}

.heli-date {
    font-size: 11px;
}

.featured-events {

}

.fe-img {

}

.fe-title {
	font-size: 20px;
	padding: 6px 10px 5px 10px;
	margin-top: -62px;
    z-index: 10;
    position: relative;
    background: #0000007a;
}

.fe-sport {
	font-size: 12px;
	padding-left: 40px;
}

.fe-title div:not(.fe-sport) {
	font-weight: 600;
}

.fe-title a {
	margin-top: -43px;
    margin-bottom: 9px;
}

#col-sidebar .sidebar-sport-icon {
	opacity: .1;
	margin-top: 6px;
}

#col-sidebar .sports-list li {
    border-bottom: 1px dashed #ffffff12;
}

#col-sidebar .sports-list li a {
	padding: 7px 0 !important;
}

#col-sidebar .sports-list.no-icon li a {
	padding: 7px 18px !important;
}

@media screen and (min-width: 1500px){
	.xl-left-sidebar {
		width: 230px !important;
    	max-width: 230px !important;
	}

	.xl-right-sidebar {
		width: 270px;
	    max-width: 270px !important;
	    flex: auto !important;
	}

	.single-main {
		width: calc(100% - 500px) !important;
		max-width: calc(100% - 500px) !important;
	    flex: auto !important;
	}

	.xl-main-content:not(.single-main) {
		width: calc(65% - 230px) !important;
    	max-width: calc(65% - 230px) !important;
	}

	.xl-main-subcontent {
		width: calc(35% - 270px);
	    max-width: calc(35% - 270px);
	}
}

@media screen and (min-width: 1200px) and (max-width: 1499px){
	.xl-left-sidebar {
		width: 230px !important;
    	max-width: 230px !important;
	    flex: auto !important;
	}

	.xl-left-sidebar {
		width: 230px !important;
    	max-width: 230px !important;
	}

	.xl-right-sidebar {
		width: 270px;
	    max-width: 270px !important;
	    flex: auto !important;
	}

	.xl-main-content {
		width: calc(100% - 500px) !important;
    	max-width: calc(100% - 500px) !important;
    	flex: auto !important;
	}

	.xl-main-subcontent {
		display: none;
	}
}

@media screen and (max-width: 1199px){
	.xl-main-subcontent {
		display: none;
	}
}

@media screen and (max-width: 990px){
	.logo {
		text-align: center !important;
	}

	.btn-top-user {
		margin-top: .25rem!important;
		margin-bottom: .25rem!important;
	}
}

#subheader {
	background: #0B0C0E;
}

.inline-rounded-login-form {
	margin: 8px 0;
}

.inline-rounded-login-form input {
	padding: 7px 10px;
    border-radius: 50px;
    border: 0;
    font-size: 12px;
}

.inline-rounded-login-form button {

}

.inline-rounded-login-form .btn {
	padding: 5px 15px;
    border-radius: 50px;
    font-weight: bold;
	text-transform: uppercase;
	font-size: 12px;
}

.inline-rounded-login-form .btn-signup {
	background: transparent;
    border: 2px solid #E10600;
    color: #E10600;
}

.inline-rounded-login-form .btn-signup:hover {
	color: #FF2A1F !important;
    border: 2px solid #FF2A1F;
}

/* ----------- /THEME2 ----------- */

.input-disabled {
	background: #ffffff21 !important;
}

a:hover {
	cursor: pointer;
	text-decoration: none !important;
	transition: all 0.5s ease;
}

#bet_form {
	margin-bottom: 0 !important;
}

.casino-img-grid {
    padding: 5px;
    aspect-ratio: 1 / 0.7;
    background-size: 100% 100%;
    -webkit-border-top-left-radius: 8px;
	-webkit-border-top-right-radius: 8px;
	-moz-border-radius-topleft: 8px;
	-moz-border-radius-topright: 8px;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
	position: relative;
    z-index: 1;
}

.casino-overlay {
	margin-bottom: 10px;
	padding: 5px;
	padding: 65px 5px 5px 5px;
    margin-top: -109px;
	position: relative;
    color: #FFF;
    font-size: 13px;
    text-align: center;
    -webkit-border-bottom-right-radius: 8px;
	-webkit-border-bottom-left-radius: 8px;
	-moz-border-radius-bottomright: 8px;
	-moz-border-radius-bottomleft: 8px;
	border-bottom-right-radius: 8px;
	border-bottom-left-radius: 8px;
}

.casino-overlay b {
	display: block;
	height: 19.5px;
    overflow: hidden;
}

.casino-item {
	
}

.page-title {
	color: #FFF;
    font-size: 20px;
    padding: 10px 0;
}

.page-loader {
	position: fixed;
    width: 100%;
    height: 100vh;
    background: #101114bb;
    z-index: 1000;
}

.page-loader-content {
	text-align: center;
    padding: 20px;
    margin-top: 45vh;
	color: #FFF;
	font-size: 18px;
}

.page-loader-content div {
	margin-top: 10px;
}

.form-control:focus {
	border-color: inherit !important;
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
}

.site-inputs {
	outline: none !important; 
	border: 2px solid #696969 !important;
    color: #FFF !important;
    text-align: center !important;
}

.site-inputs:not(.input-disabled) {
    background: rgba(0, 0, 0, .2) !important;
    background-color: rgba(0, 0, 0, .2) !important;
}

.site-inputs.form-control-md {
	border-radius: 0 !important;
	border: 1px solid #696969 !important;
    text-align: left !important;
}

.account-menu-active {
	color: #E10600 !important;
	font-size: 10px !important;
    margin: 8px 10px 0 0 !important;
    float: left !important;
}

.deposit-banner {
}

.deposit-banner img {
	max-width: 100%;
}

.betslip-text-opacity-black {
	color: rgba(0, 0, 0, .4) !important;
}

.fs-12 {
	font-size: 12px !important;
}

.regulation-text {
	color: #FFF;
}

#sports ul li a i {
	color: #ffffffbd !important;
    background: rgba(0, 0, 0, .3);
    width: 70px;
    padding: 9px 0;
    border-radius: 50px;
    font-size: 35px !important;
    margin: 0 auto;
}

.btn-more-odds {
	color: #FFF !important;
}

.img-casino {
	width: 100%;
	border-radius: 8px !important;
}

.overlay-casino {
    position: relative;
    border-radius: 8px;
    color: #000;
}

.overlay-casino h4 {
	color: #ffffffc9;
    padding: 10px 5px;
    text-align: center;
    font-size: 13px;
}

.d-none2 {
	display: none;
}

object#live-tracker {
    position: absolute;
    height: 100%;
}

.marca-gol-option-name {
	color: #ededed !important;
    font-size: 13px !important;
    padding: 13px 10px;
    border-bottom: 1px solid rgba(255, 255, 255, .05);
}

.w100 {
	width: 100% !important;
}

.options-header {
	color: #FFF;
    text-transform: uppercase;
    padding: 30px;
    width: 100%;
}

.options-header div {
	text-align: center;
	font-size: 25px;
}

.options-header img {
	max-width: 50px;
	margin: 0 5px;
}

.options-header .date {
	font-weight: 200 !important;
	font-size: 16px !important;
}

.top-home-title {
	background: #1B1D22;
    font-weight: bold;
}

.top-home-title a {
	font-size: 16px !important;
}

.top-home ul {
	padding: 0;
	margin: 0;
}

.top-home ul li {
	list-style: none;
	display: inline-block;
}

.top-home a {
	padding: 5px 10px;
	font-size: 13px;
	color: #e4e4e4;
	display: block;
}

.breadcumbs {
	background: rgba(0, 0, 0, .4);
}

.breadcumbs ul {
	padding: 0 10px;
	margin: 0 0 -2px 0;
    position: relative;
    z-index: 1;
}

.breadcumbs ul li {
	list-style: none;
	display: inline-block;
}

.breadcumbs ul li a {
	font-size: 14px;
	padding: 5px 10px;
	display: block;
	color: #c8c8c8;
	border-bottom: 2px solid transparent;
}

.breadcumbs ul li a:hover {
	color: #FFB3AE;
}

.breadcumbs ul li a.active {
	color: #FFF;
	border-bottom: 2px solid #FFF;
}

.text-yellow {
    color: #FF6B63;
}

.matches-table .odds-table-btn {
    cursor: pointer;
    color: #EBEBEB;
    float: left;
    font-size: 13px;
    width: 33.33%;
    border-right: 1px solid rgba(255, 255, 255, .1);
    padding: 13px;
    background: rgba(0, 0, 0, .2);
    min-width: 95px;
    text-align: center;
}

.featured-match-max .odds-table.two .odds-table-btn, .matches-table .odds-table.two .odds-table-btn , .modal .odds-table.two .odds-table-btn {
    width: 50% !important;
}

.odds-table-options .odds-table-btn {
    cursor: pointer;
    color: #ededed !important;
    font-size: 13px !important;
    border-bottom: 1px solid rgba(255, 255, 255, .05);
}

.p-10 {
	padding: 10px !important;
}

.category .item a {
	color: #e4e4e4;
	font-size: 15px;
    padding: 10px 0;
    display: block;
}

.category .item a:hover {
	color: #E10600;
}

.category .item a .subtitle {
	color: #bbb;
	display: block;
	font-size: 10px;
}

.category .item a .flags {
	vertical-align: middle;
	margin-right: 0px;
	margin-top: -2px;
}

.title-primary {
    background: rgba(0, 0, 0, .2);
    color: #FFF;
    padding: 8px 15px;
}

.title-options {
    background: transparent !important;
    border-top: 2px solid #000000;
    font-weight: bold;
}

.lists {
	padding: 0 !important;
}

.lists .row {
	margin: 0 !important;
}

.lists .item {
	padding: 0;
	border-right: 1px solid rgba(255, 255, 255, .05);
	border-bottom: 1px solid rgba(255, 255, 255, .05);
}

.lists .item a {
	display: block;
	padding: 3px;
}

.lists .item a:hover {
	background: rgba(255, 255, 255, .1);
}

.team-block-shield {
	width: 15px;
	margin-right: 5px;
}

.divider-2 {
    background: rgba(0, 0, 0, .4);
    padding: 6px 10px;
    color: rgba(255, 255, 255, .7);
    font-size: 10px;
}

.divider-3 {
    background: #17181C;
    padding: 6px 10px;
    color: rgba(255, 255, 255, .7);
    font-size: 14px;
    border-top: 2px solid #E10600;
}

.divider-4 {
    font-size: 13px;
    color: #FFF;
    background: #101114;
    padding: 5px 15px;
    font-weight: bold;
}

#btnOpenMoreOdds.bg-success:not(.match_more_options_link) {
    background-color: #28a745 !important;
    border-color: #28a745 !important;
    color: #FFF !important;
}

#btnOpenMoreOdds.bg-success.match_more_options_link {
    background-color: #28a74538 !important;
    border-color: #28a74538 !important;
}

.error404 {
	padding: 40px 0;
}

.title-404 {
	color: rgba(255, 255, 255, .7);
    font-weight: bold;
    font-size: 70px;
    text-align: center;
}

.subtitle-404 {
    color: #FFF;
    text-align: center;
    font-weight: bold;
    text-transform: uppercase;
    margin-top: -22px;
}

.col-sidebar-open {
	display: block !important;
	position: fixed !important;
    z-index: 1000 !important;
    top: 0 !important;
}

#slider {
	margin-bottom: 15px;
	border-radius: 10px;
    overflow: hidden;
}

.side-menu-icons {
	padding: 5px 0 15px 0;
    text-align: center;
}

.side-menu-icons a {
	color: rgba(255, 255, 255, .4);
}

.side-menu-icons a:hover {
	color: #FFF;
}

.search {
	overflow: hidden;
    padding: 0 0 10px 0;
}

.search input {
    border: 0;
    border-radius: 0 !important;
    background: #FFF;
    font-size: 12px;
}

.search button {
	border: 0;
    border-left: 1px solid #17181C;
    background: transparent;
    color: #17181C;
    float: right;
    margin-top: -26px;
}

.col-sidebar-casino {
	background: transparent !important;
	border-right: 1px solid #ffffff1c;
	padding: 0 !important;
}

.col-sidebar-casino .new-title {
	border-top: 1px solid #ffffff1c !important;
}

.col-sidebar-casino .sports-list a {
	font-size: 16px !important;
}

.col-sidebar-casino .casin-svg-icons {
	max-width: 30px;
    margin-right: 7px;
	opacity: 0.7;
}

.col-sidebar-casino a:hover .casin-svg-icons {
	opacity: 1;
}

#col-sidebar {
    margin-top: -15px;
    padding-top: 10px;
}

.internal-page #col-sidebar {
	margin-top: 0 !important;
}

#main {
	margin-top: 15px;
}

.card-body a:not(.btn-more):not(.btn-cashout):not(.btn):not(.text-info):not(.text-danger):not(.text-success):not(.text-warning) {
	color: #d0d0d0 !important;
}

.betdetailtr {
	font-size: 13px;
	background: #FFF;
}

.betdetailtr td, .betdetailtr th {
	padding: 5px !important;
}

.btn-color {
	background: #101114 !important;
    border: 1px solid #FF2A1F !important;
    color: #FFF !important;
}

.btn-color2 {
	background: #17181C !important;
    border: 1px solid #17181C !important;
    color: #FFF !important;
}

.sports-svg-icon {
	width: 18px;
    margin-top: -3px;
}

.col-nopadding {
	padding: 0 !important;
}

.row-nomargin {
	width: 100%;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.help-whats-button {
    position: fixed;
    z-index: 1;
    bottom: 10px;
    left: 10px;
}

.card {
	border-radius: 0 !important;
	background: #1B1D22 !important;
	margin-bottom: 15px;
}

.card_body {
	padding: 10px;
}

.card_body .mini-odd {
	float: right;
	color: #FF6B63;
	font-weight: 500;
}

.card_body .match_sidebar_divider {
	background: rgba(255, 255, 255, .3);
	text-align: center;
	font-size: 13px;
    padding: 4px 5px;
    color: #fff;
}

.card_body .match_sidebar_divider .msd-btn {
	float: right;
	font-size: 11px;
    color: #b6b6b6;
    margin-top: 3px;
}

.card_title {
	margin: -1px;
	color: #0000009e;
    text-align: center;
    padding: 8px 5px;
    background: #E10600;
}

.new-title {
	color: rgb(0 0 0 / 71%);
    text-transform: uppercase;
    font-weight: 500;
    font-size: 12px;
    padding: 9px 7px;
    background: #E10600;
    border-bottom: 1px solid rgba(255, 255, 255, .05);
}

.sports-list {
	padding: 0;
	background: #17181C;
    padding: 10px 0;
}

.sports-list a {
	color: rgb(255 255 255 / 88%);
	display: block;
	font-size: 14px;
	padding: 4px 0;
}

.sports-list a.disabled, .sports-list a.disabled:hover {
	color: rgba(255, 255, 255, .2) !important;
	cursor: not-allowed !important;
}

.sports-list a.noIcon {
	padding: 8px 0 !important;
}

.sports-list a .live-icon {
	font-size: 15px !important;
    margin: 10px 11px 10px 11px !important;
    vertical-align: unset !important;
}

.sports-list a.noIcon .caret-sport-icon {
	margin-top: 5px !important;
}

.sports-list a i:not(.caret-sport-icon) {
	font-size: 23px;
	vertical-align: sub;
	margin-right: 3px;
}

.sports-list a .caret-sport-icon {
	float: right;
	margin-top: 11px;
}

.sports-list a:hover {
	color: #FFF;
}

.sports_menu {
	padding: 0;
	margin: 0;
}

.sports_menu li {
	display: block;
	list-style: none;
    border-bottom: 1px solid rgba(0, 0, 0, .4);
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.sports_menu li a {
	cursor: pointer;
	display: block;
    color: #FFF;
    padding: 2px 5px;
    margin: 2px 0;
}

.sports_menu li a i {
    float: right;
}

.sports_menu li a:hover {
	color: #FFF !important;
}

.sports_menu li a.active {
	background: #E10600 !important;
	color: #0000009e !important;
}

.sports_menu li a.hvr-bounce-to-right:before, .sports_menu li a.hvr-bounce-to-left:before, #footer a.hvr-bounce-to-right:before {
	background: rgba(255, 255, 255, .1) !important;
}

.home_sports_menu {

}

.home_sports_menu ul {
	padding: 0 0 5px 0;
	margin: 0;
	border-bottom: 1px solid #1B1D22;
}

.home_sports_menu ul li {
	display: inline-block;
	list-style: none;
	width: calc(20% - 4px);
}

.home_sports_menu ul li a {
	display: block;
	color: #656565;
	font-size: 13px;
	padding: 0 8px;
	text-align: center;
}

.home_sports_menu ul li a i {
	display: block;
	text-align: center;
	font-size: 30px;
	margin-bottom: -8px;
}

.hsm a.active {
	color: #E10600;
}

.nomargintop {
	margin-top: 0 !important;
}

.cupom_concluido {
	display: none;
}

.btn-more {
	color: #101114 !important;
    font-weight: 500 !important;
}

button:focus { outline: 0 !important; }

.odds_table #sendBet:not(.bg-success) {
    color: #fff !important;
}

.odds_table #sendBet.bg-success {
    color: #000 !important;
    font-weight: bold;
    background: #E10600 !important;
    border-color: #E10600 !important;
}

.matches-table #sendBet.bg-success {
    color: rgba(0, 0, 0, .9) !important;
    font-weight: bold;
    background: #e4e4e4 !important;
    border-color: #e4e4e4 !important;
}

.matches-table #sendBet.bg-success span {
	color: #FFD2D0;
}

.btn-primary {
    background-color: #E10600 !important;
    border-color: #E10600 !important;
}

.btn-outline-primary {
    color: #E10600 !important;
    border-color: #E10600 !important;
}

.top-mobile-user-buttons {
	text-align: right;
    padding: 11px 0;
}

.tvcard {
	margin-top: 1px;
}

.tvcard video {
	pointer-events: none !important;
}

.tvcard video::-webkit-media-controls-start-playback-button {
    display: none !important;
}

.tvcard a {
	padding: 0 !important;
}

.container:not(.container-default) {
	width: 100% !important;
	max-width: 100% !important;
}

.shadow {
	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
}

.card {
	border: 0 !important;
	/* -webkit-box-shadow: 0px 0px 5px 0px rgb(0 0 0 / 75%);
    -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
    box-shadow: 0px 0px 5px 0px rgb(0 0 0 / 75%); */
}

.card-header {
	border-radius: 0 !important;
	color: #FFF !important;
	background: #101114 !important;
	border-bottom: 3px solid #E10600 !important;
	padding: 5px 10px !important;
    font-size: 13px;
    text-transform: uppercase;
}

.btn-flat {
	border-radius: 0 !important;
}

.btn-default {
	background: #f2f2f2 !important;
	color: #446376 !important;
	border-color: #e4dbdb !important;
}

.btn-black {
	background: #E10600 !important;
	border-color: #E10600 !important;
	color: #FFFFFF !important;
	font-weight: 400 !important;
}

.btn-red {
	background: #101114 !important;
	border-color: #101114 !important;
	color: #FFF !important;
}

.btn-33 {
	width: 33.3% !important;
	float: left;
}

.feat-odds {
	overflow: auto;
	border-top: 2px solid #E10600;
    margin: -1px;
}

.sh-menu {
	padding: 0;
	margin: 0;
}

.sh-menu li {
	list-style: none;
	display: inline-block;
}

.sh-menu li a {
	display: block;
	color: rgba(255, 255, 255, .9);
    font-size: 13px;
    padding: 14px 10px;
}

.sh-menu li a.active {
	background: #E10600 !important;
	color: #FFFFFF !important;
}

#header {
	background: #17181C;
	border-top: 2px solid #22252A;
	padding: 5px 0;
}

#header .open-mobile-menu {
	padding: 4px 5px !important;
}

#help .open-mobile-submenu a i {
	margin-bottom: 1px !important;
}

#sidecoupon {
	background: #101114;
    padding: 20px 10px;
    color: rgba(255, 255, 255, .7);
    font-size: 13px;
    text-align: center;
}

.sc-title {
	background: rgba(0, 0, 0, .3);
    font-size: 15px;
    color: #ffffffc9;
    padding: 10px;
    text-align: center;
}

.logo a {
	display: block;
    margin: 8px 0;
}

.logo img {
	max-width: 135px;
}

.menu {

}

.menu ul {
	padding: 10px 0;
	margin: 0;
}

.menu ul li {
	list-style: none;
	display: inline-block;
}

.menu ul li a {
	display: block;
	padding: 8px 15px;
	color: #FFF;
	font-size: 13px;
	text-transform: uppercase;
	font-weight: 500;
    border-radius: 50px;
}

.menu ul li a.active {
	background: rgba(0, 0, 0, .2);
}

#help {
	background: #1F2126;
	/* background: linear-gradient(286deg, rgba(38,66,197,1) 17%, rgba(17,149,243,1) 89%); */
}

.submenu {

}

.submenu ul {
	padding: 0;
	margin: 0;
}

.submenu ul li {
	list-style: none;
	display: inline-block;
}

.submenu ul li a {
	display: block;
	padding: 8px 20px;
	color: rgb(255 255 255 / 58%);
	font-size: 15px;
	font-weight: 400;
}

.submenu ul li a i {
    display: block;
    text-align: center;
    font-size: 24px;
    margin-bottom: -3px;
}

.live-top-icon {
	margin-bottom: 6px !important;
    font-size: 16px !important;
}

.right-top-buttons {
	padding-top: 14px;
	text-align: right;
}

.right-top-buttons .btn {
	font-weight: 300;
}

.box-shadow {
	-webkit-box-shadow: 0px 1px 5px 0px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px 1px 5px 0px rgba(0,0,0,0.75);
	box-shadow: 0px 1px 5px 0px rgba(0,0,0,0.75);
}

#home-featured {
	padding: 20px 0;
}

.feat-item {
	margin: 15px 0;
	vertical-align: top;
    font-weight: 400;
    border: none;
    -webkit-box-shadow: 0 1px 3px 1px rgba(31,37,41,.2);
    box-shadow: 0 1px 3px 1px rgba(31,37,41,.2);
    background-color: #fff;
    border-radius: .25rem;
    background-size: cover;
}

.feat-link {
    background: #17181C;
    color: #FFF;
	display: block;
    padding: 5px 10px;
    margin: -1px;
}

.feat-link:hover {
	color: #7391a3;
}

.feat-header {
	font-size: 12px;
}

.feat-match {
	overflow: auto;
	padding: 15px 0;
}

.t, .x { float: left; }
.t {
	padding: 7px 0;
	width: 30%;
	font-size: 14px;
	font-weight: bold;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    overflow: hidden;
    vertical-align: middle;
    max-height: 2.125em;
    line-height: 1.1em;
    word-wrap: normal;
}

.x {
	width: 40%;
	text-align: center;
}

.feat-match img {
	max-width: 30px;
}

#banner {
	text-align: center;
	margin: 0;
	overflow: hidden;
    background: #000;
    border-bottom: 1px dashed #E10600;
}

#banner .container {
	max-width: 100% !important;
	width: 100% !important;
	padding: 0 !important;
}

#banner img {
	width: 100%;
}

.odds_table {
}

.odds_table .odds a {
	padding-left: 0px !important;
    padding-right: 0px !important;
    font-size: 12px;
    min-width: 45px !important;
}

.odds_table::-webkit-scrollbar-track{
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
	background-color: #F5F5F5;
}

.odds_table::-webkit-scrollbar{
	width: 6px;
	background-color: #F5F5F5;
}

.odds_table::-webkit-scrollbar-thumb{
	background-color: #535353;
}

.odds_table ul {
	margin: 0;
	padding: 0;
}

.odds_table ul li:nth-child(odd):not(.match_divider) {
    background: #00000026;
}

.odds_table ul li {
	list-style: none;
	background: rgb(0 0 0 / 4%);
	padding: 0 5px;
	margin: 3px 0;
}

.odds_table .match_divider {
	color: #FFF;
    padding: 25px 0 3px 0;
    background: #101114;
    cursor: pointer;
}

.odds_table .match_divider .flags {
	margin-top: -3px;
}

.odds_table .odds {
	float: right;
    margin-top: -54px;
    position: relative;
    z-index: 10;
}

.odds_table .match_more_options_link {
	color: #000;
	line-height: 18px;
	display: block;
	padding: 13px 0;
}

.odds_table .match_more_options_link:hover {
	color: #000;
	cursor: pointer;
}

.odds_table .match_more_options_link b {
	font-weight: 400;
	display: block;
    font-size: 13px;
}

.odds_table .match_info {
	font-size: 12px;
    color: rgba(255, 255, 255, .5);
    float: left;
    padding: 8px 10px 8px 8px;
}

.live-card-home {
	padding: 0 !important;
}

.live-card-home a {
	display: block;
	padding: 1.25rem;
	color: #000;
}

.text-red { color: #E10600 !important; }

.blink {
  animation: blinker 1s linear infinite;
}

@keyframes blinker {  
  50% { opacity: 0; }
}

.odds-card {
	padding: 0 !important;
	margin-top: -3px;
}

.banner-card {
	margin: 0 0 15px 0;
}

.banner-card img {
	max-width: 100%;
}

#footer {
	background: #17181C;
    padding: 20px 0;
    margin-top: 30px;
    color: #FFF;
    text-align: center;
    border-top: 5px solid #E10600;
}

#footer .flogo img {
	max-width: 200px;
	margin-bottom: 40px;
}

#review-bet {
	cursor: pointer;
	color: rgba(0, 0, 0, .6);
}

#coupon {
	position: fixed;
    bottom: 20px;
    right: 20px;
    text-align: right;
    max-height: 90%;
    z-index: 1000;
    overflow: auto;
}

#coupon::-webkit-scrollbar-track
{
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
	background-color: #F5F5F5;
}

#coupon::-webkit-scrollbar
{
	width: 6px;
	background-color: #F5F5F5;
}

#coupon::-webkit-scrollbar-thumb
{
	background-color: #535353;
}

#coupon .btn-coupon {
	color: #FFF;
	background: #000000;
	font-size: 15px !important;
	width: 100%;
	padding: 15px;
	text-align: left;
}

#coupon .btn-coupon #coupon-qtd {
    background: #E10600;
    padding: 3px 7px;
    border-radius: 50px;
    font-size: 12px;
    margin-right: 10px;
    font-weight: bold;
    color: #000000;
}

#coupon .btn-coupon #coupon-odd {
	float: right;
    font-weight: 300;
    font-size: 12px;
    margin: 3px 0 0 0;
}

#coupon .coupon-subheader {
	background: #f0f0f0;
    text-align: left;
    margin-top: -3px;
}

#coupon .coupon-subheader a {
	font-size: 13px;
    padding: 16px 5px 13px 5px;
    color: #000000;
    border-bottom: 1px solid #cecece;
    display: block;
}

#couponContent {
	background: #FFF;
	text-align: left;
}

.coupon-odd-return {
    width: 50%;
    float: left;
    text-align: left;
    padding: 5px;
    color: #545454;
}

#couponContent .box-title {
	font-size: 16px;
    font-weight: bold !important;
    margin: 0;
}

#couponContent .box-body p {
	margin: 0;
    font-size: 12px;
}

#couponContent .box-header a {
	color: #E10600;
    margin: -20px 5px 0 0;
    position: relative;
}

#couponContent .coupon-item {
	padding: 5px;
	color: #404040;
	background: #e4e4e4;
    border-bottom: 1px solid #c3c3c3;
}

.box-finish-coupon {
	background: #FFF;
}

.box-finish-coupon .col-btn-coupon {
	padding: 0 !important;
}

.col-btn-coupon a {
	border-radius: 0 !important;
}

.padding5 {
	padding: 5px;
}

.noMargin {
	margin: 0 !important;
}

#coupon-content {
	display: none;
}

.live-var-up {
    background: transparent !important;
    background-color: transparent !important;
    border-color: #51fe79 !important;
    color: #51fe79 !important;
	animation: blinklive 1s linear !important;
}

.live-var-down {
    background: transparent !important;
    background-color: transparent !important;
    border-color: #f33636 !important;
    color: #f33636 !important;
	animation: blinklive 1s linear !important;
}

@keyframes blinklive {  
  50% { opacity: 0.5; }
}

@keyframes pulse {
	0% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.7);
	}

	70% {
		transform: scale(1);
		box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
	}

	100% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
	}
}

#modal-review-bet .modal-content, #modal-options .modal-content, #modal-login .modal-content {
	background: #101114;
    border: 3px solid #FF2A1F;
	color: #FFF;
}

#modal-review-bet .modal-title, #modal-options .modal-title, #modal-login .modal-title {
	font-weight: 300 !important;
}

#modal-review-bet div.btn {
	font-weight: 300;
    border-radius: 0;
}

#modal-review-bet .media-body strong {
	font-weight: 300;
}

.euroinputs input, .euroinputs select {
	border-radius: 0;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .3) !important;
    color: #FFF !important;
}

.euroinputs select option {
	background: #17181C;
}

.euroinputs input:focus, .euroinputs select:focus {
    background: rgba(255, 255, 255, .2) !important;
    border: 1px solid rgba(255, 255, 255, .3) !important;
    box-shadow: none !important;
}

#modal-review-bet input, #modal-login input {
	border-radius: 0;
    background: rgba(255, 255, 255, .1);
    color: #FFF !important;
    font-size: 13px;
    border: 1px solid rgba(255, 255, 255, .2)
}

#modal-login input {
	margin: 3px 0;
}

#modal-review-bet input::placeholder, #modal-login input::placeholder, .euroinputs input::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: white !important;
  opacity: 1 !important; /* Firefox */
}

#modal-review-bet input:-ms-input-placeholder, #modal-login input:-ms-input-placeholder, .euroinputs input:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: white !important;
}

#modal-review-bet input::-ms-input-placeholder, #modal-login input::-ms-input-placeholder, .euroinputs input::-ms-input-placeholder { /* Microsoft Edge */
  color: white !important;
}

#modal-review-bet p {
	margin: 0 !important;
}

#modal-review-bet .hover-primary {
	color: #FFF;
}

#modal-review-bet .media {
	margin-bottom: 8px;
}

#modal-review-bet .btn-pure {
	border-radius: 0 !important;
}

.alert { border-radius: 0 !important; }

#modal-review-bet .alert, #loadingData .alert {
	border-radius: 0 !important;
	font-size: 14px;
}

#modal-review-bet .alert h4 {
	font-size: 16px;
}

#modal-review-bet .btn-group .btn {
	border-radius: 0 !important;
}

#modal-options .betNameList {
	background: #17181C !important;
}

#modal-options .btn-default {
    font-size: 14px;
    text-align: left;
    border: 1px solid rgba(0, 0, 0, .2);
    border-radius: 0;
}

#modal-options .btn-default:not(.bg-success) {
    background: #FFF !important;
    color: #FFF;
}

#modal-options .btn-default.bg-success {
	background: #E10600 !important;
	color: #17181C !important;
	font-weight: bold;
}

#modal-options .li_inline_odds {
	display: none;
}

.country-divider {
    background: #E10600;
    background: linear-gradient(286deg, rgba(38,66,197,1) 17%, rgba(17,149,243,1) 89%);
    color: #FFF;
    font-size: 17px;
    padding: 10px;
}

/*  ------------------- LIVE TRACKER ------------------- */
.live-tracker {
    border: 5px solid #465161;
}

.no-padding {
    padding: 0 !important;
}

.no-padding table {
    margin-top: -2px;
}

.tracker-icon {
    background: url(/cdn/zlassets/images/trico.svg);
    border-top: 1px solid transparent;
    border-bottom: 1px solid transparent;
    height: 20px;
    width: 20px;
    background-color: #333;
    background-repeat: no-repeat;
    background-size: 17px;
    display: inline-block;
}

.live-tracker {
    background: url(/cdn/zlassets/images/livesoccerbg.jpg) center center;
    background-size: cover;
    padding: 30px;
}

.tracker {
    background: #333;
    color: #c7c7c7;
    margin: 0 auto;
    max-width: 450px;

    -webkit-box-shadow: 0px 6px 58px -4px rgba(0,0,0,1);
    -moz-box-shadow: 0px 6px 58px -4px rgba(0,0,0,1);
    box-shadow: 0px 6px 58px -4px rgba(0,0,0,1);
}

.tracker-padding {
    padding: 5px 10px;
}

.trico-corner { background-position: 2px 3px; }
.trico-red { background-position: 2px -57px; }
.trico-yellow { background-position: 2px -27px; }
.trico-cfora { background-position: 1px -177px; }
.trico-gols { background-position: 2px -236px; }

.tracker-t1, .tracker-t2 {
    background: #404040;
    padding: 10px !important;
}

.tracker-t1 .tracker-icon, .tracker-t2 .tracker-icon {
    background: transparent !important;
    text-align: center;
}

.tracker-yellow {
    color: #FF6B63 !important;
    font-weight: bold;
}

.tracker-t2 {
    border-top: 1px solid rgba(255, 255, 255, .2);
}

.tracker-update {
    text-align: center;
    padding: 5px;
}

.tracker-signal {
    color: #E83838 !important;
}

.liveside-info {
    font-weight: bold;
    color: #DEDEDD;
}

.liveside-tracker {
    font-size: 10px;
    text-transform: uppercase;
    color: #DEDEDD;
}

.liveside-tracker i {
    color: #E83838 !important;
}

#liveMatches {
    overflow: auto;
}
/*  ------------------- LIVE TRACKER ------------------- */

.internal-page {
	position: relative;
	min-height: 60vh;
	margin-top: 30px;
	margin-top: 0 !important;
}

.card-list {
	padding: 0;
	margin: 0;
}

.card-list li {
	list-style: none;
	display: block;
}

.card-list li a {
	display: block;
    padding: 8px 0;
    border-bottom: 1px solid rgb(255 255 255 / 6%);
    color: #666;
}

.topcredit {
	font-weight: bold;
}

#accordion .card {
	background: transparent !important;
	margin-bottom: 15px
}

.btn-xs {
	font-size: 10px !important;
    padding: 3px 5px !important;
}

.coupon-header {
    padding: 5px;
    border: 1px dashed rgba(0, 0, 0, .2);
    color: #000 !important;
    font-size: 13px;
}


.mybet_item {
    margin: 5px 0;
    padding-bottom: 10px;
    border-bottom: 1px dashed rgba(0, 0, 0, .2);
}

.my_bet_item_header {
	cursor: pointer;
    font-size: 13px;
    padding: 10px;
}

.mybet_item_title {
    font-weight: bold;
}

.mybet_item_title b {
	color: #FF6B63 !important;
	font-weight: 500 !important;
}

.mybet_item_info {
	font-size: 13px;
}

.mybet_item_info b.odd {
    color: #FF6B63;
    margin: 0 5px;
}

#matches_table.table td, #matches_table.table th {
	border-top: 0 !important;
	color: #FFFFFF;
}

#matches_table p {
	margin: 0 !important;
	font-size: 12px;
}

#matches_table b {
	display: block;
}

table#matches_table td .event {
	margin: 0;
	font-size: 13px;
	font-weight: 300;
}

table#matches_table th {
    font-weight: 300;
    font-size: 14px;
}

.main-odds-live {
    float: right;
    margin-top: -70px;
}

.submenu .mobile-only a:hover, .submenu .mobile-only a:active, .menu .mobile-only a:hover, .menu .mobile-only a:active {
	color: #FFF !important
}

.cashout {
	display: none;
}

.btn-cashout {
	background: #E10600 !important;
	border-radius: 0 !important;
    color: #111 !important;
}

.btn-cashout b {
	color: rgba(0, 0, 0, .7) !important;
}

.main-feat .x img {
	display: initial !important;
}

.main-feat .slick-arrow {
	display: none !important;
}

.main-feat .slick-dots {
	padding: 0 !important;
	margin: 0 auto;
	text-align: center;
}

.main-feat .slick-dots li {
	list-style: none;
	display: inline-block;
}

.main-feat .slick-dots li button {
    background: #515e74;
    display: block;
    margin: 0 5px;
    content: '';
    color: #FFF;
    font-size: 0;
    border: 0;
    padding: 5px;
    border-radius: 10px;
    outline: none !important;
}

.main-feat .slick-dots li.slick-active button {
	background: #748095 !important;
}

.sidecard-margin {
	margin-top: 20px;
}

.card-body {
	background: #17181C;
}

.footer-menu {
	max-width: 700px !important;
    margin: 10px auto;
    padding: 15px 0;
    border: 1px solid rgba(255, 255, 255, .2);
    padding: 0 15px;
    border-radius: 8px;
    overflow: hidden;
    background: #17181C;
}

.fm-title {
	background: #000;
}

.footer-menu ul {
	padding: 0;
	margin: 0;
}

.footer-menu ul li {
	list-style: none;
}

.footer-menu ul li a {
	color: #FFF;
    font-weight: 300;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    display: block;
    padding: 10px;
    text-align: left;
}

.fbanner img {
	max-width: 100%;
}

.slide-nav {
	background: transparent;
	border: 0;
    font-size: 31px;
    color: #E10600;
    top: 35%;
    position: absolute;
}

.slidePrev {
	left: -8px;
}

.slideNext {
	right: -8px;
}

#getLiveSignals tr:hover {
	color: inherit !important;
}

@media (min-width: 992px) {
	.mobile-only {
		display: none !important;
	}
}

@media (max-width: 991px) {

	#coupon {
		bottom: 60px !important;
    	right: 0 !important;
	}

	.desktop-only {
		display: none !important;
	}

	.internal-page {
		margin-top: 15px !important;
	}

	.breadcumbs {
		overflow: auto;
		white-space: nowrap;
	}

	#col-sidebar { display: none; background: #17181C; }

	.logo a {
	    margin: 10px 0 !important;
	}

	.logo img {
	    margin: -5px 0 0 0;
	    position: relative;
	    z-index: 10;
	}

	.menu ul {
		display: none;
		background: #000000;
	    z-index: 100;
	    position: fixed;
	    left: 0;
	    right: 0 !important;
	    bottom: 58px;
	    top: 0;
	    padding-top: 0 !important;
	    background: rgb(0 0 0 / 67%);
	    backdrop-filter: blur(8px);
	    -webkit-backdrop-filter: blur(8px)
	}

	.menu ul li {
		display: block !important;
	}

	.menu ul li a {
		font-weight: 400 !important;
	}

	.right-top-buttons {
	    padding: 10px !important;
	    position: absolute !important;
	    text-align: center !important;
	}

	.submenu {
		overflow: auto;
    	white-space: nowrap;
	}

	.submenu li {
		border-bottom: 1px dashed rgba(255, 255, 255, .2);
		text-align: center;
	}
}

@media (min-width: 769px) {
	#coupon {
		max-width: 400px !important;
		right: calc(50% - 200px) !important;
		width: 100%;
		overflow: hidden;
	}

	.odds_table .match_more_options_link b {
		font-size: 16px !important;
	}

	.subheader-mobile-trigger { display: none !important; }
}

@media (max-width: 767px) {
	.banner-card {
		display: none !important;
	}

	#subheader { padding: 5px 0; }

	.sh-menu {
		display: block;
	    overflow: auto;
		-ms-overflow-style: none;  /* IE and Edge */
		scrollbar-width: none;  /* Firefox */
		position: absolute;
	    background: #0B0C0E;
	    z-index: 1000;
	}

	.sh-menu li:not(.subheader-mobile-trigger) {
		display: none;
	}

	.sh-menu li a {
		padding: 10px !important;
	}

	.mobile-flow {
		overflow: scroll;
	    height: 90vh;    
	    padding-top: 12px;
		-ms-overflow-style: none;  /* IE and Edge */
		scrollbar-width: none;  /* Firefox */
	}

	.mobile-flow::-webkit-scrollbar, .sh-menu::-webkit-scrollbar {
		display: none;
	}

	.mobile-bottom-margin { margin-bottom: 20px; }
}

@media (max-width: 575px) {

	.t, .x {
		width: 100% !important;
		float: none !important;
		text-align: center !important;
	}

	.matches-table .odds-table-btn:not(.two) {
		width: 100% !important;
	}

	.matches-table .odds-table-btn {
		text-align: left !important;
	}

	.matches-table .odds-table-btn span {
		float: right;
	}

	.feat-header {
		text-align: center;
		text-overflow: ellipsis;
	    white-space: nowrap;
	    overflow: hidden;
	}

	.feat-header div {
		float: none !important;
	}

	.feat-odds a {
	    font-size: 13px;
	}

	.odds_table .odds {
		margin-top: -50px !important;
		padding-left: 5px !important;
	}
	.caption {
		display: block;
	    text-align: center;
	    position: initial !important;
	    margin: 0 !important;
	}
}

@media (max-width: 565px) {
	#getLiveSignals .btn {
		font-size: 12px !important;
		padding: 7px !important;
	}

	#getLiveSignals td b {
		font-size: 13px !important;
	}

	#getLiveSignals .event {
		font-size: 9px !important;
	}

	#getLiveSignals .live_realtime_update {
		font-size: 11px !important;
	}

	#getLiveSignals .main-odds-live {
		margin-top: -50px !important;
	}

	#header .open-mobile-menu {
		margin-top: 5px !important;
	}

	.submenu .open-mobile-submenu:not(.mobile-nologin-sports) {
		text-align: left !important;
		padding: 8px 0 !important;
	}

	.submenu ul li .open-mobile-submenu:not(.mobile-nologin-sports)  i {
		text-align: left !important;
		margin-left: 17px !important;
	}

	.right-top-buttons {
		text-align: right !important;
		position: absolute !important;
	    max-width: 70% !important;
	    right: 0;
	    z-index: 1;
	}
}

.mobile-nologin-sports {
	text-align: center !important;
}

.mobile-nologin-sports i {
	text-align: center !important;
	margin: 0 !important;
}

#mobmenu {
	background: #101114;
	border-top: 2px solid #E10600;
	padding: 5px 0;
	position: fixed;
    bottom: 0;
    z-index: 2000;
    width: 100%;
}

#mobmenu a {
	color: rgb(255 255 255 / 78%);
    display: block;
    padding: 5px;
    text-align: center;
    font-size: 13px;
}

#mobmenu a i {
    display: block;
    text-align: center;
    font-size: 16px;
    margin-bottom: 3px;
    color: rgba(255, 255, 255, .3);
}

#mobmenu a img {
	width: 27px;
    display: block;
    margin: -5px auto -3px auto;
    opacity: 0.6;
}

#mobmenu #coupon-qtd {
	background: #E10600;
    color: #101114 !important;
    padding: 2px 5px;
    border-radius: 50px;
    font-size: 9px;
    position: absolute;
    margin-top: -15px;
}

#mobmenu .mobile-coupon-bottom {
	background: #E10600;
    padding: 20px 0;
    margin: -13px 0 -17px 0px;
    -webkit-border-top-left-radius: 20px;
    -webkit-border-top-right-radius: 20px;
    -moz-border-radius-topleft: 20px;
    -moz-border-radius-topright: 20px;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    color: #000;
}

#mobmenu .mobile-coupon-bottom i {
	color: #000 !important;
}

#mobmenu .mobile-coupon-bottom #coupon-qtd {
	background: #1F2126 !important;
    color: #ffffff !important;
}

.mobmenu-header {
	border-top: 3px solid #E10600;
	padding: 1px 7px;
	margin-bottom: 10px;
}

.mobmenu-header .top-mobile-user-buttons {
	float: right;
    margin-right: 10px;
}

.mobmenu-header img {
	max-width: 130px !important;
    margin-top: 1px;
}

.mobmenu-header a {
	display: inline-block !important;
    padding: .25rem .5rem !important;
    font-size: .875rem !important;
    line-height: 1.5;
}

.manual {
	padding: 0;
	margin: 0;
}

.manual li {
	list-style: none;
}

.manual .collapsible-header {
	background: #E10600;
	background: linear-gradient(286deg, rgba(38,66,197,1) 17%, rgba(17,149,243,1) 89%);
	color: #263238;
	padding: 8px;
}

.manual .collection-item {
	padding: 20px 10px;
}

.modal .close {
	opacity: 1 !important;
}

.modal .close span {
	color: #FF2A1F !important;
	text-shadow: none !important;
}

#reviewMatchesList .media {
	padding: 10px 0;
}

#reviewMatchesList .media-body {
	padding: 0 10px;
}

#reviewMatchesList .media-body .float-right {
	margin-top: 10px;
	font-weight: 300 !important;
}

#reviewMatchesList .media:nth-child(odd) {
	background: #00000036 !important;
}

.caption {
    font-size: 9px;
    color: rgba(255, 255, 255, .6) !important;
    display: block;
	margin-top: 0px;
    margin-bottom: 3px;
}

.slider .slick-arrow { display: none !important; }


.slider {
	padding: 0 !important;
}

.slider .slick-dots {
	padding: 0 !important;
	margin: 0;
	text-align: center;
	margin-top: -29px;
	margin-bottom: 5px;
    z-index: 1000;
    position: relative;
}

.slider .slick-dots li {
	list-style: none;
	display: inline-block;
}

.slider .slick-dots li button {
    background: #E10600;
    display: block;
    margin: 0 5px;
    content: '';
    color: #FFF;
    font-size: 0;
    border: 0;
    padding: 5px;
    border-radius: 10px;
    outline: none !important;
}

.slider .slick-dots li.slick-active button {
	background: #607c00 !important;
}

.odds-card form {
	margin-bottom: -8px;
}

.odds-card form input {
	border-radius: 0;
    background: rgba(0, 0, 0, .3);
    border: 0;
}

/* =====================================================================
   THEMEPRO - camada de identidade (carregada depois de base.css)
   Inspiracao: sportsbook escuro com acento vermelho. Sem ativos da marca.
   ===================================================================== */

:root {
    --tp-accent: #E10600;
    --tp-accent-hover: #FF2A1F;
    --tp-accent-press: #B30500;
    --tp-accent-soft: rgba(225, 6, 0, .14);
    --tp-accent-line: rgba(225, 6, 0, .45);
    --tp-bg: #101114;
    --tp-bg-deep: #0B0C0E;
    --tp-surface: #17181C;
    --tp-surface-2: #1F2126;
    --tp-surface-3: #262A31;
    --tp-border: rgba(255, 255, 255, .08);
    --tp-border-strong: rgba(255, 255, 255, .14);
    --tp-text: #F5F6F7;
    --tp-text-muted: #9AA0A6;
    --tp-text-dim: #6E747C;
    --tp-live: #22C55E;
    --tp-down: #EF4444;
    --tp-radius-sm: 6px;
    --tp-radius: 8px;
    --tp-radius-lg: 12px;
    --tp-shadow: 0 6px 24px rgba(0, 0, 0, .35);
}

/* ---------- Base ---------- */
html {
    background: var(--tp-bg);
}

body {
    background: var(--tp-bg) !important;
    color: var(--tp-text);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    color: var(--tp-text);
}

a {
    color: var(--tp-accent);
}

a:hover {
    color: var(--tp-accent-hover);
}

::selection {
    background: var(--tp-accent);
    color: #FFF;
}

.text-muted, .text-secondary {
    color: var(--tp-text-muted) !important;
}

.text-danger, .text-red {
    color: var(--tp-accent) !important;
}

.text-success {
    color: var(--tp-live) !important;
}

hr {
    border-top-color: var(--tp-border);
}

* {
    scrollbar-color: var(--tp-surface-3) transparent;
    scrollbar-width: thin;
}

::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: transparent;
}

::-webkit-scrollbar-thumb {
    background: var(--tp-surface-3);
    border-radius: 20px;
}

::-webkit-scrollbar-thumb:hover {
    background: #343A44;
}

.odds_table::-webkit-scrollbar-track,
#coupon::-webkit-scrollbar-track {
    background-color: transparent !important;
    -webkit-box-shadow: none !important;
}

.odds_table::-webkit-scrollbar,
#coupon::-webkit-scrollbar {
    background-color: transparent !important;
}

.odds_table::-webkit-scrollbar-thumb,
#coupon::-webkit-scrollbar-thumb {
    background-color: var(--tp-surface-3) !important;
    border-radius: 20px;
}

/* ---------- Topbar / login ---------- */
#subheader {
    background: var(--tp-bg-deep) !important;
    border-bottom: 1px solid var(--tp-border);
}

.sh-menu li a {
    color: var(--tp-text-muted);
    font-size: 12px;
    letter-spacing: .02em;
    padding: 12px 10px;
}

.sh-menu li a:hover,
.sh-menu li a.active {
    color: var(--tp-text);
}

.sh-menu li a.active {
    background: transparent !important;
    color: var(--tp-accent) !important;
    box-shadow: inset 0 -2px 0 var(--tp-accent);
}

.inline-rounded-login-form input {
    background: var(--tp-surface-2);
    color: var(--tp-text);
    border: 1px solid var(--tp-border) !important;
    border-radius: 50px !important;
    padding: 7px 14px;
    font-size: 12px;
    transition: border-color .18s ease, background .18s ease;
}

.inline-rounded-login-form input::placeholder {
    color: var(--tp-text-dim);
}

.inline-rounded-login-form input:focus {
    background: var(--tp-surface-3);
    border-color: var(--tp-accent-line) !important;
}

.inline-rounded-login-form .btn {
    border-radius: 50px !important;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .06em;
    padding: 6px 16px;
}

.inline-rounded-login-form .btn-signup {
    background: transparent !important;
    border: 1px solid var(--tp-accent) !important;
    color: var(--tp-accent) !important;
}

.inline-rounded-login-form .btn-signup:hover {
    background: var(--tp-accent-soft) !important;
    border-color: var(--tp-accent-hover) !important;
    color: var(--tp-accent-hover) !important;
}

.btn-black {
    background: var(--tp-accent) !important;
    border-color: var(--tp-accent) !important;
    color: #FFF !important;
    font-weight: 600 !important;
}

.btn-black:hover {
    background: var(--tp-accent-hover) !important;
    border-color: var(--tp-accent-hover) !important;
}

.btn-top-user {
    background: var(--tp-surface-2) !important;
    border: 1px solid var(--tp-border) !important;
    color: var(--tp-text) !important;
    border-radius: 50px !important;
    padding: 5px 14px !important;
}

.btn-top-user:hover {
    border-color: var(--tp-accent-line) !important;
}

.user-login-top-icon {
    color: var(--tp-accent);
}

/* ---------- Header / navegacao ---------- */
#header {
    background: var(--tp-surface) !important;
    background-image: linear-gradient(180deg, #1A1C21 0%, var(--tp-surface) 100%) !important;
    border-top: 0 !important;
    border-bottom: 1px solid var(--tp-border);
    padding: 8px 0;
    position: relative;
    z-index: 50;
}

#header::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    background: linear-gradient(90deg, var(--tp-accent) 0%, rgba(225, 6, 0, 0) 55%);
    opacity: .9;
    pointer-events: none;
}

#header .logo a {
    margin: 4px 0;
}

#header .logo img {
    max-height: 42px;
    max-width: 150px;
    width: auto;
}

.menu ul {
    padding: 4px 0;
}

.menu ul li a {
    position: relative;
    border-radius: var(--tp-radius-sm) !important;
    padding: 9px 14px;
    color: var(--tp-text-muted);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .05em;
    transition: color .18s ease, background .18s ease;
}

.menu ul li a:hover {
    color: var(--tp-text);
    background: rgba(255, 255, 255, .04);
}

.menu ul li a.active {
    background: transparent !important;
    color: var(--tp-accent) !important;
}

.menu ul li a.active::after {
    content: "";
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 2px;
    height: 2px;
    border-radius: 2px;
    background: var(--tp-accent);
}

.menu ul li a .tp-live-dot {
    color: var(--tp-live);
    font-size: 7px;
    vertical-align: middle;
    margin-right: 5px;
    text-shadow: 0 0 6px rgba(34, 197, 94, .8);
    animation: tp-blink 1.6s ease-in-out infinite;
}

.menu ul li.tp-nav-deposit a,
.menu ul li.tp-nav-deposit a:hover {
    background: var(--tp-accent) !important;
    border: 1px solid var(--tp-accent) !important;
    color: #FFF !important;
    margin-left: 8px;
    padding: 9px 16px;
}

.menu ul li.tp-nav-deposit a:hover {
    background: var(--tp-accent-hover) !important;
    border-color: var(--tp-accent-hover) !important;
}

.menu ul li.tp-nav-deposit a::after {
    display: none !important;
}

.megamenu {
    border: 1px solid var(--tp-border) !important;
    border-radius: var(--tp-radius) !important;
    background: var(--tp-surface) !important;
    box-shadow: var(--tp-shadow) !important;
    overflow: hidden;
}

.megamenu .mm-user {
    color: var(--tp-text);
}

.megamenu ul li a {
    color: var(--tp-text-muted);
}

.megamenu ul li a:hover {
    color: var(--tp-accent);
}

.mm-btn-deposit {
    background: var(--tp-accent) !important;
    border-color: var(--tp-accent) !important;
    color: #FFF !important;
    border-radius: var(--tp-radius-sm) !important;
}

/* ---------- Cards / titulos de secao ---------- */
.card {
    background: var(--tp-surface) !important;
    border: 1px solid var(--tp-border) !important;
    border-radius: var(--tp-radius) !important;
    color: var(--tp-text);
    box-shadow: none !important;
    overflow: hidden;
}

.card-header {
    background: var(--tp-surface-2) !important;
    border-bottom: 1px solid var(--tp-border) !important;
    border-left: 3px solid var(--tp-accent) !important;
    color: var(--tp-text) !important;
    font-size: 11px !important;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 10px 12px !important;
    border-radius: 0 !important;
}

.card-body {
    background: transparent;
}

.new-title {
    background: var(--tp-surface-2) !important;
    color: var(--tp-text-muted) !important;
    border-left: 3px solid var(--tp-accent);
    border-bottom: 1px solid var(--tp-border) !important;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 10px 12px;
    border-radius: var(--tp-radius-sm) var(--tp-radius-sm) 0 0;
}

.sports-list {
    background: var(--tp-surface) !important;
    border-radius: 0 0 var(--tp-radius) var(--tp-radius);
    padding: 8px 0;
}

#col-sidebar .sports-list li {
    border-bottom: 1px solid rgba(255, 255, 255, .04) !important;
}

#col-sidebar .sports-list li:last-child {
    border-bottom: 0 !important;
}

.sports-list a {
    color: var(--tp-text) !important;
    font-size: 13px;
    padding: 8px 12px !important;
    border-left: 2px solid transparent;
    transition: background .16s ease, color .16s ease, border-color .16s ease;
}

.sports-list a:hover {
    background: rgba(255, 255, 255, .04);
    color: var(--tp-accent) !important;
    border-left-color: var(--tp-accent);
}

#col-sidebar .sidebar-sport-icon {
    opacity: .35 !important;
}

#col-sidebar .search {
    margin-bottom: 12px;
}

.search input {
    background: var(--tp-surface-2) !important;
    border: 1px solid var(--tp-border) !important;
    border-radius: var(--tp-radius-sm) 0 0 var(--tp-radius-sm) !important;
    color: var(--tp-text) !important;
    height: 38px;
    padding: 8px 12px;
    font-size: 12px;
}

.search input::placeholder {
    color: var(--tp-text-dim);
}

.search button {
    background: var(--tp-surface-2);
    border: 1px solid var(--tp-border);
    border-left: 0;
    color: var(--tp-text-muted);
    border-radius: 0 var(--tp-radius-sm) var(--tp-radius-sm) 0;
}

.search button:hover {
    color: var(--tp-accent);
}

#sports ul li a i {
    color: var(--tp-text) !important;
    background: var(--tp-surface-2);
    border: 1px solid var(--tp-border);
    border-radius: var(--tp-radius) !important;
}

/* ---------- Banners / destaques ---------- */
#slider .carousel-inner,
#slider .carousel-item img {
    border-radius: var(--tp-radius);
}

#slider .carousel-item img {
    display: block;
}

.fe-title {
    background: linear-gradient(180deg, rgba(16, 17, 20, 0) 0%, rgba(16, 17, 20, .92) 45%) !important;
    border-radius: 0 0 var(--tp-radius) var(--tp-radius);
    padding: 28px 12px 10px 12px !important;
}

.fe-title div:not(.fe-sport) {
    font-weight: 700;
}

.fe-sport {
    color: var(--tp-text-muted);
    text-transform: uppercase;
    font-size: 10px;
    letter-spacing: .08em;
}

.featured-events {
    background: var(--tp-surface) !important;
}

/* ---------- Tabela de odds / eventos ---------- */
.odds_table ul li {
    background: transparent !important;
    border-bottom: 1px solid rgba(255, 255, 255, .05);
    border-radius: var(--tp-radius-sm);
    transition: background .16s ease;
}

.odds_table ul li:hover:not(.match_divider) {
    background: rgba(255, 255, 255, .03) !important;
}

.odds_table .match_divider {
    background: var(--tp-surface-2) !important;
    color: var(--tp-text) !important;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    border-radius: var(--tp-radius-sm);
    padding: 8px 10px;
    margin: 10px 0 6px 0;
}

.odds_table .match_more_options_link {
    color: var(--tp-text) !important;
}

.odds_table .match_more_options_link b {
    color: var(--tp-text);
    font-weight: 600;
}

.odds_table .match_more_options_link:hover b {
    color: var(--tp-accent);
}

.odds_table .match_info {
    color: var(--tp-text-dim) !important;
}

.heli-date {
    color: var(--tp-text-dim);
    font-size: 10px;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.heli-title {
    color: var(--tp-text);
    font-size: 13px;
    font-weight: 600;
}

.home-event-list-item {
    border-bottom: 1px solid rgba(255, 255, 255, .05) !important;
}

.live-card-home a {
    color: var(--tp-text) !important;
}

/* ---------- Botoes de odd ---------- */
.btn-odds,
.odds_table .odds a.btn,
.odds-table-btn {
    background: var(--tp-surface-3) !important;
    border: 1px solid rgba(255, 255, 255, .06) !important;
    color: var(--tp-text) !important;
    border-radius: var(--tp-radius-sm) !important;
    font-weight: 600;
    font-size: 12px;
    letter-spacing: .02em;
    transition: background .16s ease, border-color .16s ease, color .16s ease, transform .1s ease;
}

.btn-odds:hover,
.odds_table .odds a.btn:hover,
.odds-table-btn:hover {
    background: var(--tp-accent-soft) !important;
    border-color: var(--tp-accent-line) !important;
    color: var(--tp-accent) !important;
}

.btn-odds:active,
.odds_table .odds a.btn:active {
    transform: scale(.98);
}

.btn-odds.bg-success,
.odds_table #sendBet.bg-success,
.odds-table-btn.bg-success,
.odds_table .odds a.btn.bg-success {
    background: var(--tp-accent) !important;
    border-color: var(--tp-accent) !important;
    color: #FFF !important;
}

.btn-odds.bg-success .caption,
.odds_table #sendBet.bg-success span {
    color: rgba(255, 255, 255, .75) !important;
}

.btn-odds .caption,
.caption {
    color: var(--tp-text-dim) !important;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.btn-odds.bg-success .caption {
    color: rgba(255, 255, 255, .8) !important;
}

.btn-red {
    background: var(--tp-surface-2) !important;
    border: 1px solid var(--tp-border) !important;
    color: var(--tp-text) !important;
    border-radius: var(--tp-radius-sm) !important;
}

.btn-red:hover {
    border-color: var(--tp-accent-line) !important;
    color: var(--tp-accent) !important;
}

.btn-primary {
    background: var(--tp-accent) !important;
    border-color: var(--tp-accent) !important;
    color: #FFF !important;
    font-weight: 600;
    letter-spacing: .04em;
    border-radius: var(--tp-radius-sm) !important;
}

.btn-primary:hover,
.btn-primary:focus {
    background: var(--tp-accent-hover) !important;
    border-color: var(--tp-accent-hover) !important;
    color: #FFF !important;
}

.btn-outline-primary {
    color: var(--tp-accent) !important;
    border-color: var(--tp-accent) !important;
    border-radius: var(--tp-radius-sm) !important;
}

.btn-outline-primary:hover {
    background: var(--tp-accent) !important;
    color: #FFF !important;
}

.btn-flat {
    border-radius: var(--tp-radius-sm) !important;
}

.btn {
    transition: background .16s ease, border-color .16s ease, color .16s ease;
}

.live-var-up {
    border-color: var(--tp-live) !important;
    color: var(--tp-live) !important;
}

.live-var-down {
    border-color: var(--tp-down) !important;
    color: var(--tp-down) !important;
}

/* ---------- Formularios ---------- */
.form-control,
.custom-select,
.site-inputs,
.site-inputs.form-control-md {
    background: var(--tp-surface-2) !important;
    border: 1px solid var(--tp-border) !important;
    border-radius: var(--tp-radius-sm) !important;
    color: var(--tp-text) !important;
    font-size: 13px;
}

.form-control::placeholder {
    color: var(--tp-text-dim);
}

.form-control:focus,
.site-inputs:focus {
    border-color: var(--tp-accent-line) !important;
    box-shadow: 0 0 0 3px var(--tp-accent-soft) !important;
}

.custom-select {
    color: var(--tp-text) !important;
}

.input-disabled {
    background: rgba(255, 255, 255, .05) !important;
    color: var(--tp-text-muted) !important;
}

.euroinputs input,
.euroinputs select,
#modal-review-bet input,
#modal-login input {
    background: var(--tp-surface-2) !important;
    border: 1px solid var(--tp-border) !important;
    border-radius: var(--tp-radius-sm) !important;
    color: var(--tp-text) !important;
}

.euroinputs select option {
    background: var(--tp-surface-2) !important;
}

#modal-review-bet input:focus,
#modal-login input:focus {
    border-color: var(--tp-accent-line) !important;
}

/* ---------- Tabelas ---------- */
.table {
    color: var(--tp-text);
}

.table thead th {
    border-bottom: 1px solid var(--tp-border-strong);
    color: var(--tp-text-muted);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .06em;
    font-weight: 700;
}

.table td,
.table th {
    border-top: 1px solid var(--tp-border);
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, .02);
}

.table-hover tbody tr:hover {
    background-color: rgba(255, 255, 255, .04);
    color: var(--tp-text);
}

.betdetailtr {
    background: var(--tp-surface-2) !important;
}

.breadcumbs {
    background: var(--tp-bg-deep) !important;
    border-bottom: 1px solid var(--tp-border);
}

.breadcumbs ul li a {
    color: var(--tp-text-muted);
    border-bottom-color: transparent;
}

.breadcumbs ul li a.active {
    color: var(--tp-text);
    border-bottom-color: var(--tp-accent);
}

.title-primary,
.divider-4 {
    background: var(--tp-surface-2) !important;
    color: var(--tp-text) !important;
}

.divider-3 {
    background: var(--tp-surface-2) !important;
    border-top: 1px solid var(--tp-border) !important;
    border-left: 3px solid var(--tp-accent);
    color: var(--tp-text-muted) !important;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.divider-2 {
    background: rgba(0, 0, 0, .25) !important;
    color: var(--tp-text-dim) !important;
    text-transform: uppercase;
    letter-spacing: .06em;
}

/* ---------- Modais / alertas ---------- */
.modal-content {
    background: var(--tp-surface) !important;
    border: 1px solid var(--tp-border-strong) !important;
    border-radius: var(--tp-radius-lg) !important;
    color: var(--tp-text);
    box-shadow: var(--tp-shadow);
}

#modal-review-bet .modal-content,
#modal-options .modal-content,
#modal-login .modal-content {
    background: var(--tp-surface) !important;
    border: 1px solid var(--tp-border-strong) !important;
    border-radius: var(--tp-radius-lg) !important;
    color: var(--tp-text);
}

.modal-header,
.modal-footer {
    border-color: var(--tp-border) !important;
}

.modal .close span {
    color: var(--tp-text-muted) !important;
}

#modal-options .betNameList {
    background: var(--tp-surface-2) !important;
}

#modal-options .btn-default:not(.bg-success) {
    background: var(--tp-surface-3) !important;
    border-color: var(--tp-border) !important;
    color: var(--tp-text) !important;
}

.alert {
    border: 1px solid var(--tp-border) !important;
    border-radius: var(--tp-radius-sm) !important;
    background: var(--tp-surface-2);
    color: var(--tp-text);
}

.alert-success {
    border-color: rgba(34, 197, 94, .4) !important;
    background: rgba(34, 197, 94, .12);
    color: #B7F7CE;
}

.alert-danger {
    border-color: rgba(239, 68, 68, .4) !important;
    background: rgba(239, 68, 68, .12);
    color: #FFC9C9;
}

.alert-warning {
    border-color: var(--tp-accent-line) !important;
    background: var(--tp-accent-soft);
    color: #FFD1CE;
}

.badge-primary,
.badge-danger {
    background: var(--tp-accent) !important;
}

.pagination .page-link {
    background: var(--tp-surface-2);
    border-color: var(--tp-border);
    color: var(--tp-text-muted);
}

.pagination .page-item.active .page-link {
    background: var(--tp-accent);
    border-color: var(--tp-accent);
    color: #FFF;
}

/* ---------- Cassino ---------- */
.casino-overlay {
    background: linear-gradient(180deg, rgba(16, 17, 20, 0) 0%, rgba(16, 17, 20, .95) 70%);
}

.casino-overlay b {
    color: var(--tp-text);
}

.casino-img-grid {
    border-radius: var(--tp-radius) var(--tp-radius) 0 0 !important;
}

.img-casino {
    border-radius: var(--tp-radius) !important;
}

/* ---------- Bilhete de apostas (cupom) ---------- */
#coupon .btn-coupon {
    background: var(--tp-surface-2) !important;
    color: var(--tp-text) !important;
    border: 1px solid var(--tp-border-strong);
    border-radius: var(--tp-radius) var(--tp-radius) 0 0;
    font-size: 14px !important;
    font-weight: 600;
    padding: 14px 16px;
    letter-spacing: .02em;
}

#coupon .btn-coupon #coupon-qtd {
    background: var(--tp-accent) !important;
    color: #FFF !important;
    font-weight: 700;
}

#coupon .btn-coupon #coupon-odd {
    color: var(--tp-text-muted);
}

#coupon .coupon-subheader {
    background: var(--tp-surface) !important;
    border-bottom: 1px solid var(--tp-border);
}

#coupon .coupon-subheader a {
    color: var(--tp-accent) !important;
    border-bottom: 0 !important;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .06em;
    padding: 12px 16px;
}

#couponContent {
    background: var(--tp-surface) !important;
    color: var(--tp-text);
}

#couponContent .coupon-item,
.coupon-item {
    background: var(--tp-surface-2) !important;
    color: var(--tp-text) !important;
    border-bottom: 1px solid var(--tp-border) !important;
    border-left: 2px solid var(--tp-accent);
}

.coupon-header {
    background: var(--tp-surface-2);
    border: 1px solid var(--tp-border) !important;
    border-radius: var(--tp-radius-sm);
    color: var(--tp-text) !important;
}

.coupon-odd-return {
    color: var(--tp-text-muted) !important;
}

.coupon-odd-return b {
    color: var(--tp-text);
}

.box-finish-coupon {
    background: var(--tp-surface) !important;
    border-top: 1px solid var(--tp-border);
}

#couponContent .box-header a {
    color: var(--tp-accent) !important;
}

#finish_bet_form_button {
    background: var(--tp-accent) !important;
    border-color: var(--tp-accent) !important;
    border-radius: 0 0 var(--tp-radius) var(--tp-radius) !important;
    padding: 14px;
    letter-spacing: .04em;
}

#finish_bet_form_button:hover {
    background: var(--tp-accent-hover) !important;
}

#finish_bet_form_button .betslip-text-opacity-black {
    color: rgba(255, 255, 255, .75) !important;
}

#sidecoupon {
    background: var(--tp-surface) !important;
    border: 1px solid var(--tp-border);
    border-radius: var(--tp-radius);
}

.sc-title {
    background: var(--tp-surface-2) !important;
    color: var(--tp-text) !important;
    border-left: 3px solid var(--tp-accent);
    text-transform: uppercase;
    letter-spacing: .06em;
    font-size: 12px;
}

/* ---------- Footer / menu mobile ---------- */
#footer {
    background: var(--tp-bg-deep) !important;
    border-top: 1px solid var(--tp-border) !important;
    color: var(--tp-text-muted) !important;
    margin-top: 40px;
    padding: 28px 0;
}

#footer b,
#footer strong {
    color: var(--tp-text);
}

#footer a {
    color: var(--tp-accent);
}

#mobmenu {
    background: var(--tp-surface) !important;
    border-top: 1px solid var(--tp-border) !important;
    padding: 6px 0 calc(6px + env(safe-area-inset-bottom));
    box-shadow: 0 -6px 20px rgba(0, 0, 0, .45);
}

#mobmenu a {
    color: var(--tp-text-muted) !important;
    font-size: 11px;
    letter-spacing: .02em;
}

#mobmenu a i {
    color: var(--tp-text-muted) !important;
    font-size: 17px;
}

#mobmenu a.active,
#mobmenu a:hover {
    color: var(--tp-accent) !important;
}

#mobmenu .mobile-coupon-bottom {
    background: var(--tp-accent) !important;
    color: #FFF !important;
    border-radius: var(--tp-radius) var(--tp-radius) 0 0 !important;
    margin: -16px 0 -8px 0;
    padding: 18px 0 16px 0;
    box-shadow: 0 -4px 16px rgba(225, 6, 0, .35);
}

#mobmenu .mobile-coupon-bottom i {
    color: #FFF !important;
}

#mobmenu .mobile-coupon-bottom #coupon-qtd {
    background: #FFF !important;
    color: var(--tp-accent) !important;
    font-weight: 700;
}

#mobmenu #coupon-qtd {
    background: var(--tp-accent) !important;
    color: #FFF !important;
}

.mobmenu-header {
    border-top: 0 !important;
    border-bottom: 1px solid var(--tp-border);
    background: var(--tp-surface);
}

/* ---------- Live / pulso ---------- */
.fa-circle.text-danger,
.live-icon {
    color: var(--tp-live) !important;
    text-shadow: 0 0 8px rgba(34, 197, 94, .6);
}

.blink {
    animation: tp-blink 1.4s ease-in-out infinite;
}

@keyframes tp-blink {
    0%, 100% { opacity: 1; }
    50% { opacity: .35; }
}

/* ---------- Ajustes responsivos ---------- */
@media (max-width: 991px) {
    #header {
        padding: 4px 0;
    }

    #header::after {
        opacity: .6;
    }

    .menu ul {
        padding: 0;
    }

    .menu ul li a {
        padding: 8px 10px;
        font-size: 11px;
    }

    .card-header,
    .new-title {
        font-size: 10px !important;
    }

    #footer {
        margin-bottom: 62px;
        padding: 20px 0;
    }
}

@media (min-width: 992px) {
    #coupon {
        width: 320px;
    }

    #coupon .btn-coupon {
        border-radius: var(--tp-radius) var(--tp-radius) 0 0;
    }
}

@media (min-width: 1500px) {
    #coupon {
        width: 340px;
    }
}

/* ---------- Reduz movimento ---------- */
@media (prefers-reduced-motion: reduce) {
    .blink,
    .live-var-up,
    .live-var-down {
        animation: none !important;
    }

    .btn,
    .btn-odds,
    .sports-list a {
        transition: none !important;
    }
}

/* =====================================================================
   MOBILE — identidade Betano (<= 991px)
   ===================================================================== */
@media (max-width: 991px) {

    /* ---------- Estrutura ---------- */
    .container {
        padding-left: 12px;
        padding-right: 12px;
    }

    #main {
        padding-top: 10px;
    }

    /* Header desktop some; o <ul> do menu continua existindo como drawer */
    #subheader {
        display: none !important;
    }

    #header {
        height: 0;
        min-height: 0;
        padding: 0 !important;
        margin: 0;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        position: static;
        overflow: visible;
    }

    #header::after {
        display: none !important;
    }

    #header .container {
        padding: 0;
    }

    #header .row {
        margin: 0;
    }

    #header .logo {
        display: none !important;
    }

    #header .menu {
        position: static;
        width: auto;
        max-width: none;
        flex: none;
        padding: 0;
    }

    /* ---------- Topbar mobile ---------- */
    .tp-mobile-topbar {
        position: sticky;
        top: 0;
        z-index: 1000;
        display: flex;
        align-items: center;
        gap: 8px;
        height: 56px;
        padding: 0 12px;
        background: var(--tp-surface);
        border-bottom: 1px solid var(--tp-border);
        box-shadow: 0 4px 16px rgba(0, 0, 0, .35);
    }

    .tp-mb-icon {
        color: var(--tp-text);
        font-size: 19px;
        padding: 8px;
        margin-left: -8px;
        line-height: 1;
    }

    .tp-mb-logo {
        flex: 1 1 auto;
        display: flex;
        align-items: center;
        min-width: 0;
    }

    .tp-mb-logo img {
        max-height: 30px;
        max-width: 118px;
        width: auto;
    }

    .tp-mb-actions {
        display: flex;
        align-items: center;
        gap: 6px;
        flex: 0 0 auto;
    }

    .tp-mb-btn {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        height: 34px;
        padding: 0 12px;
        border-radius: 50px;
        font-size: 12px;
        font-weight: 600;
        letter-spacing: .02em;
        white-space: nowrap;
    }

    .tp-mb-btn-ghost {
        color: var(--tp-text) !important;
        border: 1px solid var(--tp-border-strong);
        background: transparent;
    }

    .tp-mb-btn-accent {
        background: var(--tp-accent);
        border: 1px solid var(--tp-accent);
        color: #FFF !important;
        box-shadow: 0 4px 14px var(--tp-accent-soft);
    }

    .tp-mb-btn-accent:hover {
        background: var(--tp-accent-hover);
        border-color: var(--tp-accent-hover);
        color: #FFF !important;
    }

    /* ---------- Chips de modalidades ---------- */
    .tp-sport-chips {
        position: sticky;
        top: 56px;
        z-index: 990;
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 10px 12px;
        overflow-x: auto;
        white-space: nowrap;
        background: var(--tp-bg);
        border-bottom: 1px solid var(--tp-border);
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    .tp-sport-chips::-webkit-scrollbar {
        display: none;
    }

    .tp-chip {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        flex: 0 0 auto;
        height: 32px;
        padding: 0 12px;
        border-radius: 50px;
        background: var(--tp-surface-2);
        border: 1px solid var(--tp-border);
        color: var(--tp-text-muted) !important;
        font-size: 12px;
        font-weight: 600;
        letter-spacing: .01em;
    }

    .tp-chip i {
        font-size: 13px;
    }

    .tp-chip.active {
        background: var(--tp-accent-soft);
        border-color: var(--tp-accent-line);
        color: var(--tp-accent) !important;
    }

    .tp-chip-live .tp-live-dot {
        color: var(--tp-live);
        font-size: 7px;
        margin-right: 0;
    }

    /* Grid de esportes antigo da home é substituído pelos chips */
    #sports {
        display: none !important;
    }

    /* Sidebar direita (populares no cassino) não aparece no mobile */
    .xl-right-sidebar {
        display: none !important;
    }

    /* ---------- Drawer (menu principal) ---------- */
    #header .menu ul {
        position: fixed !important;
        top: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        right: auto !important;
        width: 86%;
        max-width: 340px;
        background: var(--tp-surface) !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        border-right: 1px solid var(--tp-border);
        padding: 8px 0 calc(90px + env(safe-area-inset-bottom)) !important;
        overflow-y: auto;
        z-index: 1200;
        box-shadow: 8px 0 30px rgba(0, 0, 0, .5);
    }

    #header .menu ul li {
        display: block !important;
    }

    #header .menu ul li a {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 14px 18px !important;
        font-size: 14px !important;
        font-weight: 500 !important;
        letter-spacing: 0 !important;
        color: var(--tp-text) !important;
        border-bottom: 1px solid var(--tp-border);
        border-radius: 0 !important;
    }

    #header .menu ul li a:hover {
        background: rgba(255, 255, 255, .04) !important;
    }

    #header .menu ul li a.active {
        color: var(--tp-accent) !important;
    }

    #header .menu ul li a.active::after {
        display: none !important;
    }

    #header .menu ul li.tp-nav-deposit a {
        margin: 10px 12px !important;
        border: 0 !important;
        border-radius: var(--tp-radius) !important;
        justify-content: center;
    }

    #header .menu ul li.tp-menu-close a {
        color: var(--tp-text-muted) !important;
        text-transform: uppercase;
        font-size: 11px !important;
        letter-spacing: .08em !important;
        border-bottom: 1px solid var(--tp-border-strong);
    }

    .mobmenu-header {
        display: none !important;
    }

    /* Drawer de esportes (sidebar) */
    #col-sidebar.col-sidebar-open {
        left: 0;
        right: auto;
        width: 88%;
        max-width: 340px;
        height: 100%;
        overflow-y: auto;
        background: var(--tp-surface) !important;
        border-right: 1px solid var(--tp-border);
        padding: 12px;
        box-shadow: 8px 0 30px rgba(0, 0, 0, .5);
    }

    #col-sidebar.col-sidebar-open .mobile-flow {
        height: auto;
        overflow: visible;
        padding-top: 0;
    }

    /* ---------- Bottom nav ---------- */
    #mobmenu {
        padding: 0 !important;
    }

    .tp-mobnav {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        background: var(--tp-surface);
        border-top: 1px solid var(--tp-border);
        padding: 6px 0 calc(6px + env(safe-area-inset-bottom));
        box-shadow: 0 -6px 20px rgba(0, 0, 0, .45);
    }

    .tp-mobnav a {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
        padding: 6px 2px;
        color: var(--tp-text-muted) !important;
        font-size: 10px;
        font-weight: 600;
        letter-spacing: .02em;
        line-height: 1.1;
    }

    .tp-mobnav a i {
        font-size: 18px !important;
        line-height: 1;
    }

    .tp-mobnav a.active {
        color: var(--tp-accent) !important;
    }

    .tp-mobnav a.active i {
        text-shadow: 0 0 12px var(--tp-accent-soft);
    }

    .tp-nav-live-dot {
        color: var(--tp-live) !important;
        font-size: 8px !important;
    }

    /* ---------- Boletim flutuante ---------- */
    #tp-betslip-fab {
        position: fixed;
        right: 12px;
        bottom: calc(72px + env(safe-area-inset-bottom));
        z-index: 1150;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        height: 44px;
        padding: 0 14px;
        border-radius: 50px;
        background: var(--tp-surface-2);
        border: 1px solid var(--tp-border-strong);
        color: var(--tp-text-muted) !important;
        font-size: 12px;
        font-weight: 700;
        letter-spacing: .02em;
        box-shadow: var(--tp-shadow);
    }

    #tp-betslip-fab i {
        font-size: 15px;
    }

    #tp-betslip-fab .tp-fab-count {
        min-width: 20px;
        height: 20px;
        padding: 0 6px;
        border-radius: 10px;
        background: var(--tp-surface-3);
        color: var(--tp-text);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 11px;
        font-weight: 700;
    }

    #tp-betslip-fab .tp-fab-odd {
        display: none;
    }

    #tp-betslip-fab.tp-fab-active {
        background: var(--tp-accent);
        border-color: var(--tp-accent);
        color: #FFF !important;
        box-shadow: 0 8px 24px rgba(225, 6, 0, .45);
    }

    #tp-betslip-fab.tp-fab-active .tp-fab-count {
        background: #FFF;
        color: var(--tp-accent);
    }

    #tp-betslip-fab.tp-fab-active .tp-fab-odd {
        display: inline;
        color: rgba(255, 255, 255, .85);
        font-weight: 600;
    }

    /* ---------- Bottom sheet do boletim ---------- */
    .tp-sheet-backdrop {
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, .6);
        opacity: 0;
        visibility: hidden;
        transition: opacity .25s ease;
        z-index: 2000;
    }

    body.tp-sheet-visible {
        overflow: hidden !important;
    }

    body.tp-sheet-visible .tp-sheet-backdrop {
        opacity: 1;
        visibility: visible;
    }

    /* neutraliza o toggle de .desktop-only que o core.js faz no #coupon */
    #coupon.desktop-only {
        display: block !important;
    }

    #coupon {
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        top: auto !important;
        bottom: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        max-height: 88vh;
        background: var(--tp-surface) !important;
        border-top: 1px solid var(--tp-border-strong);
        border-radius: 16px 16px 0 0 !important;
        box-shadow: 0 -12px 40px rgba(0, 0, 0, .6);
        transform: translateY(105%);
        transition: transform .3s cubic-bezier(.22, .61, .36, 1);
        z-index: 2100;
        display: flex;
        flex-direction: column;
        overflow: hidden;
        pointer-events: none;
    }

    #coupon.tp-sheet-open {
        transform: translateY(0);
        pointer-events: auto;
    }

    #coupon::before {
        content: "";
        position: absolute;
        top: 6px;
        left: 50%;
        transform: translateX(-50%);
        width: 44px;
        height: 4px;
        border-radius: 2px;
        background: rgba(255, 255, 255, .18);
        z-index: 5;
    }

    #coupon .btn-coupon {
        display: none !important;
    }

    .tp-sheet-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 18px 16px 12px;
        background: var(--tp-surface-2);
        border-bottom: 1px solid var(--tp-border);
        flex: 0 0 auto;
    }

    .tp-sheet-title {
        font-size: 12px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: .08em;
        color: var(--tp-text);
    }

    .tp-sheet-title i {
        color: var(--tp-accent);
        margin-right: 6px;
    }

    .tp-sheet-close {
        width: 32px;
        height: 32px;
        border-radius: 50%;
        background: var(--tp-surface-3);
        color: var(--tp-text-muted) !important;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    #coupon-content {
        display: block !important;
        flex: 1 1 auto;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    #coupon .box-finish-coupon {
        flex: 0 0 auto;
        position: sticky;
        bottom: 0;
        background: var(--tp-surface);
        border-top: 1px solid var(--tp-border);
    }

    /* ---------- Conteúdo ---------- */
    #slider {
        margin: 0 -12px 10px !important;
        border-radius: 0 !important;
    }

    .card {
        border-radius: var(--tp-radius-lg) !important;
        margin-bottom: 10px !important;
    }

    .card-header,
    .new-title {
        font-size: 11px !important;
        letter-spacing: .08em;
        padding: 10px 12px !important;
    }

    .card-header {
        border-bottom-width: 1px !important;
        border-left: 3px solid var(--tp-accent);
    }

    .odds_table ul li {
        margin: 6px 0 !important;
        padding: 0 8px !important;
        border-radius: var(--tp-radius);
        background: var(--tp-surface-2) !important;
        border: 1px solid var(--tp-border);
    }

    .odds_table ul li:nth-child(odd):not(.match_divider) {
        background: var(--tp-surface-2) !important;
    }

    .odds_table .match_more_options_link {
        padding: 10px 0 !important;
    }

    .odds_table .match_more_options_link b {
        font-size: 14px;
    }

    .odds_table .odds {
        margin-top: -46px !important;
    }

    .btn-odds {
        min-height: 42px;
        font-size: 14px !important;
        border-radius: var(--tp-radius-sm) !important;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
    }

    .btn-odds .caption {
        display: block;
        font-size: 9px;
        text-transform: uppercase;
        letter-spacing: .06em;
        opacity: .7;
        line-height: 1;
    }

    .col-padding-odd {
        padding: 0 3px !important;
    }

    .home-event-list-item {
        padding: 12px 8px !important;
    }

    .heli-title {
        font-size: 13px;
        font-weight: 600;
    }

    .matches-table .odds-table-btn {
        min-width: 0 !important;
        width: 33.33% !important;
        padding: 12px 4px !important;
        font-size: 14px !important;
    }

    .feat-odds {
        border-top-width: 1px !important;
    }

    .live-card-home a {
        padding: 12px !important;
    }

    .sports-list {
        border-radius: var(--tp-radius);
        padding: 0 !important;
    }

    .sports-list a {
        padding: 11px 12px !important;
        font-size: 14px !important;
        border-bottom: 1px solid var(--tp-border);
    }

    .internal-page {
        margin-top: 10px !important;
    }

    #footer {
        margin-bottom: calc(74px + env(safe-area-inset-bottom)) !important;
        padding-bottom: 24px;
    }
}

/* ---------- Boletim vazio (mobile) ---------- */
@media (max-width: 991px) {
    #coupon-content {
        min-height: 120px;
    }

    #couponContent:empty::after {
        content: "Seu boletim está vazio. Toque nas cotações para adicionar seleções.";
        display: block;
        padding: 28px 20px;
        text-align: center;
        color: var(--tp-text-dim);
        font-size: 13px;
        line-height: 1.5;
    }

    #couponContent .coupon-item {
        border-bottom: 1px solid var(--tp-border);
        padding: 12px 14px;
    }

    #couponContent .coupon-item .betdetailtr {
        font-size: 12px;
        color: var(--tp-text-muted);
    }
}
