#modal-vincular-uc-custom {
    z-index: 9999;
}

.modal-uc-dialog {
    width: 45%;
    max-width: calc(100vw - 24px);
    margin: 24px auto;
}

.modal-uc-content {
    border: none;
    border-radius: 0;
    padding: 14px;
    font-family: inherit;
}

.modal-uc-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 24px;
}

.modal-uc-title {
    display: flex;
    align-items: center;
    gap: 15px;
    color: #455558;
    font-size: 18px;
    font-weight: 400;
}

.modal-uc-icon {
    width: 40px;
    height: 40px;
    border-radius: 4px;
    background: #F1F4F4;
    color: #6D32FF;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    line-height: 1;
}
.modal-uc-title span:last-child {
    font-size: 28px;
    font-weight: 300;
    color: #2D2D2D;
    line-height: 1;
}

.modal-uc-close {
    border: none;
    background: transparent;
    font-size: 22px;
    color: #455558;
    cursor: pointer;
}

.modal-uc-subtitle {
    font-size: 12px;
    color: #455558;
    margin-bottom: 8px;
}

.btn-cadastrar-uc {
    width: 100%;
    height: 35px;
    border: none;
    background: #6D32FF;
    color: #fff;
    font-size: 14px;
    margin-bottom: 10px;
}

.uc-modal-lista-wrapper {
    border: 1px solid #D7DFE0;
    border-radius: 2px;
    overflow: hidden;
}

.uc-modal-lista-title {
    padding: 8px;
    font-size: 12px;
    color: #222;
    border-bottom: 1px solid #D7DFE0;
}

.uc-modal-lista {
    max-height: 280px;
    overflow-y: auto;
    padding: 8px;
    background: #fff;
}

.uc-modal-item {
    display: grid;
    grid-template-columns: 20px 1fr auto;
    gap: 8px;
    align-items: flex-start;
    background: #F1F4F4;
    padding: 10px;
    margin-bottom: 8px;
    border-radius: 2px;
    position: relative;
}

.uc-modal-item:has(.uc-modal-check:checked) {
    background: #D7DFE0;
}
.uc-ja-vinculada-icon {
    position: absolute;
    right: 18px;
    bottom: 14px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #00ff2a;
    display: flex;
    align-items: center;
    justify-content: center;
}

.uc-ja-vinculada-icon span {
    width: 15px;
    height: 15px;
    border: 1px solid #0b1f13;
    border-radius: 50%;
    color: #0b1f13;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
}
.uc-modal-check {
    margin-top: 28px;
    accent-color: #6D32FF;
}

.uc-modal-info strong {
    display: block;
    color: #222;
    font-size: 13px;
    margin-bottom: 6px;
}

.uc-modal-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px 18px;
}

.uc-modal-campo-full {
    grid-column: 1 / -1;
}

.uc-modal-campo {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.uc-modal-campo label {
    font-size: 12px;
    color: #7C9599;
    font-weight: 400;
    margin: 0;
}

.uc-modal-campo span {
    font-size: 11px;
    color: #455558;
    line-height: 1.3;
}

.btn-ver-detalhes-uc {
    border: 1px solid #6D32FF;
    background: #fff;
    color: #6D32FF;
    font-size: 10px;
    padding: 3px 8px;
    height: 24px;
    cursor: pointer;
}

.uc-modal-footer-info {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 6px 8px;
    font-size: 10px;
    color: #222;
}

.modal-uc-footer {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 28px;
}

.btn-uc-cancelar,
.btn-uc-vincular {
    height: 40px;
    font-size: 12px;
    border: 1px solid #6D32FF;
    cursor: pointer;
}

.btn-uc-cancelar {
    background: #fff;
    color: #455558;
}

.btn-uc-vincular {
    background: #6D32FF;
    color: #fff;
}

.btn-uc-vincular:disabled {
    opacity: .5;
    cursor: not-allowed;
}

.uc-modal-empty {
    padding: 18px;
    text-align: center;
    color: #7C9599;
    font-size: 12px;
}
.modal-uc-icon svg {
    display: block;
    width: 100%;
    height: 100%;
}
.uc-modal-item--vinculada {
    cursor: not-allowed;
}

.uc-modal-item--vinculada .uc-modal-check {
    cursor: not-allowed;
}

.uc-modal-item--vinculada::after {
    color: #7C9599;
    font-size: 11px;
    font-weight: 600;
    align-self: center;
}

.modal-nova-uc input:disabled, 
.modal-nova-uc select:disabled {
    background-color: #F2F4F7 !important;
    border-color: #D7DFE0 !important;
    color: #7C9599 !important;
    cursor: not-allowed;
}
#modal-sucesso-uc{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.35);
    display:none;
    align-items:center;
    justify-content:center;
    z-index:11000;
}

