/* ESTILOS CIENTÍFICOS DO MÓDULO DE SELEÇÃO EM MASSA GPL */

/* ======================================================= */
/* 1. BOTÃO DO TOPO (GATILHO)                              */
/* ======================================================= */
#btn-gpl-mass-action {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

#btn-gpl-mass-action.is-danger-active {
    border-color: #ef4444 !important;
    background: rgba(239, 68, 68, 0.15) !important;
    box-shadow: 0 0 20px rgba(239, 68, 68, 0.4), inset 0 0 10px rgba(239, 68, 68, 0.2) !important;
    animation: dangerPulse 2s infinite;
}

#btn-gpl-mass-action.is-danger-active i {
    color: #4ade80 !important;
    text-shadow: 0 0 10px rgba(74, 222, 128, 0.5);
    transition: all 0.3s ease;
}

#btn-gpl-mass-action.is-danger-active:hover i {
    color: #ffffff !important;
    text-shadow: 0 0 15px rgba(255, 255, 255, 0.9);
}

@keyframes dangerPulse {
    0%, 100% { box-shadow: 0 0 20px rgba(239, 68, 68, 0.4), inset 0 0 10px rgba(239, 68, 68, 0.2); }
    50% { box-shadow: 0 0 30px rgba(239, 68, 68, 0.7), inset 0 0 15px rgba(239, 68, 68, 0.4); }
}

/* ======================================================= */
/* 2. COMPORTAMENTO DOS CARDS NO MODO DE SELEÇÃO           */
/* ======================================================= */
.gpl-mass-checkbox {
    position: absolute;
    top: 10px;
    left: 10px; 
    width: 28px;
    height: 28px;
    background: rgba(15, 23, 42, 0.9);
    border: 2px solid #64748b;
    border-radius: 8px;
    display: none; 
    align-items: center;
    justify-content: center;
    z-index: 10;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 6px rgba(0,0,0,0.5);
}

.gpl-mass-checkbox i {
    color: #ffffff;
    font-size: 0.85rem;
    opacity: 0; 
    transform: scale(0.5);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.mass-select-mode .gpl-mass-checkbox { display: flex; }
.mass-select-mode .gpl-card { cursor: cell !important; }

.mass-select-mode .gpl-card:hover {
    border-color: #f87171 !important; 
    box-shadow: 0 0 15px rgba(239, 68, 68, 0.2) !important;
}

.mass-select-mode .gpl-card:hover .gpl-card-info {
    border-top-color: #f87171 !important;
}

/* ======================================================= */
/* 3. CARD SELECIONADO (VERMELHO MAGICO E CHECKBOX ATIVO)  */
/* ======================================================= */
.mass-select-mode .gpl-card.mass-selected {
    border-color: #ef4444 !important;
    box-shadow: 0 0 25px rgba(239, 68, 68, 0.5), inset 0 0 0 2px #ef4444 !important;
    transform: scale(0.98); 
    background: rgba(239, 68, 68, 0.05); 
}

.mass-select-mode .gpl-card.mass-selected .gpl-mass-checkbox {
    background: #ef4444;
    border-color: #ef4444;
    box-shadow: 0 0 15px rgba(239, 68, 68, 0.6);
}

.mass-select-mode .gpl-card.mass-selected .gpl-mass-checkbox i {
    opacity: 1;
    transform: scale(1);
}

.mass-select-mode .gpl-card.mass-selected .gpl-card-info,
.mass-select-mode .gpl-card.mass-selected:hover .gpl-card-info {
    border-top-color: #ef4444 !important; 
}

/* ======================================================= */
/* 4. BARRA FLUTUANTE DE AÇÃO E BADGE CONTADOR             */
/* ======================================================= */
.gpl-mass-floater {
    position: fixed;
    bottom: -100px; 
    left: 50%;
    transform: translateX(-50%);
    background: rgba(15, 23, 42, 0.95);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(239, 68, 68, 0.4);
    border-radius: 100px; 
    padding: 10px 14px; 
    z-index: 2147483647;
    box-shadow: 0 15px 35px rgba(0,0,0,0.8), 0 0 25px rgba(239, 68, 68, 0.2);
    transition: bottom 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.gpl-mass-floater.show { bottom: 30px; }

.floater-content { 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    gap: 12px; /* Espaço entre o Badge e o Botão Lixeira */
    width: 100%; 
}

/* NOVO: Badge Científico Isolado */
.floater-badge {
    background: #0f172a;
    color: #ffffff;
    border: 2px solid #10b981; /* Borda Verde Mágica */
    border-radius: 14px;
    padding: 8px 18px;
    font-size: 1.2rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 15px rgba(16, 185, 129, 0.4), inset 0 0 8px rgba(16, 185, 129, 0.2);
    text-shadow: 0 0 8px rgba(255, 255, 255, 0.6);
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    min-width: 55px;
}

/* Badge Cinza e Apagado quando não tem itens */
.floater-badge.disabled {
    border-color: #334155;
    background: #1e293b;
    color: #64748b;
    box-shadow: none;
    text-shadow: none;
}

.floater-btn {
    background: #ef4444;
    color: white;
    border: none;
    padding: 12px 28px;
    border-radius: 50px;
    font-weight: 700;
    font-size: 1.05rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 0 15px rgba(239, 68, 68, 0.4);
}
.floater-btn:hover:not(.disabled) { 
    background: #dc2626; 
    box-shadow: 0 0 25px rgba(239, 68, 68, 0.6); 
    transform: scale(1.05); 
}
.floater-btn.disabled { 
    background: #475569; 
    color: #94a3b8; 
    box-shadow: none; 
    cursor: not-allowed; 
    opacity: 0.6; 
}

@media (max-width: 640px) {
    .gpl-mass-floater { width: 90vw; border-radius: 20px; padding: 12px; }
    .floater-content { flex-direction: row; gap: 8px; }
    .floater-badge { padding: 8px 14px; font-size: 1rem; min-width: 45px; }
    .floater-btn { flex-grow: 1; font-size: 1rem; padding: 12px 10px; }
}