/* MedExamium LMS — Affiliate Dashboard */

.medexamium-affiliate-dashboard,
.medexamium-affiliate-form {
	--me-bg: #f6f8fb;
	--me-surface: #ffffff;
	--me-border: #e3e8f0;
	--me-text: #1a2333;
	--me-text-muted: #6b7789;
	--me-primary: #4f46e5;
	--me-primary-hover: #4338ca;
	--me-radius: 14px;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	color: var(--me-text);
	max-width: 1000px;
	margin: 0 auto;
}
.medexamium-affiliate-dashboard *, .medexamium-affiliate-form * { box-sizing: border-box; }

.medexamium-affiliate-hero {
	background: linear-gradient(135deg, #4f46e5, #7c3aed);
	border-radius: var(--me-radius);
	padding: 26px;
	margin-bottom: 20px;
	color: #fff;
}
.medexamium-affiliate-link-box label { display: block; font-size: 13px; opacity: .85; margin-bottom: 8px; font-weight: 600; }
.medexamium-copy-row { display: flex; gap: 8px; }
.medexamium-copy-row input {
	flex: 1; padding: 12px 14px; border-radius: 10px; font-size: 14px;
	background: rgba(255,255,255,0.22); color: #ffffff; font-weight: 600;
	border: 1px solid rgba(255,255,255,0.4);
	-webkit-appearance: none; -moz-appearance: none; appearance: none;
	text-overflow: ellipsis;
}
.medexamium-copy-row input::placeholder { color: rgba(255,255,255,0.75); }
.medexamium-copy-row input:focus { outline: none; border-color: #ffffff; background: rgba(255,255,255,0.3); }
.medexamium-copy-row .medexamium-btn { background: #fff; color: var(--me-primary); border: none; }
.medexamium-copy-row .medexamium-btn.medexamium-copied { background: #11823b; color: #fff; }

.medexamium-affiliate-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px,1fr)); gap: 14px; margin-bottom: 20px; }
.medexamium-stat-highlight { border: 2px solid var(--me-primary) !important; }

.medexamium-card {
	background: var(--me-surface); border: 1px solid var(--me-border); border-radius: var(--me-radius);
	padding: 22px; margin-bottom: 18px; box-shadow: 0 2px 14px rgba(17,24,39,.05);
}
.medexamium-stat-card { text-align: center; padding: 20px; }
.medexamium-stat-number { display: block; font-size: 28px; font-weight: 800; color: var(--me-primary); }
.medexamium-stat-label { display: block; margin-top: 4px; font-size: 12px; color: var(--me-text-muted); text-transform: uppercase; letter-spacing: .3px; }

.medexamium-affiliate-payout-header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; margin-bottom: 14px; }
.medexamium-affiliate-payout-header h2 { margin: 0; }

.medexamium-table { width: 100%; border-collapse: collapse; }
.medexamium-table th { text-align: left; padding: 10px; font-size: 12px; color: var(--me-text-muted); border-bottom: 2px solid var(--me-border); }
.medexamium-table td { padding: 10px; border-bottom: 1px solid var(--me-border); font-size: 13.5px; }

.medexamium-btn {
	border: none; border-radius: 10px; padding: 11px 18px; font-weight: 600; font-size: 14px;
	cursor: pointer; text-decoration: none; display: inline-flex; align-items: center; gap: 6px;
}
.medexamium-btn:disabled { opacity: .5; cursor: not-allowed; }
.medexamium-btn-primary { background: var(--me-primary); color: #fff; }
.medexamium-btn-primary:hover:not(:disabled) { background: var(--me-primary-hover); color: #fff; }
.medexamium-btn-outline { background: transparent; border: 1.5px solid var(--me-border); color: var(--me-text); }

.medexamium-affiliate-form .medexamium-field { margin-bottom: 14px; }
.medexamium-affiliate-form label { display: block; font-weight: 600; margin-bottom: 6px; font-size: 14px; }
.medexamium-affiliate-form select,
.medexamium-affiliate-form textarea { width: 100%; padding: 10px 12px; border: 1px solid var(--me-border); border-radius: 8px; }

.medexamium-inline-form { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin-bottom: 14px; }
.medexamium-inline-form input[type="text"],
.medexamium-inline-form input[type="number"] { padding: 8px 10px; border: 1px solid var(--me-border); border-radius: 8px; }

.medexamium-status-badge { display: inline-block; padding: 3px 10px; border-radius: 999px; font-size: 11px; font-weight: 700; text-transform: capitalize; }
.medexamium-badge-paid { background: #ecfdf3; color: #11823b; }
.medexamium-badge-unpaid { background: #fef2f2; color: #d12424; }
.medexamium-badge-pending_review { background: #fffbeb; color: #b45309; }
.medexamium-badge-requested { background: #fffbeb; color: #b45309; }
.medexamium-badge-rejected { background: #fef2f2; color: #d12424; }

@media (max-width: 700px) {
	.medexamium-copy-row { flex-direction: column; }
	.medexamium-affiliate-stats { grid-template-columns: repeat(2, 1fr); }
}