#modal-sucesso-uc.active{
    display:flex;
}

#modal-sucesso-uc .modal-confirmacao-content{
    width:360px;
    background:#FFF;
    padding:32px 24px;
    text-align:center;
    border-radius:4px;
}

#modal-sucesso-uc h2{
    margin:18px 0 8px;
    color:#2D2D2D;
    font-size:24px;
    font-weight:400;
}

#modal-sucesso-uc p{
    margin-bottom:24px;
    color:#455558;
    font-size:14px;
}

#btn-modal-sucesso-uc{
    width:100%;
    height:40px;
}
.ocr-modal-overlay {
    position: fixed;
    inset: 0;
    z-index: 30000;
    background: rgba(0, 0, 0, .45);
    display: flex;
    align-items: center;
    justify-content: center;
}

.ocr-modal {
    width: 35%;
/*    max-width: calc(100vw - 32px);
*/
    max-width: 600px;
    background: #fff;
    border-radius: 8px;
    padding: 24px 28px;
    position: relative;
    box-shadow: 0 12px 32px rgba(0,0,0,.25);
}

.ocr-file-input {
    display: none !important;
}

.ocr-modal-close {
    position: absolute;
    top: 8px;
    right: 28px;
    border: 0;
    background: transparent;
    font-size: 32px;
    cursor: pointer;
    color: #263238;
}

.ocr-modal-header {
    display: flex;
    gap: 16px;
    align-items: flex-start;
}

.ocr-modal-icon {
    width: 58px;
    height: 58px;
    border-radius: 8px;
    background: #F2EEFF;
    color: #6D32FF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
     font-size: 13px;
}

.ocr-modal-header h2 {
    margin: 0 0 8px;
    font-size: 22px;
    color: #263238;
}

.ocr-modal-header p {
    margin: 0;
    font-size: 14px;
    color: #6B7280;
    line-height: 1.4;
}

.ocr-modal-divider {
    height: 1px;
    background: #D9E1E3;
    margin: 22px 0;
}

.ocr-upload-area {
    height: 72px;
    border: 1.5px solid #D7DFE0;
    border-radius: 4px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    color: #263238;
    cursor: pointer;
    gap: 25px;
    margin-top: 14px;
}

.ocr-upload-icon {
    font-size: 30px;
    color: #6D32FF;
    margin-bottom: 8px;
    margin-left: 24px;
}

.ocr-upload-area strong {
    font-size: 17px;
    font-weight: 500;
}

.ocr-upload-area span,
.ocr-file-info {
    color: #455558;
    font-size: 12px;
}

.ocr-file-info {
    margin: 18px 0;
}

.ocr-field-label {
    display: block;
    font-weight: 600;
    color: #455558;
    margin-bottom: 8px;
}

.ocr-field-label span {
    color: #FF2B2B;
}

.ocr-select {
    width: 100%;
    height: 44px;
    border: 1px solid #C7D1D4;
    border-radius: 4px;
    background: #EEF2F3;
    color: #8A9AA0;
    padding: 0 18px;
    font-size: 15px;
    cursor: not-allowed;
}

.ocr-help-box {
    margin-top: 18px;
    background: #F5F1FF;
    border-radius: 6px;
    padding: 16px 18px;
    color: #4B3F72;
}

.ocr-help-box strong {
    color: #4B22C8;
    font-size: 18px;
}

.ocr-help-box p {
    margin: 10px 0 0;
    line-height: 1.5;
}

.ocr-footer {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    margin-top: 22px;
}

.ocr-btn-voltar,
.ocr-btn-importar {
    height: 44px;
    border-radius: 4px;
    font-size: 16px;
    cursor: pointer;
}

.ocr-btn-voltar {
    background: #fff;
    border: 1px solid #6D32FF;
    color: #6D32FF;
}

.ocr-btn-importar {
    border: 0;
    background: #6D32FF;
    color: #fff;
}

.ocr-btn-importar:disabled {
    background: #E6EBEC;
    color: #9AAEB3;
    cursor: not-allowed;
}
#ocr-fatura-file{
    display: none !important;
}

.ocr-upload-area--dragover {
    background: #F5F1FF;
    border-color: #6D32FF;
    box-shadow: 0 0 0 2px rgba(109, 50, 255, .15);
}

#ocr-file-name {
    max-width: 50vw;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 400;
}
.ocr-modal-header {
    display: grid !important;
    grid-template-columns: 58px 1fr !important;
    column-gap: 16px !important;
    align-items: center !important;
    padding-right: 48px !important;
}

