/*================================================================================
	Item Name: Modern Admin - Clean Bootstrap 4 Dashboard HTML Template
	Author: PIXINVENT
	Author URL: http://www.themeforest.net/user/pixinvent
================================================================================

NOTE:
------
PLACE HERE YOUR OWN SCSS CODES AND IF NEEDED, OVERRIDE THE STYLES FROM THE OTHER STYLESHEETS.
WE WILL RELEASE FUTURE UPDATES SO IN ORDER TO NOT OVERWRITE YOUR STYLES IT'S BETTER LIKE THIS.  */

.logo {
  width: 55px;
  border-radius: 6px;
  margin-bottom: 10px;
}

.radioEn {
  cursor: pointer;
  display: none;
}

/* Estilos para o container de opções de empresas */
.custom-radio .custom-control-label {
  border: 2px solid #e9ecef !important;
  border-radius: 8px !important;
  transition: all 0.3s ease !important;
  min-height: 130px;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 15px 10px !important;
  margin: 0 !important;
}

.custom-radio .custom-control-label:hover {
  border-color: #007bff !important;
  background-color: #f0f5ff !important;
  box-shadow: 0 2px 8px rgba(0, 123, 255, 0.2);
  transform: translateY(-2px);
}

.custom-radio .custom-control-input:checked + .custom-control-label {
  border-color: #007bff !important;
  background-color: #e7f1ff !important;
  box-shadow: 0 2px 12px rgba(0, 123, 255, 0.3);
  font-weight: 600;
}

.custom-radio .custom-control-label .logo {
  max-width: 60px !important;
  height: auto !important;
  margin-bottom: 8px !important;
}

.custom-radio .custom-control-label .text-center {
  font-size: 0.875rem;
  font-weight: 500;
  color: #333;
  word-break: break-word;
}

/* Responsividade para telas pequenas */
@media (max-width: 768px) {
  .custom-radio .custom-control-label {
    min-height: 110px;
    padding: 12px 8px !important;
    font-size: 0.75rem;
  }
  
  .custom-radio .custom-control-label .logo {
    max-width: 50px !important;
  }
}

@media (max-width: 576px) {
  .custom-radio .custom-control-label {
    min-height: 90px;
    padding: 10px 5px !important;
    font-size: 0.7rem;
  }
  
  .custom-radio .custom-control-label .logo {
    max-width: 40px !important;
  }
}

/* Estilos para campos financeiros com Cleave.js */
.money-field {
  text-align: right !important;
  font-weight: 500;
  font-size: 1rem;
  padding-right: 12px !important;
}

.money-field::placeholder {
  color: #999;
  opacity: 0.7;
}

.money-field:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25) !important;
}

/* Prefixo visual para inputs financeiros (sem bloquear) */
.input-group-prepend .input-group-text {
  background-color: #f8f9fa;
  border-color: #ced4da;
  font-weight: 600;
}

.input-group:focus-within .input-group-prepend .input-group-text {
  background-color: #e7f1ff;
  border-color: #007bff;
  color: #007bff;
}

/* Full-page loading overlay (used during form submit) */
.loading-overlay {
  position: fixed;
  inset: 0; /* top:0; right:0; bottom:0; left:0 */
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0.45);
  z-index: 2000;
  opacity: 0;
  pointer-events: none;
  transition: opacity 200ms ease-in-out;
}
.loading-overlay.show {
  opacity: 1;
  pointer-events: auto;
}

/* optional: spinner color tweak when overlay active */
.loading-overlay .spinner-border {
  width: 3rem;
  height: 3rem;
}
