/* Embodied Authority Audit — minimalist / premium.
   Titles inherit the theme's editorial serif if available (falls back to Georgia).
   Body uses Poppins. Colours are neutral + a single deep accent; adjust --eaa-accent to your brand. */

.eaa-app {
	--eaa-ink: #1c1a17;
	--eaa-soft: #6b655d;
	--eaa-line: #e5e0d8;
	--eaa-bg: #fbfaf7;
	--eaa-accent: #2f2a24;      /* deep, restrained — change to your brand's premium tone */
	--eaa-accent-2: #8a7f70;
	--eaa-radius: 2px;
	--eaa-serif: "Editorial New", "Editors Note", Georgia, "Times New Roman", serif;

	max-width: 720px;
	margin: 0 auto;
	font-family: "Poppins", system-ui, -apple-system, sans-serif;
	color: var(--eaa-ink);
	font-weight: 300;
	line-height: 1.7;
	font-size: 17px;
}

.eaa-app * { box-sizing: border-box; }

.eaa-screen {
	background: var(--eaa-bg);
	border: 1px solid var(--eaa-line);
	padding: 48px 44px;
	border-radius: var(--eaa-radius);
	animation: eaa-fade .4s ease;
}

@keyframes eaa-fade {
	from { opacity: 0; transform: translateY(6px); }
	to   { opacity: 1; transform: translateY(0); }
}

/* Titles */
.eaa-title,
.eaa-result-name {
	font-family: var(--eaa-serif);
	font-weight: 400;
	letter-spacing: 0.01em;
	line-height: 1.2;
	color: var(--eaa-ink);
}

.eaa-title { font-size: 34px; margin: 0 0 18px; }

/* Intro */
.eaa-intro { text-align: center; }
.eaa-intro-text { color: var(--eaa-soft); margin: 0 0 32px; }
.eaa-intro-text p { margin: 0 0 16px; }
.eaa-intro-text p:last-child { margin-bottom: 0; }

/* Progress */
.eaa-progress {
	height: 2px;
	background: var(--eaa-line);
	margin-bottom: 28px;
	overflow: hidden;
}
.eaa-progress-bar {
	height: 100%;
	background: var(--eaa-accent);
	transition: width .45s ease;
}

.eaa-step {
	text-transform: uppercase;
	letter-spacing: 0.18em;
	font-size: 11px;
	font-weight: 500;
	color: var(--eaa-accent-2);
	margin-bottom: 16px;
}

.eaa-q-text {
	font-family: var(--eaa-serif);
	font-weight: 400;
	font-size: 23px;
	line-height: 1.35;
	margin: 0 0 28px;
}

/* Options */
.eaa-options { display: flex; flex-direction: column; gap: 12px; }

.eaa-option {
	text-align: left;
	background: #fff;
	border: 1px solid var(--eaa-line);
	border-radius: var(--eaa-radius);
	padding: 18px 20px;
	font-family: inherit;
	font-size: 15.5px;
	font-weight: 300;
	line-height: 1.6;
	letter-spacing: normal;
	text-transform: none;
	color: var(--eaa-ink);
	cursor: pointer;
	transition: border-color .2s ease, background .2s ease, transform .1s ease;
}
.eaa-option:hover {
	border-color: var(--eaa-accent);
	background: #fffef9;
}
.eaa-option:active { transform: scale(0.995); }

.eaa-back {
	margin-top: 24px;
	background: none;
	border: none;
	color: var(--eaa-soft);
	font-family: inherit;
	font-size: 14px;
	cursor: pointer;
	padding: 4px 0;
}
.eaa-back:hover { color: var(--eaa-ink); }

/* Buttons */
.eaa-btn {
	display: inline-block;
	background: var(--eaa-accent);
	color: #fff;
	border: 1px solid var(--eaa-accent);
	border-radius: var(--eaa-radius);
	padding: 16px 34px;
	font-family: inherit;
	font-size: 15px;
	font-weight: 400;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background .2s ease, color .2s ease, border-color .2s ease, transform .1s ease;
}
.eaa-btn:hover {
	background: transparent;
	color: var(--eaa-accent);
	border-color: var(--eaa-accent);
}
.eaa-btn:active { transform: scale(0.99); }
.eaa-btn:disabled { opacity: 0.5; cursor: default; }

