.epsa-message,
.epsa-empty,
.epsa-status {
	background: #061327;
	border: 1px solid rgba(16, 185, 232, 0.25);
	border-radius: 18px;
	color: #eaf7ff;
	margin: 18px 0;
	padding: 20px;
}

.epsa-message strong {
	display: block;
	font-size: 20px;
	margin-bottom: 8px;
}

.epsa-message p {
	color: #bed4e5;
	margin: 0 0 14px;
}

.epsa-button,
.epsa-unlink-device {
	background: linear-gradient(135deg, #00a7d8, #0bbce8);
	border: 0;
	border-radius: 999px;
	box-shadow: 0 12px 28px rgba(0, 167, 216, 0.25);
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	font-weight: 800;
	padding: 10px 16px;
	text-decoration: none;
}

.epsa-unlink-device,
.epsa-unlink-device:visited,
.epsa-unlink-device:hover,
.epsa-unlink-device:focus {
	color: #fff !important;
}

.epsa-account {
	max-width: 1100px;
}

.epsa-hero {
	background:
		radial-gradient(circle at 80% 10%, rgba(118, 214, 64, 0.85), transparent 35%),
		linear-gradient(135deg, #061327, #08213d 75%);
	border-radius: 24px;
	color: #fff;
	margin-bottom: 20px;
	padding: 28px;
}

.epsa-hero span {
	color: #66ddff;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.epsa-account .epsa-hero h1,
.epsa-account .epsa-hero h2,
.woocommerce-account .epsa-account .epsa-hero h1,
.woocommerce-account .epsa-account .epsa-hero h2 {
	color: #fff;
	font-size: clamp(28px, 4vw, 44px);
	margin: 8px 0;
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.22);
}

.woocommerce-account .epsa-account .epsa-hero h1,
.woocommerce-account .epsa-account .epsa-hero h2 {
	color: #fff !important;
}

.epsa-account .epsa-hero p,
.woocommerce-account .epsa-account .epsa-hero p {
	color: #d7e8f7;
	margin: 0;
}

.epsa-device-groups {
	display: grid;
	gap: 18px;
}

.epsa-device-group {
	background: #fff;
	border: 1px solid #dfe8f2;
	border-radius: 20px;
	box-shadow: 0 16px 42px rgba(5, 18, 36, 0.08);
	padding: 20px;
}

.epsa-device-group header {
	align-items: center;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	margin-bottom: 16px;
}

.epsa-device-group header span,
.epsa-muted {
	color: #65758b;
	font-size: 13px;
}

.epsa-device-group h3 {
	color: #0a1630;
	margin: 4px 0 0;
}

.epsa-device-group header strong {
	background: #e8f8ff;
	border-radius: 999px;
	color: #007aa6;
	padding: 8px 12px;
}

.epsa-device-list {
	display: grid;
	gap: 12px;
}

.epsa-device-card {
	align-items: center;
	background: #f7fafc;
	border: 1px solid #e5edf5;
	border-radius: 16px;
	display: flex;
	gap: 14px;
	justify-content: space-between;
	padding: 14px;
}

.epsa-device-card strong,
.epsa-device-card span,
.epsa-device-card small {
	display: block;
}

.epsa-device-card span,
.epsa-device-card small {
	color: #6b7788;
	font-size: 13px;
}

.epsa-status-ok {
	background: #e8fff2;
	color: #0f6a38;
}

.epsa-status-denied,
.epsa-message-device_limit {
	background: #fff2f2;
	color: #8a1f1f;
}

@media (max-width: 720px) {
	.epsa-device-group header,
	.epsa-device-card {
		align-items: flex-start;
		flex-direction: column;
	}
}
