.vgl-spec-table {
    width: 100%;
    border: 1px solid var(--vgl-color-border);
    border-radius: var(--vgl-radius);
    overflow: hidden;
    font-size: var(--vgl-font-size-sm);
}

.vgl-spec-table th,
.vgl-spec-table td {
    padding: var(--vgl-space-3) var(--vgl-space-4);
    border-bottom: 1px solid var(--vgl-color-border);
    text-align: left;
    vertical-align: top;
}

.vgl-spec-table th {
    background: var(--vgl-color-bg-alt);
    font-weight: 600;
    color: var(--vgl-color-text);
}

.vgl-spec-table tr:last-child th,
.vgl-spec-table tr:last-child td {
    border-bottom: none;
}

.vgl-spec-table__group th {
    background: var(--vgl-color-primary-soft);
    color: var(--vgl-color-primary);
    font-size: var(--vgl-font-size-base);
}

.vgl-spec-table td.differs {
    background: var(--vgl-color-accent-soft);
}

.vgl-spec-table--compare th:first-child,
.vgl-spec-table--compare td:first-child {
    font-weight: 600;
    width: 30%;
}

/* Replaces Table Maker output */
.wpsm-table,
table.wpsm-table {
    width: 100%;
    border-collapse: collapse;
    margin-block: var(--vgl-space-4);
}

.wpsm-table th,
.wpsm-table td {
    padding: var(--vgl-space-3);
    border: 1px solid var(--vgl-color-border);
}

.wpsm-table th {
    background: var(--vgl-color-bg-alt);
    font-weight: 600;
}

/* Native theme table renderer */
.vgl-table {
    width: 100%;
    border: 1px solid var(--vgl-color-border);
    border-radius: var(--vgl-radius);
    overflow: hidden;
}
