html{overflow-x:hidden; width:100%;}
body{
  overflow-x:hidden;
  padding:0;
  width:100%;
  height:100%;
  margin:0;
  padding-right:0!important;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;
  background-color:#f4f4f5;
}
.container-fluid{padding: 0;}
.navbar-toggler:focus,.navbar-toggler-icon:focus,.form-control:focus,.form-select:focus {outline: none; box-shadow: none;}
input::-webkit-outer-spin-button,input::-webkit-inner-spin-button {  -webkit-appearance: none;  margin: 0;}
input[type=number] {-moz-appearance: textfield;}

/*topo*/
.fixed-top{padding: 0!important;}
.navbar{background-color: #ffffff!important; box-shadow: 0 1px 2px rgba(15,23,42,0.06);}
.navbar .nav-item a{color: #111827;}
.navbar .nav-item .active{color: #1f4da9!important;}
.navbar-toggler{border: 0}
.navbar-toggler span {display: block;  background-color: #111827;  height: 3px;  width: 32px;  margin-top: 0px;  margin-bottom: 5px;  position: relative;  left: 0;  opacity: 1;  transition: all 0.35s ease-out;  transform-origin: center left;}
.navbar-toggler span:nth-child(1) {  transform: translate(0%, 0%) rotate(0deg);}
.navbar-toggler span:nth-child(2) {  opacity: 1;}
.navbar-toggler span:nth-child(3) {  transform: translate(0%, 0%) rotate(0deg);}
.navbar-toggler span:nth-child(1) {  margin-top: 0.3em;}
.navbar-toggler:not(.collapsed) span:nth-child(1) {  transform: translate(15%, -194%) rotate(45deg);}
.navbar-toggler:not(.collapsed) span:nth-child(2) {  opacity: 0;}
.navbar-toggler:not(.collapsed) span:nth-child(3) {  transform: translate(15%, 33%) rotate(-45deg);}

/* header simples da landing */
.header-simple{
  background-color:#ffffff;
  box-shadow:0 1px 2px rgba(15,23,42,0.06);
}
.header-simple-inner{
  padding:6px 20px 2px 16px;
}
.header-simple-logo{
  max-height:28px;
  height:auto;
  width:auto;
  max-width:96px;
}
.btn-minhas-compras{
  border-radius:9999px;
  border:2px solid rgb(31,77,169);
  background-color:#ffffff;
  color:#111827;
  font-size:12px;
  font-weight:600;
  padding:11px 20px;
  margin-right:6px;
  margin-bottom:4px;
  white-space:nowrap;
}
.btn-minhas-compras:hover,
.btn-minhas-compras:focus{
  background-color:rgb(31,77,169);
  color:#ffffff;
}

/*footer*/
footer{background-color: #ffffff;}
footer a{color: #111827; text-decoration: none; font-size: 14px;}
footer p{color: #6b7280; font-size: 13px;}
footer .btn-success{background-color: #1f4da9; border: 0; color: #fff; font-weight: 500; text-transform: none; font-size: 14px; border-radius:9999px; padding:6px 18px;}
footer .btn-success:hover{transform: scale(1.02);}
footer .btn-insta{background: linear-gradient(90deg, rgba(167,84,222,1) 0%, rgba(255,45,132,1) 35%, rgba(253,156,91,1) 100%); border: 0; color: #fff; font-weight: bold; text-transform: uppercase; font-size: 14px;}
footer .btn-insta:hover{color: #fff; transform: scale(1.1); }

/*aviso*/
.aviso{background-color: #0f172a; margin-top: 80px; padding: 15px; margin-bottom: -50px;}
.aviso h1{color: #e5e7eb; font-weight: 500;}

/*banner*/
.banner{margin-top: 0; margin-bottom: 0;}
.banner.mb-4{margin-bottom:0!important;}
.banner-img{width:100%; height:auto; display:block; border-radius:0!important; box-shadow:none!important;}
.banner-title{font-size: 18px; padding: 16px 16px 8px 16px; text-align: left; font-weight: 600;}

/* linha de resumo (sorteio / preço) */
.resumo-rifa.py-3{
  padding-top:0!important;
  padding-bottom:0!important;
}
.resumo-rifa-row{
  background:#f9fafb;
  border-radius:0;
  padding:8px 16px;
  font-size:13px;
  color:#374151;
}
.resumo-rifa-icon{
  font-size:14px;
}
.resumo-rifa-preco{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:13px;
}
.resumo-rifa-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:4px 10px;
  border-radius:8px;
  background:#464d59;
  color:#ffffff;
  font-weight:600;
}

/*promocao*/
.promocao h3{font-size: 16px;}
.promocao h4{font-size: 22px; color: #0f172a}
.promocao .btn-warning{font-size: 16px; background-color:#1f4da9!important; border-color:#1f4da9!important;}
.promocao .btn-warning b{font-size: 18px;}
.promocao .btn-warning:hover{background-color:#0074da!important; color:#fff}

.pulsingButton {
    text-align: center;
    padding: 10px;
    box-shadow: none;
    border-radius: 9999px;
    background-color: #1f4da9;
    border: 1px solid #1f4da9;
    -webkit-animation: none;
    -moz-animation: none;
    -ms-animation: none;
    animation: none;
    text-decoration: none !important;
    color: #ffffff;
    transition: all 300ms ease-in-out;
  }
  
  a.pulsingButton:hover {
    color: #ffffff;
  }
  
  
  /* Animation */
  
  @-webkit-keyframes pulsing {
    to {
      box-shadow: 0 0 0 30px rgba(232, 76, 61, 0);
    }
  }
  
  @-moz-keyframes pulsing {
    to {
      box-shadow: 0 0 0 30px rgba(232, 76, 61, 0);
    }
  }
  
  @-ms-keyframes pulsing {
    to {
      box-shadow: 0 0 0 30px rgba(232, 76, 61, 0);
    }
  }
  
  @keyframes pulsing {
    to {
      box-shadow: 0 0 0 30px rgba(232, 76, 61, 0);
    }
  }

  .btn-con{animation: none;}

  /* desativa brilho / sombra pulsante globalmente */
  .animate-pulseShadow{
    animation: none!important;
    box-shadow: none!important;
  }
  @keyframes btn-cont {
    0% {
      animation-timing-function: ease-out;
      transform: scale(1);
      transform-origin: center center;
    }
  
    10% {
      animation-timing-function: ease-in;
      transform: scale(0.91);
    }
  
    17% {
      animation-timing-function: ease-out;
      transform: scale(0.98);
    }
  
    33% {
      animation-timing-function: ease-in;
      transform: scale(0.87);
    }
  
    45% {
      animation-timing-function: ease-out;
      transform: scale(1);
    }
  }
  

/*quantidade / combos de números*/
.quantidade.mt-4{
  margin-top:0!important;
}
.quantidade-header{
  font-size:14px;
  font-weight:600;
  color:#111827;
}
.quantidade-icon{
  font-size:18px;
  margin-right:6px;
  display:inline-flex;
  align-items:center;
}
.quantidade-icon .icon-money{
  width:18px;
  height:18px;
}
.quantidade-icon .icon-money rect{
  fill:#464d59;
}
.quantidade-icon .icon-money circle{
  fill:#ffffff;
}
.quantidade-title{
  font-size:15px;
  font-weight:600;
}
.quantidade-combos{
  margin-top:4px;
}
.combo-card{
  width:100%;
  border-radius:14px;
  border:2px solid #d1d5db;
  background:#f9fafb;
  padding:14px 12px 12px 12px;
  text-align:left;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:4px;
  font-size:14px;
  color:#111827;
  font-weight:500;
}
.combo-card:hover{
  border-color:#1f4da9;
}
.combo-name{
  display:block;
  font-size:15px;
}
.combo-price{
  display:block;
  font-size:13px;
  color:#4b5563;
  font-weight:500;
}
.combo-card-highlight{
  position:relative;
  border-color:#1f4da9;
  background:#e0edff;
}
.combo-tag{
  position:absolute;
  top:-12px;
  left:10px;
  background:#1f4da9;
  color:#ffffff;
  font-size:11px;
  padding:2px 8px;
  border-radius:9999px;
  display:inline-flex;
  align-items:center;
  gap:4px;
}
.combo-tag-icon{
  width:13px;
  height:13px;
}
.combo-tag-icon path{
  fill:#ffffff;
}
.quantidade h6{font-size: 18px;}
.quantidade h6 a{font-weight: bold; text-decoration: none;}
.quantidade .btn1{border: 0; background-color: transparent; width: 36px; margin-bottom: 5px; color:#999}
.quantidade .btn1:hover{color: #f10;}
.quantidade .btn2{border: 0; background-color: transparent; width: 36px; margin-bottom: 5px; color:#999}
.quantidade .btn2:hover{color: #3B82F6;}
.quantidade .box{border-radius: 5px; width: 75px; height: 40px; margin-left: 8px; font-weight: bold; border: 2px solid #999;}
.quantidade p{font-size: 15px;}
.quantidade .btnclear{background-color: #3B82F6; padding: 5px; color: #fff; text-decoration: none; font-size: 12px; margin-left: 10px; cursor: pointer;}
.quantidade .btnclear:hover{color:#fff; background-color: #333;}

/* área do cliente abaixo dos combos */
.area-cliente{
  margin-top:16px;
  margin-bottom:12px;
}
.area-cliente-title{
  font-size:18px;
  font-weight:600;
  margin-bottom:12px;
  color:#111827;
}
.area-cliente-card{
  width:100%;
  border-radius:12px;
  border:2px solid #1f4da9;
  background:#ffffff;
  padding:10px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  text-align:left;
}
.area-cliente-left{
  display:flex;
  align-items:center;
  gap:8px;
}
.area-cliente-icon svg{
  width:18px;
  height:18px;
  stroke:#169c46;
  stroke-width:2;
  fill:none;
}
.area-cliente-text{
  font-size:14px;
  font-weight:600;
  color:#111827;
}
.area-cliente-arrow svg{
  width:16px;
  height:16px;
  stroke:#111827;
  stroke-width:2.2;
  fill:none;
}

/* bloco de informações de capitalização e logos */
.info-capitalizacao{
  padding-top:16px;
  padding-bottom:24px;
}
.info-logos{
  gap:12px;
}
.info-logo-img{
  max-height:32px;
  width:auto;
}
.info-capitalizacao-text{
  font-size:11px;
  line-height:1.4;
  color:#4b5563;
  margin-bottom:8px;
}
.info-capitalizacao-text--secondary{
  font-weight:600;
  margin-top:12px;
}
.info-link{
  font-size:12px;
  font-weight:600;
  color:#1f4da9;
  text-decoration:underline;
  display:inline-block;
  margin-bottom:16px;
}

/* botão de login (modal meus títulos) */
.btn-login-primary{
  background-color:#4d7c10;
  border-color:#4d7c10;
  color:#ffffff!important;
  font-weight:600;
  border-radius:9999px;
  padding:10px 18px;
}
.btn-login-primary:hover{
  background-color:#40640d;
  border-color:#40640d;
  color:#ffffff!important;
}

/*btn-participar*/
.btn-participar .btn-dark{background-color: #1f4da9; color: #ffffff; border-radius: 9999px; font-weight: 500; padding: 14px 24px; font-size: 18px; box-shadow:0 10px 25px rgba(15,23,42,0.18);}
.btn-participar .btn-dark:hover{background-color: #153276; border: 1px solid #153276; color: #ffffff;}

/*txt*/
.txt p{color:#000; font-size: 14px; }
.txt .bg-success{margin-left: -60px; background-color: #22c55e!important; color: #fff; font-weight: bold; height: 40px; padding-top: 10px!important;}
.txt .bg-warning{margin-left: -60px; background-color: #ffb931!important; color: #fff; font-weight: bold; height: 40px; padding-top: 10px!important;}
.txt .bg-dark{background-color: #000!important; font-size: 14px!important; height: 40px; padding-top: 10px!important;}
.txt .bg-dark p{color: #fff!important;}
.txt h6{font-size: 15px; line-height: 10px;}
.txt li{font-size: 15px;}
.txt .btn-outline-danger{font-size: 13px!important;}

/*modal*/
.modal-body .selo{margin-bottom: -57px; margin-right: 15px;}
.modal-body .bg-dark h6{text-align: right!important; margin-top: -22px; font-weight: bold; margin-right: 10px;}
.modal-body .form-check-input{background-color: #000; border-color: #ffb931;}
.modal-body p a{color:#ffb931!important; font-weight: bold;}
.modal-body .form-control{background-color: #ddd;}
.modal-body .btn-success{font-size: 22px; font-weight: bold; padding: 15px;}
.modal-body h6{font-size: 18px;}
.modal-body .form-label{font-size: 15px; font-weight: bold;}
.modal-body h6 a{font-weight: bold; text-decoration: none;}
.modal-body small a{color: #000; text-decoration: none;}
.modal-body .countdown{font-weight: bold; font-size: 18px; color: #f10;}

/* tabela de compras no admin – mais compacta */
.wrapper .card-box #datatable-responsive{
  font-size:12px;
}
.wrapper .card-box #datatable-responsive th,
.wrapper .card-box #datatable-responsive td{
  padding:6px 8px;
  white-space:nowrap;
}

.modalcarrega{border-radius: 15px; background-color: transparent; border-color: transparent;}
.modalcarrega h6{font-size: 14px; color: #000; font-weight: bold;}

.flipper,.flipper-group{display:block;padding:0}
.flipper-delimiter,.flipper-digit,.flipper-group{float:left;margin:0;white-space:nowrap}.digit-face,.digit-top2{visibility:hidden}.flipper,.flipper-dark .flipper-delimiter,.flipper-dark-labels .flipper-group label{color:#333}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes pulseShadow{0%,to{box-shadow:0 -4px 56.5px 0 #000}50%{box-shadow:0 -4px 56.5px 0 #ecc654}}.animate-pulseShadow{animation:1.9s infinite pulseShadow}.flipper{font-size:60px;line-height:100%;margin:0;height:1.6em;background-color:transparent!important}.digit-next,.digit-top{background:#fff;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.flipper.flipper-invisible{font-size:0px!important}.flipper-group{position:relative}.flipper-group label{position:absolute;color:#fff;font-size:20%;top:100%;line-height:1em;left:50%;-webkit-transform:translate(-50%,0);transform:translate(-50%,0);text-align:center;padding-top:.5em}.flipper-digit{position:relative;padding:0;display:inline-block;height:1.2em;overflow-y:hidden}.flipper-digit span{font-size:25%}.flipper-delimiter{padding:.1em 0;color:#fff;min-width:.1em;display:block;line-height:1em}.digit-face,.digit-next{position:relative;border-radius:.1em;bottom:0;z-index:8;padding:.1em;text-align:center;top:0;left:0;right:0;box-sizing:border-box;display:block}.digit-next{height:1.2em;user-select:none}.digit-top{top:0;left:0;right:0;height:50%;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:none;overflow:hidden;position:absolute;padding:.1em .1em 0;border-top-left-radius:.1em;border-top-right-radius:.1em;box-sizing:border-box;text-align:center;user-select:none;transition:transform linear,background linear,-webkit-transform linear;-webkit-transform-origin:0 0.6em 0!important;transform-origin:0 0.6em 0!important;-webkit-transform-style:preserve-3d!important;transform-style:preserve-3d!important;z-index:20}.digit-bottom,.digit-top2{overflow:hidden;height:50%;padding:0 .1em .1em;border-bottom-left-radius:.1em;border-bottom-right-radius:.1em;text-align:center;position:absolute;left:0;right:0}.digit-top.r{transition:transform .2s linear,background .2s linear,-webkit-transform .2s linear;-webkit-transform:rotateX(90deg);transform:rotateX(90deg);background:#ccc}.digit-top2{background:#ccc;transition:transform .2s linear;transition:transform linear,background linear,-webkit-transform linear;line-height:0!important;top:50%!important;bottom:auto!important;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transform:rotateX(-90deg);transform:rotateX(-90deg);-webkit-transform-style:preserve-3d!important;transform-style:preserve-3d!important;-webkit-transform-origin:0 0 0!important;transform-origin:0 0 0!important;z-index:20}.digit-top2.r{visibility:visible;transition:transform .2s linear .2s,background .2s linear .2s,-webkit-transform .2s linear .2s;-webkit-transform:rotateX(0);transform:rotateX(0);background:#fff}.digit-bottom{-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:none;background:#fff;bottom:0;z-index:9;line-height:0;box-sizing:border-box;transition:none}.digit-bottom.r{transition:background .2s linear;background:#ccc}.flipper-digit:after{content:"";position:absolute;height:2px;background:rgba(0,0,0,.5);top:50%;display:block;z-index:30;left:0;right:0}.flipper-dark{color:#fff}.flipper-dark .digit-bottom,.flipper-dark .digit-next,.flipper-dark .digit-top,.flipper-dark .digit-top2.r{background:#333}.flipper-dark .digit-top.r,.flipper-dark .digit-top2{background:#000}

/*error*/
.error{font-size: 12px; color: #f10;}
#cpflog-error{position: absolute; margin-top: 41px;}

/*informativo*/
.informativo{background-color: #ddd; height: 88vh;}

/*alertas / barra fixa de compra */
#toast-container>.toast-success{margin-top: -50px;}
.box-venda{
  position: fixed;
  bottom: 0;
  left:0;
  right:0;
  z-index: 50;
  padding: 0;
  background: #f4f4f5;
}
.box-venda-card{
  max-width: 100%;
  margin: 0;
  background-color:#ffffff;
  border-radius:0;
  box-shadow:0 -6px 18px rgba(15,23,42,0.22);
  border-top:1px solid #e5e7eb;
  padding:8px 0 10px;
}
.box-venda-inner{
  padding:8px 24px 12px;
}
.box-venda-header{
  font-size:13px;
}
.box-venda-header > [class^="col-"]{
  padding-left:0;
  padding-right:0;
}
.box-venda-summary{
  text-align:left;
}
.box-venda-label-top{
  font-weight:600;
  color:#111827;
}
.box-venda-label-price{
  font-weight:700;
  font-size:15px;
  color:#111827;
}
.box-venda-qty-group{
  justify-content:flex-end;
  margin-right:0;
}
.box-venda-footer-col{
  padding-left:0;
  padding-right:0;
}
.box-venda .btn1,
.box-venda .btn2{
  border:1px solid #1f4da9;
  background-color:#ffffff;
  width:36px;
  height:46px;
  margin-bottom:0;
  color:#374151;
  border-radius:8px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
}
.box-venda .btn1:hover,
.box-venda .btn2:hover{
  color:#111827;
}
.box-venda .box{
  border-radius:10px;
  width:48px;
  height:46px;
  margin-left:0;
  font-weight:bold;
  border:1px solid #d1d5db;
  background-color:#f3f4f6!important;
  color:#111827;
  font-size:19px;
}
.box-venda-input{
  text-align:center;
}
.box-venda-icon{
  font-size:18px;
  font-weight:600;
  line-height:1;
}
.box-venda .btn-warning.box-venda-buy-btn{
  border-radius:8px;
  text-transform:none;
  font-weight:600;
  background-color:#4d7c10!important;
  border-color:#4d7c10!important;
  color:#ffffff!important;
  font-size:17px;
  padding-top:11px;
  padding-bottom:11px;
}
.box-venda .btn-warning.box-venda-buy-btn:hover{
  background-color:#40640d!important;
  border-color:#40640d!important;
}

/*media*/
@media (min-width: 1921px) {
    
    }
    
    @media (max-width: 1680px) {
    
    }
    
    @media (max-width: 1440px) {
    
    }
    
    @media (max-width: 1400px) {
    
    }
    
    @media (max-width: 1366px) {

    }
    
    @media (max-width: 1280px) {
    
    }
    
    @media (max-width: 1200px) {
 
    
    }
    
    @media (max-width: 1024px) {
    
    }
    
    @media (max-width: 991px) { 
    .banner-dias h2{font-size: 25px;}
    .navbar{text-align: right; font-size: 18px;}
    }
    
    @media (max-width: 768px) {
 
    }
    
    @media (max-width: 767px) {}
    
    @media (max-width: 480px) {
    .banner-dias .p-5{padding: 15px!important;}
    .banner-dias h2{font-size: 15px;}
    .txt h6{text-align: center;}
    .logo{width: 150px;}
    .sublogo{width: 150px;}
    .banner{margin-top: 10px;}
    .aviso{margin-top: 60px;}
    .banner h1{display: none;}
    .banner .row>*{padding: 0!important;}
    #toast-container>.toast-success{margin-top: -195px;}
    .bm{margin-top: -7px;}
    .banner-dias-m{background-color: #1f4da9; margin-top: -10px;}
    .banner-dias-m h2{color: #fff; font-weight: bold; font-size: 12px;}

    /* ajustes mobile seguem o mesmo layout do desktop para a barra fixa */
    .box-venda{
      padding:0;
    }
    .boxfooter{margin-bottom: 32px;}
    }
    
    @media (max-width: 390px) {
      .box-venda h6{color: #fff; font-weight: 600; font-size: 14px;}
      .box-venda .box{font-size: 14px; width: 48px;}
    }
    
    @media (max-width: 320px) {
    .banner-dias h2{font-size: 19px;}
    .box-venda .box{font-size: 13px; width: 48px;}
    }
