.comp-table-wrapper {
    width: 100%;
    overflow-x: auto;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    background: #ffffff;
}

.comp-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
}

.comp-table th, 
.comp-table td {
    padding: 16px 24px;
    border-bottom: 1px solid #f1f5f9;
}

.comp-table-thead th {
    font-weight: 600;
}

.comp-table-tbody tr {
    transition: background-color 0.2s ease;
}

.comp-table-tbody td.cell-char {
    font-weight: 500;
}

.comp-table-tbody td.cell-val {
    text-align: center;
}

/* Ensure column headers match cell alignment for values */
.comp-table-thead th:not(:first-child) {
    text-align: center;
}

/* Custom rounded icons */
.comp-icon-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 2px solid currentColor;
    font-weight: bold;
    aspect-ratio: 1 / 1;
}
