/**
 * Monetization UX — consent shell, controlled ad slots, support surfaces.
 * K-7-V3-MONETIZATION-CONSENT-SUPPORT-AND-AD-SLOT-LAUNCH-UX-1
 */

/* Consent status strip (CMP companion, not replacement banner) */
.aka-consent-status {
	margin: 0;
	padding: 10px 16px;
	background: #f8fafc;
	border-top: 1px solid rgba(15, 23, 42, 0.08);
	font-size: 0.875rem;
	color: #334155;
	text-align: center;
}
.aka-consent-status__text {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 12px;
	align-items: center;
	justify-content: center;
}
.aka-consent-status__manage,
.aka-consent-manage-link {
	appearance: none;
	border: 0;
	background: none;
	padding: 0;
	font: inherit;
	color: var(--color-brand, #1abc9c);
	text-decoration: underline;
	cursor: pointer;
}
.aka-consent-status__manage:focus-visible,
.aka-consent-manage-link:focus-visible {
	outline: 2px solid var(--color-brand, #1abc9c);
	outline-offset: 2px;
}

/* Controlled ad slots — no reserved height (CLS-safe) */
.aka-ad-slot {
	margin: 24px 0;
	padding: 0;
	border: 0;
	max-width: 100%;
	min-height: 0;
	overflow: hidden;
	transition: margin 0.2s ease, opacity 0.2s ease;
}
.aka-ad-slot__label {
	display: block;
	margin: 0 0 6px;
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #94a3b8;
}
.aka-ad-slot__frame {
	min-height: 0;
	overflow: hidden;
}
.aka-ad-slot__unit {
	min-height: 0 !important;
}
.aka-ad-slot--collapsed {
	margin: 0 !important;
	padding: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	opacity: 0;
	pointer-events: none;
}
.aka-ad-slot-anchor--archive {
	grid-column: 1 / -1;
	min-height: 0;
}
.aka-ad-editorial-break {
	margin: 32px 0;
}

body.aka-ad-surface-support_member_ad_free .aka-ad-slot,
body.aka-ad-free .aka-ad-slot {
	display: none !important;
}

/* Archive grid ad placement */
.aka-mag-grid .aka-ad-slot-anchor {
	margin: 8px 0 16px;
}

/* Support — medical disclaimer */
.aka-support__disclaimer {
	margin: 0 0 20px;
	padding: 12px 14px;
	border-radius: 10px;
	background: #f1f5f9;
	border: 1px solid rgba(15, 23, 42, 0.08);
	font-size: 0.9rem;
	color: #475569;
}
.aka-support__price-locked {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 0 0 16px;
	padding: 16px;
	border-radius: 12px;
	background: var(--aka-sup-warm, #f8faf9);
	border: 1px solid var(--aka-sup-rule, rgba(15, 23, 42, 0.08));
}
.aka-support__price-amount {
	font-size: 1.75rem;
	font-weight: 700;
	color: var(--aka-sup-ink, #1f2937);
	line-height: 1.2;
}
.aka-support__price-interval {
	font-size: 0.95rem;
	color: var(--aka-sup-ink-muted, #64748b);
}

/* Responsive breakpoints: 390, 768, 1180, 1181, 1440, 1600+ */
@media (max-width: 389px) {
	.aka-consent-status__text { font-size: 0.82rem; }
	.aka-ad-slot { margin: 16px 0; }
}
@media (min-width: 768px) {
	.aka-ad-slot { margin: 28px auto; max-width: min(728px, 100%); }
}
@media (min-width: 1180px) {
	.aka-ad-editorial-break { margin: 40px 0; }
}
@media (min-width: 1600px) {
	.aka-ad-slot { max-width: 970px; }
}

@media (prefers-reduced-motion: reduce) {
	.aka-ad-slot { transition: none; }
}
