/* Container Principal */
.sc-container { font-family: 'Segoe UI', Tahoma, sans-serif; max-width: 1200px; margin: 20px auto; background: #fff; padding: 25px; border: 1px solid #ddd; border-radius: 8px; box-shadow: 0 4px 12px rgba(0,0,0,0.1); }
.sc-title { color: #004d26; border-bottom: 2px solid #004d26; padding-bottom: 10px; margin-bottom: 20px; text-transform: uppercase; font-size: 20px; }

/* Grids do Formulário */
.sc-grid-3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 15px; margin-bottom: 15px; }
.sc-grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; margin-bottom: 15px; }
.sc-label { display: block; font-size: 11px; font-weight: bold; color: #666; text-transform: uppercase; margin-bottom: 5px; }
.sc-input-text { width: 100%; padding: 10px; border: 1px solid #ccc; border-radius: 4px; box-sizing: border-box; }
.sc-readonly { background: #f4f4f4; cursor: not-allowed; }
.sc-calc-field { background: #f0fff4 !important; border: 1px solid #004d26 !important; color: #004d26; font-weight: bold; }

/* Bônus - Uma linha só para não ocupar espaço */
.sc-bonus-section { background: #f9f9f9; padding: 15px; border: 1px solid #eee; border-radius: 6px; 
    margin: 20px 0; }
.sc-bonus-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }

/* Container que envolve o box de soma */
.sc-soma-wrapper {
    display: flex;          /* Ativa o modo flexível */
    justify-content: flex-end; /* Empurra todo o conteúdo para a direita */
    width: 100%;            /* Garante que ocupe a largura total */
    clear: both;            /* Previne flutuações residuais */
}

/* O box da soma em si */
.sc-soma-box {
    background: #004d26;
    color: #fff;
    padding: 12px 25px;
    border-radius: 4px;
    font-weight: bold;
    font-size: 18px;
    display: inline-block;  /* Faz o box ter o tamanho apenas do texto */
    text-align: right;      /* Alinha o texto interno (se houver quebra) */
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    margin-top: 21px;
}

/* TABELA - DISTRIBUIÇÃO RIGIDAMENTE EQUILIBRADA */
.sc-table-wrapper { margin-top: 30px; overflow-x: auto; }
.sc-table { width: 100%; border-collapse: collapse; table-layout: fixed; border: 1px solid #eee; }
.sc-table th { background: #f8f9fa; padding: 12px 8px; border-bottom: 2px solid #004d26; font-size: 12px; text-align: left; color: #333; }
.sc-table td { padding: 10px 8px; border-bottom: 1px solid #eee; font-size: 13px; vertical-align: middle; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* Definição de Larguras (Garantia de não quebra) */
.col-id { width: 50px; }
.col-data { width: 95px; }
.col-nome { width: auto; } /* Ocupa o que sobrar */
.col-email { width: 22%; } /* Proporção fixa para equilíbrio */
.col-vol { width: 80px; text-align: right; }
.col-val { width: 110px; text-align: right; }
.col-actions { width: 80px; text-align: center; }

/* Paginação */
.sc-pagination { margin-top: 20px; display: flex; justify-content: center; gap: 5px; }
.sc-page-link { padding: 8px 12px; border: 1px solid #ddd; text-decoration: none; color: #004d26; border-radius: 4px; font-weight: bold; }
.sc-page-current { background: #004d26; color: #fff; border-color: #004d26; }

/* Botões */
.sc-btn-submit { background: #FFB900; color: #000; border: none; width: 100%; padding: 16px; font-weight: bold; cursor: pointer; border-radius: 4px; text-transform: uppercase; font-size: 15px; }
.dashicons { vertical-align: middle; }


/* Container da linha de senha do UAP */
.uap-form-line-fr {
    position: relative !important;
    display: block !important;
}

/* Ajuste do campo de input para o texto não ficar embaixo do ícone */
#uap_login_password {
    width: 100% !important;
    padding-right: 45px !important; /* Espaço para o ícone */
    box-sizing: border-box !important;
}

/* Posicionamento do botão/ícone de visão */
.uap-form-line-fr .uap-hide-pw {
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important; /* Centralização vertical perfeita */
    cursor: pointer !important;
    z-index: 99 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: none !important;
    border: none !important;
    height: auto !important;
    margin: 0 !important;
}

/* Ajuste do ícone Dashicon dentro do botão */
.uap-form-line-fr .uap-hide-pw .dashicons, 
.uap-form-line-fr .uap-hide-pw .fa-uap {
    font-size: 20px !important;
    width: 20px !important;
    height: 20px !important;
    color: #666 !important; /* Cor suave para o ícone */
}

/* tela de login afiliados */
/* Remove qualquer ícone flutuante indesejado que o plugin possa injetar */
.uap-form-line-fr i.fa-pass-uap {
    position: absolute !important;
    left: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #999;
    z-index: 5;
}

/* Se houver ícone na esquerda, empurra o texto para a direita */
.uap-form-line-fr i.fa-pass-uap + input {
    padding-left: 35px !important;
}


/* Centraliza o conteúdo do box de erro */
.sc-box-center {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-height: 300px; /* Garante um respiro vertical */
    margin: 50px auto !important; /* Afasta do topo da página */
}

/* Espaçador para o botão */
.sc-spacer-btn {
    margin-top: 25px;
}

/* Estilo do botão de login para se diferenciar do texto */
.sc-btn-login {
    background-color: #004d26;
    color: #ffffff !important;
    padding: 12px 25px;
    text-decoration: none !important;
    border-radius: 4px;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 14px;
    transition: background 0.3s ease;
    display: inline-block;
}

.sc-btn-login:hover {
    background-color: #00331a;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}


.sc-action-row {
    display: flex;
    justify-content: flex-end; /* Alinha o conteúdo à direita */
    margin-top: 20px;
    width: 100%;
}

.sc-btn-submit {
    background: #FFB900;
    color: black;
    border: none;
    padding: 16px 40px;
    font-weight: bold;
    cursor: pointer;
    border-radius: 4px;
    text-transform: uppercase;
    width: auto; /* Garante que ele não estique */
}