/* DailyEvolve Guest Posts — front-end forms & dashboard.
   Falls back gracefully if the child theme tokens aren't present. */

.de-guest-wrap {
	--g-green: var(--de-green, #059669);
	--g-blue: var(--de-blue, #2563EB);
	--g-line: var(--de-line, #e5e7eb);
	--g-ink: var(--de-ink, #111827);
	--g-muted: var(--de-muted, #6b7280);
	max-width: 720px;
	margin: 0 auto;
}
.de-guest-wrap--wide { max-width: 100%; }
.de-guest-wrap h2 { margin-top: 0; }
.de-guest-sub { color: var(--g-muted); font-size: .95rem; }

/* Forms */
.de-form { display: flex; flex-direction: column; gap: 18px; margin-top: 20px; }
.de-form label { display: flex; flex-direction: column; gap: 6px; font-weight: 600; color: var(--g-ink); }
.de-form input[type=text],
.de-form input[type=email],
.de-form input[type=url],
.de-form input[type=password],
.de-form textarea,
.de-form select {
	font: inherit;
	font-weight: 400;
	padding: 11px 13px;
	border: 1px solid var(--g-line);
	border-radius: 9px;
	width: 100%;
	background: #fff;
}
.de-form input:focus, .de-form textarea:focus, .de-form select:focus {
	outline: none; border-color: var(--g-blue); box-shadow: 0 0 0 3px rgba(37,99,235,.15);
}
.de-form .de-btn { align-self: flex-start; }
.de-form input[type=file] { font: inherit; font-weight: 400; }
.de-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.de-avatar-preview { display: inline-block; margin-bottom: 6px; }
.de-avatar-preview img { border-radius: 50%; object-fit: cover; display: block; }

/* Buttons (mirrors theme, self-contained) */
.de-guest-wrap .de-btn {
	display: inline-flex; align-items: center; gap: 8px;
	font-weight: 600; font-size: .95rem; padding: 11px 20px;
	border-radius: 10px; border: 1px solid transparent; cursor: pointer; text-decoration: none;
}
.de-guest-wrap .de-btn--primary { background: var(--g-green); color: #fff; }
.de-guest-wrap .de-btn--primary:hover { background: #047857; color: #fff; }
.de-guest-wrap .de-btn--ghost { background: transparent; color: var(--g-ink); border-color: var(--g-line); }

/* Notices */
.de-notice { padding: 12px 16px; border-radius: 9px; margin-bottom: 16px; font-size: .95rem; }
.de-notice--success { background: #ecfdf5; color: #065f46; border: 1px solid #a7f3d0; }
.de-notice--error { background: #fef2f2; color: #991b1b; border: 1px solid #fecaca; }
.de-notice--pending { background: #fffbeb; color: #92400e; border: 1px solid #fde68a; }

/* Go Premium */
.de-premium-perks { margin: 10px 0 18px; padding-left: 18px; }
.de-premium-perks li { margin: 5px 0; }
.de-credit-balance { font-size: 1rem; margin: 6px 0 16px; }
.de-paypal { margin-top: 6px; }
.de-otp-resend { margin-top: 10px; }
.de-checkline { flex-direction: row !important; align-items: flex-start; gap: 10px !important; font-weight: 400 !important; }
.de-checkline input { width: auto !important; margin-top: 3px; }

/* Dashboard */
.de-dash-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.de-dash-table { width: 100%; border-collapse: collapse; margin-top: 18px; }
.de-dash-table th, .de-dash-table td { text-align: left; padding: 14px 12px; border-bottom: 1px solid var(--g-line); vertical-align: top; }
.de-dash-table th { font-size: .8rem; text-transform: uppercase; letter-spacing: .04em; color: var(--g-muted); }
.de-reason { margin-top: 6px; font-size: .85rem; color: var(--g-muted); background: #f9fafb; padding: 8px 10px; border-radius: 7px; }

/* Status pills */
.de-status { display: inline-block; font-size: .75rem; font-weight: 700; padding: 4px 11px; border-radius: 999px; text-transform: uppercase; letter-spacing: .03em; }
.de-status--approved { background: #ecfdf5; color: #047857; }
.de-status--pending { background: #eff6ff; color: #1d4ed8; }
.de-status--rejected { background: #fef2f2; color: #b91c1c; }
.de-status--draft { background: #f3f4f6; color: #4b5563; }

@media (max-width: 600px) {
	.de-dash-table thead { display: none; }
	.de-dash-table, .de-dash-table tbody, .de-dash-table tr, .de-dash-table td { display: block; width: 100%; }
	.de-dash-table tr { border: 1px solid var(--g-line); border-radius: 10px; margin-bottom: 14px; padding: 6px 10px; }
	.de-dash-table td { border: 0; padding: 8px 4px; }
	.de-dash-table td::before { content: attr(data-label) ": "; font-weight: 700; color: var(--g-muted); }
}