/* Center the Begin button (intro) and the reveal button (gate) */
.eaa-intro .eaa-btn { margin: 0 auto; }
.eaa-form .eaa-btn { align-self: center; }

/* Gate */
.eaa-gate-title {
	font-family: var(--eaa-serif);
	font-weight: 400;
	font-size: 26px;
	margin: 0 0 12px;
}
.eaa-gate-text { color: var(--eaa-soft); margin: 0 0 26px; }

.eaa-form { display: flex; flex-direction: column; gap: 16px; }

.eaa-input {
	width: 100%;
	padding: 15px 18px;
	border: 1px solid var(--eaa-line);
	border-radius: var(--eaa-radius);
	font-family: inherit;
	font-size: 16px;
	font-weight: 300;
	color: var(--eaa-ink);
	background: #fff;
}
.eaa-input:focus {
	outline: none;
	border-color: var(--eaa-accent);
}

.eaa-consent {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 13px;
	color: var(--eaa-soft);
	line-height: 1.5;
	cursor: pointer;
}
.eaa-check { margin-top: 3px; flex: 0 0 auto; }

.eaa-error {
	color: #a3341f;
	font-size: 14px;
	min-height: 1px;
}

/* Result */
.eaa-result-label {
	text-transform: uppercase;
	letter-spacing: 0.18em;
	font-size: 11px;
	font-weight: 500;
	color: var(--eaa-accent-2);
	margin-bottom: 10px;
}
.eaa-result-name {
	font-size: 40px;
	margin: 0 0 28px;
	padding-bottom: 24px;
	border-bottom: 1px solid var(--eaa-line);
}
.eaa-result-body { font-size: 16px; color: var(--eaa-ink); }
.eaa-result-body .eaa-lede {
	font-family: var(--eaa-serif);
	font-size: 20px;
	line-height: 1.45;
	font-weight: 400;
	margin: 0 0 22px;
}
.eaa-result-body p { margin: 0 0 18px; font-weight: 300; }
.eaa-result-body h4 {
	font-family: inherit;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	font-size: 12px;
	font-weight: 600;
	color: var(--eaa-accent-2);
	margin: 30px 0 12px;
}
.eaa-result-note {
	margin-top: 32px;
	padding-top: 22px;
	border-top: 1px solid var(--eaa-line);
	font-size: 14px;
	color: var(--eaa-soft);
	font-style: italic;
}

/* PDF download icon — top-right corner of the result card (Option A) */
.eaa-result { position: relative; }
.eaa-pdf-ico {
	position: absolute;
	top: 44px;
	right: 40px;
	width: 30px;
	height: 30px;
	padding: 2px;
	background: none;
	border: none;
	color: var(--eaa-accent-2);
	cursor: pointer;
	transition: color .2s ease, transform .1s ease;
	line-height: 0;
}
.eaa-pdf-ico svg { width: 100%; height: 100%; display: block; }
.eaa-pdf-ico:hover { color: var(--eaa-ink); }
.eaa-pdf-ico:active { transform: scale(0.94); }

@media (max-width: 600px) {
	.eaa-pdf-ico { top: 30px; right: 22px; width: 26px; height: 26px; }
}
.eaa-cta {
	margin-top: 44px;
	padding-top: 40px;
	border-top: 1px solid var(--eaa-line);
	text-align: center;
}
.eaa-cta-title {
	font-family: var(--eaa-serif);
	font-weight: 400;
	font-size: 26px;
	line-height: 1.25;
	margin: 0 0 20px;
	color: var(--eaa-ink);
}
.eaa-cta-body {
	color: var(--eaa-ink);
	font-weight: 300;
	text-align: left;
	max-width: 560px;
	margin: 0 auto 28px;
}
.eaa-cta-body p { margin: 0 0 16px; }
.eaa-cta-body p:last-child { margin-bottom: 0; }
.eaa-cta-btn {
	text-decoration: none;
	margin: 0 auto;
}
.eaa-cta-sub {
	margin: 14px 0 0;
	font-size: 13px;
	letter-spacing: 0.04em;
	color: var(--eaa-soft);
}

/* Mobile */
@media (max-width: 600px) {
	.eaa-app { font-size: 16px; }
	.eaa-screen { padding: 32px 22px; }
	.eaa-title { font-size: 28px; }
	.eaa-q-text { font-size: 20px; }
	.eaa-result-name { font-size: 32px; }
	.eaa-result-body .eaa-lede { font-size: 18px; }
}