.ocr-modal-icon {
    width: 40px !important;
    height: 40px !important;
    background: #F1F4F4 !important;
    border-radius: 8px !important;
    color: #6D32FF !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 600 !important;
    font-size: 13px !important;
}

.ocr-modal-textos h2 {
    margin: 0 0 8px 0 !important;
    color: #263238 !important;
    font-size: 22px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
}

.ocr-modal-textos p {
    margin: 0 !important;
    color: #6B7280 !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
}
.ocr-header-description-p {
    color:#6B7280 !important;
    margin-top: 20px;
}
.ocr-status-box {
    margin-top: 18px;
    margin-bottom: 16px;
}

.ocr-status-title {
    color: #ff2b35;
    font-weight: 700;
    font-size: 16px;
    margin-bottom: 8px;
}

.ocr-help-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 6px;
    width: 20px;
    height: 20px;
    border: 1px solid #6b7280;
    border-radius: 50%;
    color: #374151;
    font-size: 14px;
}

.ocr-status-error {
    border: 1px solid #ff2b35;
    border-radius: 6px;
    color: #ff2b35;
    padding: 14px 24px;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.ocr-status-error-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border: 1px solid #ff2b35;
    border-radius: 50%;
    font-size: 14px;
}

.ocr-status-message {
    margin-top: 10px;
    color: #ff2b35;
    font-size: 14px;
}

#div-button-uc-mobile{
    display: none;
}

#btn-ver-detalhes-uc-mobile{
    display: none;
}

#flex-div-cadastrar-uc{
    display: flex;
    flex-direction: column;
}

.ocr-header-description-p {
    display: none;
}

@media (max-width: 768px) {

    #vincular-uc-opp-btn{
        font-size: 12px;
    }

    #modal-vincular-uc-custom .btn-ver-detalhes-uc{
        display: none;
    }

    #btn-ver-detalhes-uc{
        display: none;
    }

    #modal-vincular-uc-custom .modal-uc-content {
        width: 90vw !important;
        position: relative;
        right: 50%;
        top: -50%;
    }

	#btn-ver-detalhes-uc-mobile{
		width: 80% !important;
        height: 32px;
		visibility: visible;
        border: 1px solid #6D32FF !important;
        font-size: 12px;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        gap: 5px;
	}

    .modal-dialog .modal-uc-dialog{
        margin : 0px
    }

    #modal-vincular-uc-custom .modal-uc-subtitle {
        font-size: 18px;
    }  

    #modal-vincular-uc-custom .uc-modal-item{
        display: flex !important;
    }

    #modal-vincular-uc-custom .uc-modal-check{
        margin-top: 20% !important;
    }

    #modal-vincular-uc-custom .uc-modal-campo label{
        font-size : 10px !important;
    }

    #modal-vincular-uc-custom .uc-modal-campo span {
        font-size : 12px !important;
    }

    #modal-vincular-uc-custom .uc-modal-campo{
        gap: 0px;
    }
    
    #modal-vincular-uc-custom .uc-modal-item {
        margin-bottom: 0px !important;
    }

    #modal-vincular-uc-custom .modal-uc-footer {
        display: flex;
        flex-direction: column-reverse;
    }

	#div-button-uc-mobile{
		background-color: #F1F4F4;
		display: flex;
		justify-content: center;
		margin-bottom: 8px;
	}

	#modal-cadastro-uc-ocr .ocr-modal{
		width: 90vw;
        max-height: 95vh;
        overflow : auto
	}

    #modal-ucs-cadastradas .body-modal-ucs{
        gap:0px;
    }

    .ocr-header-description-p {
        display: block;
    }

    .ocr-modal-header {    
        padding-right: 8px !important;
    }
    
    .ocr-modal-icon{
        width: 40px !important;
        height: 40px !important;
        background: #F1F4F4 !important;
    }

    .ocr-modal{
        padding: 16px 16px;
    }

}

@media (max-width: 900px) {

    #modal-vincular-uc-custom .btn-ver-detalhes-uc{
        display: none;
    }

    #btn-ver-detalhes-uc{
        display: none;
    }


	#btn-ver-detalhes-uc-mobile{
		width: 80% !important;
        height: 32px;
		visibility: visible;
        border: 1px solid #6D32FF !important;
        font-size: 12px;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        gap: 5px;
	}
}
.campo-fiscal-desabilitado,
.campo-fiscal-desabilitado:disabled {
    background-color: #eef1f3 !important;
    border-color: #d5dcdf !important;
    color: #8a9aa0 !important;
    cursor: not-allowed;
    opacity: 1;
}
#modal-cadastrar-nova-uc .campo-bloqueado-cnpj-conta:disabled {
    background-color: #f2f2f2 !important;
    color: #6b6b6b !important;
    cursor: not-allowed;
    opacity: 1;
}