/* ==========================================================================
   SMRT Portal — Foundation (Step 1)
   Dark base palette applied over Memberlite. Layout unchanged; this only
   restyles colors, surfaces, forms and buttons. CSS variables come from
   inc/config.php (injected inline as :root --smrt-*).
   ========================================================================== */

/* ---- Base ---------------------------------------------------------------- */
html,
body {
	background: var(--smrt-bg) !important;
	color: var(--smrt-text);
	font-family: var(--smrt-font-sans);
}

body,
#page,
.site,
#content,
.site-content,
.content-area,
main {
	background: transparent;
	color: var(--smrt-text);
}

/* Links */
a {
	color: var(--smrt-accent);
}
a:hover,
a:focus {
	color: var(--smrt-accent-hover);
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
	color: var(--smrt-text);
}

/* PMPro card/section titles default to near-black — force readable */
.pmpro_card_title,
.pmpro_section_title,
.pmpro_card_title.pmpro_heading-with-avatar {
	color: var(--smrt-text) !important;
}
p, li, dd, dt, span, label {
	color: var(--smrt-text);
}
.entry-meta,
.muted,
small {
	color: var(--smrt-text-muted);
}

/* ---- Header -------------------------------------------------------------- */
#masthead,
.site-header,
header#masthead {
	background: var(--smrt-surface-2) !important;
	border-bottom: 1px solid var(--smrt-border);
}
.site-title,
.site-title a,
.site-description {
	color: var(--smrt-text) !important;
}

/* Primary nav */
.main-navigation,
#site-navigation,
.memberlite-nav {
	background: transparent;
}
.main-navigation a,
#site-navigation a {
	color: var(--smrt-text-muted);
}
.main-navigation a:hover,
#site-navigation a:hover,
.main-navigation .current-menu-item > a {
	color: var(--smrt-text);
}

/* The page-title band Memberlite renders (navy .masthead by default) */
.masthead,
.memberlite-page-header,
.page-header,
.entry-header-wrapper,
.memberlite-jumbotron {
	background: var(--smrt-surface-1) !important;
	border-bottom: 1px solid var(--smrt-border);
}
.masthead .entry-title,
.masthead,
.memberlite-page-header .entry-title,
.page-header .entry-title,
.page-title {
	color: var(--smrt-text) !important;
}



/* ---- Forms --------------------------------------------------------------- */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="url"],
input[type="tel"],
input[type="number"],
input[type="search"],
select,
textarea {
	background: var(--smrt-surface-2) !important;
	border: 1px solid var(--smrt-border) !important;
	color: var(--smrt-text) !important;
	border-radius: var(--smrt-radius-sm) !important;
}
input::placeholder,
textarea::placeholder {
	color: var(--smrt-text-faint);
}
input:focus,
select:focus,
textarea:focus {
	outline: none !important;
	border-color: var(--smrt-accent) !important;
	box-shadow: 0 0 0 3px var(--smrt-ring) !important;
}
label {
	color: var(--smrt-text-muted);
}

/* ---- Buttons ------------------------------------------------------------- */
.button,
button,
input[type="submit"],
input[type="button"],
.pmpro_btn,
.pmpro_btn-submit,
a.pmpro_btn {
	background: var(--smrt-gradient) !important;
	border: none !important;
	color: #fff !important;
	border-radius: var(--smrt-radius-sm) !important;
	font-weight: 600;
	transition: filter .15s ease, transform .15s ease;
}
.button:hover,
button:hover,
input[type="submit"]:hover,
.pmpro_btn:hover,
a.pmpro_btn:hover {
	filter: brightness(1.08);
	transform: translateY(-1px);
	color: #fff !important;
}

/* Secondary / cancel buttons: outline style */
.pmpro_btn-cancel,
.button.secondary,
a.pmpro_btn-cancel {
	background: transparent !important;
	border: 1px solid var(--smrt-border) !important;
	color: var(--smrt-text) !important;
}

/* ---- Footer -------------------------------------------------------------- */
#colophon,
.site-footer {
	background: var(--smrt-surface-1) !important;
	border-top: 1px solid var(--smrt-border);
	color: var(--smrt-text-muted);
}

/* ---- Misc ---------------------------------------------------------------- */
hr {
	border-color: var(--smrt-border);
}
::selection {
	background: var(--smrt-accent);
	color: #fff;
}
