/* =========================================================
   BOTÕES PADRÃO 2026 - PRIMEFACES 4
   Classes oficiais:
   - btconfirma = ação principal
   - btcorfraca = ação secundária
   ========================================================= */


/* =========================================================
   BASE DOS BOTÕES
   ========================================================= */
.btconfirma,
.btcorfraca,
.ui-button.btconfirma,
.ui-button.btcorfraca {
    font-family: "Inter", "Segoe UI", Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-shadow: none !important;
    border-radius: 10px !important;
    border: 1px solid transparent !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08) !important;
    transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease !important;
    vertical-align: middle !important;
    overflow: hidden !important;
    height: 42px !important;
    line-height: 42px !important;
    min-width: 42px !important;
}

/* principal */
.btconfirma,
.ui-button.btconfirma {
    background: #5557CD !important;
    border-color: #5557CD !important;
    color: #FFFFFF !important;
}

.btconfirma:hover,
.ui-button.btconfirma:hover {
    background: #4547A9 !important;
    border-color: #4547A9 !important;
    color: #FFFFFF !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.12) !important;
    transform: translateY(-1px) !important;
}

/* secundário */
.btcorfraca,
.ui-button.btcorfraca {
    background: #EEF0FF !important;
    border-color: #D6DAFF !important;
    color: #5557CD !important;
}

.btcorfraca:hover,
.ui-button.btcorfraca:hover {
    background: #E0E4FF !important;
    border-color: #C9CCFA !important;
    color: #4547A9 !important;
    box-shadow: 0 6px 14px rgba(15, 23, 42, 0.08) !important;
    transform: translateY(-1px) !important;
}


/* =========================================================
   ESTRUTURA INTERNA PF4
   ========================================================= */

.ui-button.btconfirma .ui-button-text,
.ui-button.btcorfraca .ui-button-text {
    display: block !important;
    line-height: 40px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-right: 1.1rem !important;
    white-space: nowrap !important;
}

/* quando o botão tiver ícone à esquerda, o espaçamento vai no TEXTO */
.ui-button.btconfirma.ui-button-text-icon-left .ui-button-text,
.ui-button.btcorfraca.ui-button-text-icon-left .ui-button-text,
.ui-button.btconfirma .ui-button-text.ui-button-text-icon-left,
.ui-button.btcorfraca .ui-button-text.ui-button-text-icon-left {
    padding-left: 2.9em !important;
}

/* botão sem ícone */
.ui-button.btconfirma .ui-button-text-only,
.ui-button.btcorfraca .ui-button-text-only {
    padding-left: 4em !important;
    padding-right: 1rem !important;
}

.ui-button.btconfirma .ui-button-icon-left,
.ui-button.btcorfraca .ui-button-icon-left {
    left: 1.15rem !important;
    margin-top: -8px !important;
    width: 16px !important;
    height: 16px !important;
}

/* ícone à direita */
.ui-button.btconfirma .ui-button-icon-right,
.ui-button.btcorfraca .ui-button-icon-right {
    right: 1rem !important;
    margin-top: -8px !important;
    width: 16px !important;
    height: 16px !important;
}

/* Font Awesome */
.ui-button.btconfirma .ui-button-icon-left.fa,
.ui-button.btconfirma .ui-button-icon-left.fas,
.ui-button.btconfirma .ui-button-icon-left.fa-solid,
.ui-button.btcorfraca .ui-button-icon-left.fa,
.ui-button.btcorfraca .ui-button-icon-left.fas,
.ui-button.btcorfraca .ui-button-icon-left.fa-solid,
.ui-button.btconfirma .ui-button-icon-right.fa,
.ui-button.btconfirma .ui-button-icon-right.fas,
.ui-button.btconfirma .ui-button-icon-right.fa-solid,
.ui-button.btcorfraca .ui-button-icon-right.fa,
.ui-button.btcorfraca .ui-button-icon-right.fas,
.ui-button.btcorfraca .ui-button-icon-right.fa-solid {
    font-size: 14px !important;
    line-height: 16px !important;
    text-indent: 0 !important;
    overflow: visible !important;
    background-image: none !important;
}

.ui-button.btconfirma .ui-icon,
.ui-button.btcorfraca .ui-icon {
    overflow: visible !important;
}


/* =========================================================
   BOTÕES SÓ COM ÍCONE
   Evita ficarem mais altos do que largos
   ========================================================= */
.ui-button.btconfirma .ui-button-text-icon-left:empty,
.ui-button.btcorfraca .ui-button-text-icon-left:empty,
.ui-button.btconfirma .ui-button-text-icon-right:empty,
.ui-button.btcorfraca .ui-button-text-icon-right:empty,
.ui-button.btconfirma .ui-button-text-only:empty,
.ui-button.btcorfraca .ui-button-text-only:empty {
    padding: 0 !important;
}

/* quando o botão é usado como botão pequeno de tabela */
.ui-button.btconfirma.ui-button-icon-only,
.ui-button.btcorfraca.ui-button-icon-only {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    padding: 0 !important;
}

.ui-button.btconfirma.ui-button-icon-only .ui-button-text,
.ui-button.btcorfraca.ui-button-icon-only .ui-button-text {
    padding: 0 !important;
    line-height: 42px !important;
}

.ui-button.btconfirma.ui-button-icon-only .ui-button-icon-left,
.ui-button.btcorfraca.ui-button-icon-only .ui-button-icon-left,
.ui-button.btconfirma.ui-button-icon-only .ui-button-icon-right,
.ui-button.btcorfraca.ui-button-icon-only .ui-button-icon-right {
    left: 50% !important;
    right: auto !important;
    margin-left: -8px !important;
    margin-top: -8px !important;
}

/* fallback para botões arredondados de tabela */
.ui-button.ui-button-icon-only,
.ui-button.p-button-icon-only,
.ui-button.p-button-rounded {
    min-width: 42px !important;
}

.ui-button.ui-button-icon-only.btconfirma,
.ui-button.ui-button-icon-only.btcorfraca,
.ui-button.p-button-rounded.btconfirma,
.ui-button.p-button-rounded.btcorfraca {
    width: 42px !important;
    height: 42px !important;
    padding: 0 !important;
}


/* =========================================================
   FOCO / ATIVO / DISABLED
   ========================================================= */
.ui-button.btconfirma:focus,
.ui-button.btcorfraca:focus,
.ui-button.btconfirma.ui-state-focus,
.ui-button.btcorfraca.ui-state-focus {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(129, 140, 248, 0.18) !important;
}

.ui-button.btconfirma:active,
.ui-button.btconfirma.ui-state-active {
    background: #4547A9 !important;
    border-color: #4547A9 !important;
}

.ui-button.btcorfraca:active,
.ui-button.btcorfraca.ui-state-active {
    background: #DDE2FF !important;
    border-color: #C9CCFA !important;
}

.ui-button.btconfirma.ui-state-disabled,
.ui-button.btcorfraca.ui-state-disabled,
.ui-button.btconfirma[disabled],
.ui-button.btcorfraca[disabled] {
    opacity: .65 !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
    transform: none !important;
}