.lat46-gdpr-data-request {
	max-width: 520px;
}

.lat46-gdpr-data-request h3 {
	margin-top: 0;
}

.lat46-gdpr-form__field {
	margin-bottom: 1.25rem;
}

.lat46-gdpr-form__field label {
	display: block;
	font-weight: 600;
	margin-bottom: .4rem;
}

.lat46-gdpr-input {
	width: 100%;
	padding: .5rem .75rem;
	border: 1px solid #ccc;
	border-radius: 4px;
	font-size: 1rem;
	box-sizing: border-box;
}

.lat46-gdpr-radio-group {
	display: flex;
	flex-direction: column;
	gap: .5rem;
}

.lat46-gdpr-radio-group label {
	font-weight: normal;
	display: flex;
	align-items: center;
	gap: .5rem;
}

.lat46-gdpr-btn--submit {
	background: #0073aa;
	color: #fff;
	padding: .6rem 1.5rem;
	border: none;
	border-radius: 4px;
	font-size: 1rem;
	cursor: pointer;
}

.lat46-gdpr-btn--submit:disabled {
	opacity: .6;
	cursor: not-allowed;
}

.lat46-gdpr-feedback {
	padding: .75rem 1rem;
	border-radius: 4px;
	margin-bottom: 1rem;
	font-size: .9rem;
}

.lat46-gdpr-feedback--success {
	background: #d4edda;
	border: 1px solid #c3e6cb;
	color: #155724;
}

.lat46-gdpr-feedback--error {
	background: #f8d7da;
	border: 1px solid #f5c6cb;
	color: #721c24;
}

/* Filtri admin */
.lat46-gdpr-filters {
	display: flex;
	gap: .5rem;
	align-items: center;
	flex-wrap: wrap;
	margin: 1rem 0 .5rem;
}

/* Badge stato richieste */
.lat46-dr-badge {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 12px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .3px;
	white-space: nowrap;
}
.lat46-dr-badge--pending {
	background: #fff3cd;
	color: #856404;
	border: 1px solid #ffc107;
}
.lat46-dr-badge--in_progress {
	background: #cce5ff;
	color: #004085;
	border: 1px solid #4da3ff;
}
.lat46-dr-badge--completed {
	background: #d4edda;
	color: #155724;
	border: 1px solid #28a745;
}
.lat46-dr-badge--rejected {
	background: #f8d7da;
	color: #721c24;
	border: 1px solid #dc3545;
}

/* Warning box scadenza 25 giorni */
.lat46-dr-warning-box {
	display: flex;
	align-items: center;
	gap: .5rem;
	background: #fff3e0;
	border: 1px solid #f59e0b;
	color: #92400e;
	padding: .75rem 1rem;
	border-radius: 6px;
	margin-bottom: 1rem;
	font-size: .9rem;
}
.lat46-dr-warning-box .dashicons {
	color: #f59e0b;
	flex-shrink: 0;
}

/* Riga in scadenza */
.lat46-dr-row--expiring td {
	background: #fffbeb;
}

/* Pannello dettaglio inline */
.lat46-dr-detail-inner {
	padding: 1rem 1.25rem 1.25rem;
	background: #f9fafb;
	border-top: 1px solid #e5e7eb;
}

/* Form frontend responsive */
@media (max-width: 600px) {
	.lat46-gdpr-data-request {
		max-width: 100%;
	}
	.lat46-gdpr-btn--submit {
		width: 100%;
	}
}
