
/* ============================================================
   CADASTRO GLOBAL CLIMÁTIKO
============================================================ */

.clm-global-backdrop{

  position:fixed;
  inset:0;

  z-index:1000000;

  display:flex;
  align-items:flex-start;
  justify-content:center;

  padding:18px;

  overflow:auto;

  background:
    rgba(15,23,42,.48);

}


.clm-global-modal{

  width:min(1120px,100%);

  margin:auto;

  overflow:hidden;

  border-radius:7px;

  background:#f6f8fb;

  box-shadow:
    0 25px 70px
    rgba(0,0,0,.28);

}


.clm-global-top{

  display:flex;
  justify-content:space-between;
  align-items:center;

  min-height:54px;

  padding:0 18px;

  border-bottom:
    1px solid #d5dde5;

  background:#fff;

}


.clm-global-top h2{

  margin:0;

  font-size:18px;
  font-weight:500;

}


.clm-global-top button{

  width:34px;
  height:34px;

  border:0;

  background:transparent;

  font-size:22px;

  cursor:pointer;

}


.clm-global-content{

  max-height:
    calc(100vh - 155px);

  overflow:auto;

  padding:14px;

}


.clm-global-card{

  margin-bottom:12px;

  overflow:visible;

  border:
    1px solid #d5dde5;

  border-radius:6px;

  background:#fff;

}


.clm-global-card-header{

  padding:12px 16px;

  border-bottom:
    1px solid #e4e7ec;

  background:#fafafa;

}


.clm-global-card-header h3{

  margin:0 0 4px;

  font-size:14px;
  font-weight:400;

}


.clm-global-card-header h3 strong{

  font-weight:700;

}


.clm-global-card-header small{

  color:#667085;

  font-size:9px;

}


.clm-global-card-body{

  padding:15px 16px;

}


.clm-global-grid-4{

  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:13px 18px;

}


.clm-global-grid-2{

  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:14px 18px;

}


.clm-global-grid-address{

  display:grid;

  grid-template-columns:
    .7fr
    .8fr
    1.35fr
    .7fr;

  gap:12px 16px;

}


.clm-global-field{

  min-width:0;

}


.clm-global-field label{

  display:block;

  margin-bottom:5px;

  color:#475467;

  font-size:10px;

}


.clm-global-field label b{

  color:#d92d20;

}


.clm-global-field input,
.clm-global-field select,
.clm-global-field textarea{

  width:100%;

  box-sizing:border-box;

  border:
    1px solid #cbd5df;

  border-radius:4px;

  background:#fff;

  font:inherit;

  font-size:10.5px;

}


.clm-global-field input,
.clm-global-field select{

  height:35px;

  padding:0 9px;

}


.clm-global-field input:focus,
.clm-global-field select:focus,
.clm-global-field textarea:focus{

  outline:none;

  border-color:#599bd1;

  box-shadow:
    0 0 0 2px
    rgba(21,90,150,.08);

}


.clm-global-full{

  margin-top:15px;

}


.clm-global-textarea{

  width:100%;

  min-height:95px;

  box-sizing:border-box;

  padding:8px;

  border:
    1px solid #cbd5df;

  border-radius:4px;

  resize:vertical;

}


.clm-global-input-action{

  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    38px;

}


.clm-global-input-action input{

  border-radius:
    4px 0 0 4px;

}


.clm-global-input-action button{

  border:
    1px solid #cbd5df;

  border-left:0;

  border-radius:
    0 4px 4px 0;

  background:#f8fafc;

  cursor:pointer;

}


.clm-global-input-check{

  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    auto;

}


.clm-global-input-check > input{

  border-radius:
    4px 0 0 4px;

}


.clm-global-isento{

  height:35px;

  display:flex !important;
  align-items:center;

  gap:5px;

  box-sizing:border-box;

  padding:0 8px;

  border:
    1px solid #cbd5df;

  border-left:0;

  border-radius:
    0 4px 4px 0;

  background:#f8fafc;

  white-space:nowrap;

}


.clm-global-isento input{

  width:auto !important;
  height:auto !important;

}


.clm-global-help{

  display:block;

  margin-top:4px;

  color:#667085;

  font-size:8.5px;

}


.clm-global-help.sucesso{

  color:#067647;

}


.clm-global-help.erro{

  color:#d92d20;

}


.clm-global-help.carregando{

  color:#155a96;

}


.clm-global-address,
.clm-global-contact{

  position:relative;

  margin-bottom:13px;

  padding-bottom:13px;

  border-bottom:
    1px solid #eaecf0;

}


.clm-global-address:last-child,
.clm-global-contact:last-child{

  border-bottom:0;

}


.clm-global-outline{

  min-height:34px;

  padding:0 11px;

  border:
    1px solid #344054;

  border-radius:4px;

  background:#fff;

  color:#344054;

  font-size:10.5px;
  font-weight:600;

  cursor:pointer;

}


.clm-global-remove{

  margin-top:7px;

  border:0;

  background:transparent;

  color:#d92d20;

  font-size:9px;

  cursor:pointer;

}


.clm-global-money{

  display:grid;

  grid-template-columns:
    40px
    minmax(0,1fr);

}


.clm-global-money span{

  display:flex;
  align-items:center;
  justify-content:center;

  height:35px;

  box-sizing:border-box;

  border:
    1px solid #cbd5df;

  border-right:0;

  border-radius:
    4px 0 0 4px;

  background:#f8fafc;

}


.clm-global-money input{

  border-radius:
    0 4px 4px 0;

}


.clm-global-credit-row{

  display:grid;

  grid-template-columns:
    320px
    minmax(0,1fr);

  align-items:end;

  gap:22px;

}


.clm-global-switch-line{

  display:flex;

  justify-content:space-between;
  align-items:center;

  gap:15px;

  min-height:42px;

}


.clm-global-switch-line > span{

  display:flex;
  flex-direction:column;

  gap:3px;

}


.clm-global-switch-line strong{

  font-size:10px;

}


.clm-global-switch-line small{

  color:#667085;

  font-size:8.5px;

}


.clm-global-switch-line > input{

  width:18px;
  height:18px;

}


.clm-global-footer{

  display:flex;

  justify-content:flex-end;

  gap:7px;

  padding:12px 16px;

  border-top:
    1px solid #d5dde5;

  background:#fff;

}


.clm-global-primary,
.clm-global-secondary{

  min-height:35px;

  padding:0 13px;

  border-radius:4px;

  font-size:10.5px;
  font-weight:600;

  cursor:pointer;

}


.clm-global-primary{

  border:
    1px solid #155a96;

  background:
    #155a96;

  color:#fff;

}


.clm-global-secondary{

  border:
    1px solid #cbd5df;

  background:#fff;

  color:#475467;

}


.hidden{

  display:none !important;

}


/* ============================================================
   RESPONSIVO
============================================================ */

@media(max-width:1000px){

  .clm-global-grid-4{

    grid-template-columns:
      repeat(2,minmax(0,1fr));

  }


  .clm-global-grid-address{

    grid-template-columns:
      repeat(2,minmax(0,1fr));

  }

}


@media(max-width:650px){

  .clm-global-backdrop{

    padding:7px;

  }


  .clm-global-grid-4,
  .clm-global-grid-2,
  .clm-global-grid-address,
  .clm-global-credit-row{

    grid-template-columns:
      1fr;

  }

}



/* ============================================================
   CADASTRO GLOBAL
   ESPAÇAMENTO DA SEGUNDA LINHA DE DADOS
============================================================ */

/*
  Afasta:
  CNPJ | Razão social | Inscrição estadual | Tipo contribuinte

  da primeira linha:
  Tipo | Situação | Nome fantasia | E-mail
*/

#clmGlobalModal
.clm-global-company{

  margin-top:
    19px !important;

  padding-top:
    2px !important;

}


/*
  Dá um pouco mais de respiro entre as linhas
  dentro dos dados da Pessoa Jurídica.
*/

#clmGlobalModal
.clm-global-company
.clm-global-grid-4{

  row-gap:
    17px !important;

}


/*
  Mantém a mensagem do CNPJ próxima do campo,
  mas sem encostar na próxima linha.
*/

#clmGlobalModal
#cgCNPJStatus{

  min-height:
    12px;

  margin-top:
    5px !important;

  line-height:
    1.3;

}


/*
  Espaçamento entre a primeira grade e PJ
  sem aumentar demais o card.
*/

#clmGlobalModal
.clm-global-card-body >
.clm-global-grid-4:first-child{

  margin-bottom:
    0 !important;

}

