/**
 * Ayyan Referral System (Simple): Public CSS
 *
 * @package Ayyan_Referral_Simple
 * @since 1.0.0
 */

/* --- Forms (Signup, Login) --- */
.afrs-form-wrapper {
	max-width: 480px;
	margin: 20px auto;
	padding: 24px;
	background: #f9f9f9;
	border: 1px solid #e0e0e0;
	border-radius: 4px;
}

.afrs-form-wrapper .afrs-form-field {
	margin-bottom: 16px;
}

.afrs-form-wrapper label {
	display: block;
	font-weight: 600;
	margin-bottom: 6px;
}

.afrs-form-wrapper input[type="text"],
.afrs-form-wrapper input[type="email"],
.afrs-form-wrapper input[type="password"],
.afrs-form-wrapper input[type="number"],
.afrs-form-wrapper textarea {
	width: 100%;
	padding: 10px;
	border: 1px solid #ccc;
	border-radius: 4px;
	box-sizing: border-box; /* Important */
}

.afrs-form-wrapper .afrs-submit-button,
.afrs-dashboard-box .afrs-submit-button {
	width: 100%;
	padding: 12px;
	font-size: 1.1em;
	background: #2a9d8f; /* Matches admin green */
	color: #fff;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	text-decoration: none;
	text-align: center;
	display: inline-block;
	box-sizing: border-box;
}

.afrs-form-wrapper .afrs-submit-button:hover,
.afrs-dashboard-box .afrs-submit-button:hover {
	background: #264653;
}

/* --- Notices & Errors --- */
.afrs-error {
	padding: 15px;
	background: #fff0f0;
	border: 1px solid #e76f51; /* Matches admin red */
	color: #c00;
	border-radius: 4px;
	margin-bottom: 16px;
}

.afrs-notice {
	padding: 15px;
	background: #f0fff8;
	border: 1px solid #2a9d8f; /* Matches admin green */
	color: #006400;
	border-radius: 4px;
	margin-bottom: 16px;
}

/* --- Dashboards (Marketer) --- */
.afrs-dashboard-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.afrs-dashboard-box {
	padding: 24px;
	background: #f9f9f9;
	border: 1px solid #e0e0e0;
	border-radius: 4px;
}

.afrs-dashboard-box h2 {
	margin-top: 0;
	border-bottom: 2px solid #2a9d8f;
	padding-bottom: 10px;
}

.afrs-dashboard-box table {
	width: 100%;
	border-collapse: collapse;
}

.afrs-dashboard-box th,
.afrs-dashboard-box td {
	text-align: left;
	padding: 8px;
	border-bottom: 1px solid #ddd;
}

/* --- Tree View --- */
.afrs-tree-wrapper ul {
	padding-left: 20px;
	list-style-type: none;
}

.afrs-tree-wrapper li {
	margin: 10px 0;
	padding: 8px;
	background: #f4f4f4;
	border: 1px solid #eee;
	border-radius: 4px;
}

.afrs-tree-wrapper li .level-meta {
	font-size: 0.9em;
	color: #555;
	display: block;
}

/* Responsive */
@media (max-width: 768px) {
	.afrs-dashboard-grid {
		grid-template-columns: 1fr;
	}
}