/**
 * Reflecting Walls — Trusted Partner Network (front-end: partner portal)
 * Styles for the partner's My Account portal, its forms, and the performance
 * dashboard. The public-facing directory, homepage panel, billboard, thank-you
 * strip and landing pages use rwtpn-directory-2026.css instead.
 */

:root {
	--rwtpn-accent: #1f6feb;
	--rwtpn-accent-dark: #1b5fce;
	--rwtpn-ink: #1a1a1a;
	--rwtpn-muted: #6b7280;
	--rwtpn-line: #e5e7eb;
	--rwtpn-bg: #ffffff;
	--rwtpn-bg-soft: #f7f8fa;
	--rwtpn-radius: 12px;
	--rwtpn-shadow: 0 1px 3px rgba(0,0,0,.06), 0 8px 24px rgba(0,0,0,.05);
	--rwtpn-premier: #b7791f;
}

.rwtpn-directory-wrap,
.rwtpn-portal,
.rwtpn-landing,
.rwtpn-billboard,
.rwtpn-thankyou { color: var(--rwtpn-ink); }

/* ---------- Buttons ---------- */
.rwtpn-btn {
	display: inline-block;
	background: var(--rwtpn-accent);
	color: #fff;
	border: 1px solid var(--rwtpn-accent);
	padding: .6em 1.2em;
	border-radius: 999px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
	transition: background .15s ease, transform .05s ease;
}
.rwtpn-btn:hover { background: var(--rwtpn-accent-dark); color: #fff; }
.rwtpn-btn:active { transform: translateY(1px); }
.rwtpn-btn--ghost {
	background: transparent;
	color: var(--rwtpn-accent);
}
.rwtpn-btn--ghost:hover { background: rgba(31,111,235,.08); color: var(--rwtpn-accent); }

.rwtpn-muted { color: var(--rwtpn-muted); font-size: .9em; }
.rwtpn-empty { color: var(--rwtpn-muted); padding: 1.5em 0; }

/* ---------- Portal ---------- */
.rwtpn-portal { display: flex; flex-direction: column; gap: 18px; }
.rwtpn-portal__banner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	background: var(--rwtpn-bg-soft);
	border: 1px solid var(--rwtpn-line);
	border-radius: var(--rwtpn-radius);
	padding: 18px 22px;
}
.rwtpn-portal__plan { display: flex; align-items: center; gap: 10px; }
.rwtpn-portal__planname { font-size: 1.2em; font-weight: 700; }
.rwtpn-portal__statuslabel {
	font-size: .78em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .04em;
	padding: .25em .7em;
	border-radius: 999px;
	background: #fff;
	border: 1px solid var(--rwtpn-line);
}
.rwtpn-status-dot { width: 10px; height: 10px; border-radius: 50%; background: var(--rwtpn-muted); display: inline-block; }
.rwtpn-status--active .rwtpn-status-dot { background: #1a9e5f; }
.rwtpn-status--pending .rwtpn-status-dot,
.rwtpn-status--waitlist .rwtpn-status-dot { background: #d69e2e; }
.rwtpn-status--inactive .rwtpn-status-dot { background: #b32d2e; }

.rwtpn-portal__card {
	background: var(--rwtpn-bg);
	border: 1px solid var(--rwtpn-line);
	border-radius: var(--rwtpn-radius);
	padding: 20px 22px;
	box-shadow: var(--rwtpn-shadow);
}
.rwtpn-portal__card--accent { border-left: 4px solid var(--rwtpn-accent); }
.rwtpn-portal__card h3 { margin: 0 0 .6em; font-size: 1.05em; }

.rwtpn-plan-switch { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 10px; }
.rwtpn-plan-chip {
	border: 1px solid var(--rwtpn-line);
	border-radius: 10px;
	padding: 12px 16px;
	min-width: 140px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.rwtpn-plan-chip.is-current { border-color: var(--rwtpn-accent); background: rgba(31,111,235,.05); }
.rwtpn-plan-chip a { font-weight: 600; color: var(--rwtpn-accent); text-decoration: none; font-size: .9em; }
.rwtpn-plan-chip__tag { font-size: .75em; color: var(--rwtpn-muted); text-transform: uppercase; letter-spacing: .04em; }

.rwtpn-placements { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 6px 18px; }
.rwtpn-placements li { font-size: .92em; }
.rwtpn-placements li.is-on span { color: #1a9e5f; font-weight: 700; }
.rwtpn-placements li.is-off { color: var(--rwtpn-muted); }
@media (max-width: 600px) { .rwtpn-placements { grid-template-columns: 1fr; } }

.rwtpn-notice {
	border-radius: 10px;
	padding: 12px 16px;
	font-size: .95em;
	background: var(--rwtpn-bg-soft);
	border: 1px solid var(--rwtpn-line);
}
.rwtpn-notice--warn { background: #fff8e6; border-color: #f5d78a; color: #7a5a00; }

/* ---------- Forms ---------- */
.rwtpn-form label { display: block; font-weight: 600; margin-bottom: 4px; font-size: .92em; }
.rwtpn-form input[type=text],
.rwtpn-form input[type=url],
.rwtpn-form input[type=email],
.rwtpn-form textarea {
	width: 100%;
	padding: .6em .7em;
	border: 1px solid var(--rwtpn-line);
	border-radius: 8px;
	font: inherit;
	background: #fff;
}
.rwtpn-form-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px; }
.rwtpn-form p { margin: 0 0 14px; }
.rwtpn-logo-preview { display: block; max-width: 120px; height: auto; border-radius: 8px; margin-bottom: 8px; }
.rwtpn-hero-preview { max-width: 220px; }

/* ---------- Performance dashboard ([Your Performance] portal card) ---------- */
.rwtpn-report__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; }
.rwtpn-report__head h3 { margin: 0; }
.rwtpn-report__range { display: flex; gap: 6px; }
.rwtpn-report__range a {
	font-size: .82em;
	font-weight: 600;
	color: var(--rwtpn-muted);
	text-decoration: none;
	padding: .35em .85em;
	border-radius: 999px;
	border: 1px solid var(--rwtpn-line);
}
.rwtpn-report__range a.is-active { background: var(--rwtpn-accent); border-color: var(--rwtpn-accent); color: #fff; }
.rwtpn-report__range a:hover:not(.is-active) { border-color: var(--rwtpn-accent); color: var(--rwtpn-accent); }

.rwtpn-report__tiles {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	gap: 12px;
	margin: 14px 0;
}
.rwtpn-report__tile {
	background: var(--rwtpn-bg-soft);
	border: 1px solid var(--rwtpn-line);
	border-radius: 10px;
	padding: 14px 16px;
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.rwtpn-report__num { font-size: 1.6em; font-weight: 700; line-height: 1.1; }
.rwtpn-report__label { font-size: .78em; color: var(--rwtpn-muted); }
.rwtpn-report__delta { font-size: .74em; font-weight: 700; margin-top: 2px; }
.rwtpn-report__delta--up { color: #1a9e5f; }
.rwtpn-report__delta--down { color: #b32d2e; }
.rwtpn-report__delta--flat { color: var(--rwtpn-muted); }

.rwtpn-report__chart-wrap { margin-top: 18px; }
.rwtpn-report__chart-wrap h4,
.rwtpn-report__ga4 h4 { margin: 0 0 8px; font-size: .85em; font-weight: 600; color: var(--rwtpn-muted); text-transform: uppercase; letter-spacing: .03em; }
.rwtpn-chart { width: 100%; height: 64px; display: block; }
.rwtpn-chart rect { fill: var(--rwtpn-accent); opacity: .85; }

.rwtpn-report__ga4 { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--rwtpn-line); }
