.ca-anuidades-wrapper {
	margin: 15px 0;
}

.ca-anuidades-title {
	display: block;
	font-weight: 600;
	margin-bottom: 8px;
}

.ca-anuidade-row {
	display: grid;
	grid-template-columns: 90px 140px 110px 110px 120px 140px 1fr 90px;
	gap: 8px;
	align-items: center;
	margin-bottom: 8px;
	padding: 8px;
	background: #f8f8f8;
	border: 1px solid #e0e0e0;
	border-radius: 4px;
}

.ca-anuidade-header {
	background: transparent;
	border: none;
	padding: 0 8px;
	margin-bottom: 4px;
	font-weight: 600;
	font-size: 12px;
	text-transform: uppercase;
	color: #555;
}

.ca-anuidades-aviso {
	font-size: 12px;
	color: #666;
	font-style: italic;
	margin-top: 6px;
}

.ca-anuidades-tabela {
	width: 100%;
	border-collapse: collapse;
}

.ca-anuidades-tabela th,
.ca-anuidades-tabela td {
	border: 1px solid #e0e0e0;
	padding: 6px 8px;
	text-align: left;
	font-size: 13px;
}

.ca-anuidades-tabela th {
	background: #f2f2f2;
}

.ca-anuidade-row input,
.ca-anuidade-row select {
	width: 100%;
	box-sizing: border-box;
}

.ca-anuidade-row input[readonly] {
	background: #eee;
}

.ca-anuidade-remover {
	background: #d63638;
	color: #fff;
	border: none;
	border-radius: 3px;
	padding: 6px 8px;
	cursor: pointer;
}

#ca-anuidades-add {
	margin-top: 4px;
	color: #252525;
}

.ca-campo {
	width: 100%;
}

@media (max-width: 782px) {
	.ca-anuidade-row {
		grid-template-columns: 1fr 1fr;
	}

	.ca-anuidade-header {
		display: none;
	}

	.ca-campo[data-label]::before {
		content: attr(data-label);
		display: block;
		font-size: 11px;
		font-weight: 600;
		text-transform: uppercase;
		color: #777;
		margin-bottom: 2px;
	}
}

.ca-anuidades-wrapper {
    margin: 20px 0;
    padding: 15px;
    border: 1px solid #ddd;
    border-radius: 4px;
    background: #f9f9f9;
}

.ca-anuidades-title {
    display: block;
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 15px;
}

.ca-anuidade-row {
    display: grid;
    grid-template-columns: 100px 130px 130px 130px 120px 130px 200px 80px;
    gap: 8px;
    align-items: center;
    padding: 10px;
    background: white;
    border-radius: 4px;
    margin-bottom: 8px;
    border: 1px solid #eee;
}

.ca-anuidade-header {
    background: #f0f0f0;
    font-weight: bold;
    font-size: 12px;
    padding: 8px 10px;
    margin-bottom: 10px;
    border: 1px solid #ddd;
}

.ca-anuidade-header span {
    text-align: center;
}

.ca-anuidade-row .ca-campo {
    display: flex;
    flex-direction: column;
}

.ca-anuidade-row .ca-campo select,
.ca-anuidade-row .ca-campo input {
    width: 100%;
    padding: 5px 8px;
    border: 1px solid #ddd;
    border-radius: 3px;
    font-size: 13px;
}

.ca-anuidade-row .ca-campo input[readonly] {
    background: #f5f5f5;
    cursor: not-allowed;
}

.ca-anuidade-row .ca-campo::before {
    content: attr(data-label);
    font-size: 10px;
    color: #666;
    margin-bottom: 2px;
    font-weight: 500;
}

.ca-anuidade-remover {
    background: #dc3545;
    color: white;
    border: none;
    padding: 5px 12px;
    border-radius: 3px;
    cursor: pointer;
    font-size: 12px;
    transition:
