/* ==========================================================================
   Tabela de Cotas Scoped (CotaLinks Guardian - Final Version)
   ========================================================================== */

/* Escopo de Variáveis: Só existem dentro do wrapper */
.cotas-table-wrapper {
    --cl-table-border: #e2e8f0;
    --cl-table-head-bg: #f8fafc;
    --cl-table-stripe: #f1f5f9;
    --cl-text-main: #334155;
    --cl-text-muted: #64748b;
    --cl-primary: #0f172a;
    --cl-green: #059669;
    --cl-blue-bg: #eff6ff;
    --cl-blue-text: #1d4ed8;
    
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border: 1px solid var(--cl-table-border);
    border-radius: 8px;
    background: #fff;
    margin-bottom: 20px;
    position: relative;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

/* Tabela Base */
.cotas-table-wrapper .cotas-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    min-width: 800px; /* Garante estrutura no desktop */
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 0.85rem;
    color: var(--cl-text-main);
}

/* Células e Cabeçalho */
.cotas-table-wrapper .cotas-table th,
.cotas-table-wrapper .cotas-table td {
    padding: 10px 12px;
    border-bottom: 1px solid var(--cl-table-border);
    vertical-align: middle;
    text-align: center;
    white-space: normal;
    line-height: 1.4;
    word-break: break-word;
}

.cotas-table-wrapper .cotas-table th {
    background-color: var(--cl-table-head-bg);
    font-weight: 600;
    color: var(--cl-text-muted);
    text-transform: uppercase;
    font-size: 0.7rem;
    letter-spacing: 0.5px;
    position: sticky;
    top: 0;
    z-index: 10;
    height: 40px;
    white-space: nowrap; /* Cabeçalho sempre 1 linha */
}

/* --- Colunas Fixas (Sticky) --- */
.cotas-table-wrapper .is-sticky-left {
    position: sticky;
    left: 0;
    background-color: #fff;
    z-index: 11;
    width: 38px;
    text-align: center;
    border-right: 1px solid var(--cl-table-border);
    padding: 0 !important;
}
.cotas-table-wrapper .cotas-table th.is-sticky-left {
    background-color: var(--cl-table-head-bg);
    z-index: 20;
}

.cotas-table-wrapper .is-sticky-right {
    position: sticky;
    right: 0;
    background-color: #fff;
    z-index: 11;
    border-left: 1px solid var(--cl-table-border);
    text-align: center;
    box-shadow: -4px 0 8px -4px rgba(0,0,0,0.05);
}
.cotas-table-wrapper .cotas-table th.is-sticky-right {
    background-color: var(--cl-table-head-bg);
    z-index: 20;
}

/* --- Estilização de Colunas --- */

/* Segmento */
.cotas-table-wrapper .col-seg { width: 40px; text-align: center; padding: 0 5px; }
.cotas-table-wrapper .cota-segmento-icon svg { width: 18px; height: 18px; fill: var(--cl-text-muted); margin-top: 4px; }

/* Administradora */
.cotas-table-wrapper .col-adm .cota-adm {
    font-weight: 600;
    color: var(--cl-primary);
    display: block;
    font-size: 0.8rem;
    line-height: 1.3;
}

/* Tags de Combo */
.cotas-table-wrapper .cota-pill-combo {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    background: var(--cl-blue-bg);
    color: var(--cl-blue-text);
    font-size: 0.65rem;
    padding: 2px 6px;
    border-radius: 4px;
    font-weight: 600;
    text-transform: uppercase;
    margin-top: 4px; 
    white-space: nowrap;
}
.cotas-table-wrapper .cota-pill-dot { width: 4px; height: 4px; background: currentColor; border-radius: 50%; }

/* Valores */
.cotas-table-wrapper .col-valor { font-variant-numeric: tabular-nums; }
.cotas-table-wrapper .cota-credito {
    color: var(--cl-primary);
    font-weight: 700;
    font-size: 0.9rem;
}
.cotas-table-wrapper .cota-entrada {
    color: var(--cl-green);
    font-weight: 600;
    font-size: 0.85rem;
}

/* Parcelas e Combos */
.cotas-table-wrapper .cotas-table-parcela {
    min-width: 120px; 
    max-width: 220px;
}
.cotas-table-wrapper .cota-parcela {
    font-size: 0.8rem;
    color: var(--cl-text-main);
    display: block;
}

/* --- Botões --- */
.cotas-table-wrapper .cotas-table-buttons {
    display: flex;
    gap: 6px;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

.cotas-table-wrapper .btn-sm {
    padding: 4px 8px;
    min-height: 28px;
    font-size: 0.75rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.2s;
    cursor: pointer;
    border: 1px solid transparent;
}

.cotas-table-wrapper .btn-ghost { background: transparent; color: var(--cl-text-muted); border: 1px solid #cbd5e1; }
.cotas-table-wrapper .btn-light { background: #f8fafc; color: var(--cl-text-main); border: 1px solid #cbd5e1; }
.cotas-table-wrapper .btn-light:hover { background: #e2e8f0; }

.cotas-table-wrapper .btn-negociar-disponivel {
    background: #25D366;
    color: #fff;
    border: 1px solid #25D366;
}
.cotas-table-wrapper .btn-negociar-disponivel:hover { background: #1ebc57; border-color: #1ebc57; color: #fff; }
.cotas-table-wrapper .btn-negociar-disponivel svg { width: 14px; height: 14px; fill: #fff; }

.cotas-table-wrapper .btn-disabled { opacity: 0.5; cursor: not-allowed; background: #f1f5f9; color: #94a3b8; border: 1px solid #e2e8f0; }

/* ==========================================================================
   RESPONSIVIDADE (Mobile < 768px)
   ========================================================================== */
@media (max-width: 768px) {
    .cotas-table-wrapper {
        margin-left: -15px;
        margin-right: -15px;
        width: calc(100% + 30px);
        border-radius: 0;
        border-left: 0;
        border-right: 0;
    }

    .cotas-table-wrapper .cotas-table {
        min-width: 600px; /* Permite que a tabela encolha um pouco mais */
    }

    .cotas-table-wrapper .cotas-table th, 
    .cotas-table-wrapper .cotas-table td {
        padding: 8px 4px; /* Padding compacto */
        font-size: 0.75rem; /* Fonte reduzida */
    }

    /* Colunas: Ajuste Fino Mobile */
    .cotas-table-wrapper .col-adm .cota-adm { font-size: 0.7rem; }
    .cotas-table-wrapper .cota-credito { font-size: 0.8rem; }
    .cotas-table-wrapper .cota-entrada { font-size: 0.75rem; }
    
    .cotas-table-wrapper .cotas-table-parcela { min-width: 100px; }
    .cotas-table-wrapper .cota-parcela { line-height: 1.2; }

    /* Ocultar Colunas Secundárias */
    .cotas-table-wrapper .col-venc { display: none; }
    .cotas-table-wrapper .col-parc { display: none; }

    /* Sticky Adjustment */
    .cotas-table-wrapper .is-sticky-left { width: 32px; }
    
    /* Botões Mobile: Simplificação Radical */
    .cotas-table-wrapper .cotas-table-buttons { gap: 4px; }
    .cotas-table-wrapper .cotas-table-buttons .btn-sm { padding: 4px; }
    
    /* Esconde texto "Detalhes", mostra só ícone */
    .cotas-table-wrapper .cotas-table-buttons .btn-sm span { display: none; }
    
    /* Esconde botão de negociar (WhatsApp) */
    .cotas-table-wrapper .btn-negociar-disponivel { display: none; }
}