/*
 * § 35a EStG information page.
 *
 * Reuses the theme tokens rather than introducing a second visual language.
 * Deliberately avoids --teal-bright and --sage-deep for text: both fall below
 * WCAG AA at normal size (3.12:1 and 3.04:1). Interactive targets stay at or
 * above 24 px for WCAG 2.2 SC 2.5.8. Figures use tabular numerals so the money
 * columns line up.
 */

.rdp-tax {
	max-width: 46rem;
}

.rdp-tax h2 {
	margin-top: 2.4rem;
}

.rdp-tax h3 {
	margin-top: 1.6rem;
	font-size: 1.05rem;
}

/* ------------------------------------------------------------------ tables */

.rdp-tax-tablewrap {
	overflow-x: auto;
	margin: 1.2rem 0;
	border: 1px solid var(--line, #cdddda);
	border-radius: var(--radius, 1.25rem);
	background: var(--surface, #fff);
}

.rdp-tax-table {
	width: 100%;
	min-width: 32rem;
	border-collapse: collapse;
	font-size: .95rem;
}

.rdp-tax-table caption {
	caption-side: bottom;
	padding: .7rem 1rem;
	font-size: .8rem;
	color: var(--muted, #527078);
	text-align: left;
}

.rdp-tax-table th,
.rdp-tax-table td {
	padding: .75rem 1rem;
	text-align: left;
	border-bottom: 1px solid var(--line, #cdddda);
	vertical-align: top;
}

.rdp-tax-table thead th {
	font-size: .78rem;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--muted, #527078);
	background: var(--mist, #eef5f4);
}

.rdp-tax-table tbody tr:last-child td {
	border-bottom: 0;
}

.rdp-tax-num {
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.rdp-tax-row--lead td {
	background: var(--mist, #eef5f4);
}

/* ------------------------------------------------------------------- lists */

.rdp-tax-list,
.rdp-tax-steps {
	margin: 1rem 0 1.4rem;
	padding-left: 1.3rem;
	display: grid;
	gap: .6rem;
}

.rdp-tax-list--neg {
	color: var(--ink, #12333d);
}

.rdp-tax-warn {
	font-weight: 700;
}

/* -------------------------------------------------------------- hint block */

.rdp-tax-hint {
	margin: 2rem 0 0;
	padding: 1rem 1.2rem;
	border-left: 3px solid var(--teal, #087f8c);
	background: var(--mist, #eef5f4);
	border-radius: 0 var(--radius, 1.25rem) var(--radius, 1.25rem) 0;
}

.rdp-tax-hint p {
	margin: 0;
	font-size: .95rem;
}

.rdp-tax-hint a,
.rdp-tax-link {
	display: inline-block;
	min-height: 24px;
	padding: .25rem 0;
	color: var(--teal, #087f8c);
}

/* --------------------------------------------------------------------- CTA */

.rdp-tax-cta {
	margin: 2.2rem 0 1.4rem;
	padding: 1.4rem;
	border: 1px solid var(--line, #cdddda);
	border-radius: var(--radius, 1.25rem);
	background: var(--surface, #fff);
}

.rdp-tax-cta p:last-child {
	margin-bottom: 0;
	display: flex;
	flex-wrap: wrap;
	gap: .8rem 1.2rem;
	align-items: center;
}

.rdp-tax-button {
	display: inline-block;
	min-height: 44px;
	padding: .7rem 1.4rem;
	border-radius: 999px;
	background: var(--teal, #087f8c);
	color: #fff;
	font-weight: 700;
	text-decoration: none;
}

.rdp-tax-button:hover,
.rdp-tax-button:focus-visible {
	background: var(--ink-deep, #082a33);
	color: #fff;
}

/* ----------------------------------------------------------------- caveats */

.rdp-tax-note {
	margin-top: 2rem;
	padding: 1rem 1.2rem;
	font-size: .88rem;
	line-height: 1.6;
	color: var(--muted, #527078);
	background: var(--mist, #eef5f4);
	border-radius: var(--radius, 1.25rem);
}

@media (max-width: 40rem) {
	.rdp-tax-cta {
		padding: 1.1rem;
	}
}
