/* Nikotinrechner Modus A – kompakt, tabellarisch (Excel-Charakter) */
.vj-nikotinrechner {
	--nr-blue: var(--vj-blue, #1a4f7c);
	--nr-dark: var(--vj-blue-dark, #143d61);
	--nr-line: #c5ced6;
	--nr-muted: var(--vj-muted, #5d6b76);
	--nr-input-bg: #fff8e8;
	--nr-result-bg: #e8f4ea;
	--nr-result-border: #8fba96;
	--nr-warn-bg: #fceeed;
	--nr-warn-border: #c97878;
	--nr-warn-text: #7a2e2e;
	--nr-doc-bg: #f0f2f4;
	margin: 0 0 1.25rem;
	padding: 0;
	color: #1d2a33;
	font-size: 0.84rem;
	line-height: 1.28;
}

.vj-nikotinrechner__kicker {
	margin: 0 0 0.08rem;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--nr-blue);
}

.vj-nikotinrechner__subtitle {
	margin: 0 0 0.4rem;
	font-size: 0.78rem;
	color: var(--nr-muted);
	line-height: 1.3;
}

.vj-nikotinrechner__hint {
	margin: 0;
	padding: 0.28rem 0.45rem;
	border-top: 1px solid var(--nr-line);
	background: var(--nr-input-bg);
	color: #5a4a28;
	font-size: 0.72rem;
	line-height: 1.32;
}

.vj-nikotinrechner__hint--muted {
	background: #f7f8fa;
	color: var(--nr-muted);
}

.vj-nikotinrechner__footnote {
	margin: 0.2rem 0 0;
	font-size: 0.72rem;
	font-weight: 500;
	line-height: 1.32;
	color: var(--nr-muted);
}

.vj-nikotinrechner__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.4rem;
	margin-bottom: 0.4rem;
	align-items: start;
}

.vj-nikotinrechner__col {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	min-width: 0;
}

.vj-nikotinrechner__col .vj-nikotinrechner__results {
	margin: 0;
}

.vj-nikotinrechner__col .vj-nikotinrechner__table {
	min-width: 0;
}

@media (max-width: 780px) {
	.vj-nikotinrechner__grid {
		grid-template-columns: 1fr;
	}
}

.vj-nikotinrechner__panel {
	margin: 0;
	padding: 0;
	border: 1px solid var(--nr-line);
	border-radius: 0;
	background: #fff;
	overflow: hidden;
}

.vj-nikotinrechner__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.4rem;
	padding: 0.22rem 0.45rem;
	background: var(--nr-blue);
	color: #fff;
}

.vj-nikotinrechner__head--full {
	justify-content: flex-start;
}

.vj-nikotinrechner__head h3 {
	margin: 0;
	color: #fff;
	font-size: 0.8rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.01em;
}

.vj-nikotinrechner__head-col {
	font-size: 0.7rem;
	font-weight: 650;
	opacity: 0.92;
	white-space: nowrap;
}

.vj-nikotinrechner__rows {
	margin: 0;
	padding: 0;
}

.vj-nikotinrechner__row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(7.25rem, 1.15fr);
	gap: 0.25rem 0.4rem;
	align-items: center;
	padding: 0.14rem 0.4rem;
	border-bottom: 1px solid var(--nr-line);
	min-height: 1.55rem;
}

.vj-nikotinrechner__row:last-child {
	border-bottom: 0;
}

.vj-nikotinrechner__row label {
	margin: 0;
	font-size: 0.8rem;
	font-weight: 500;
	color: #1d2a33;
	line-height: 1.2;
}

.vj-nikotinrechner__row input,
.vj-nikotinrechner__row select {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0.12rem 0.32rem;
	min-height: 1.45rem;
	height: 1.45rem;
	border: 1px solid #b9c3cc;
	border-radius: 0;
	background: var(--nr-input-bg);
	color: #1d2a33;
	font: inherit;
	font-size: 0.8rem;
	line-height: 1.15;
	text-align: right;
}

.vj-nikotinrechner__row select {
	text-align: left;
	text-align-last: left;
	cursor: pointer;
}

.vj-nikotinrechner__row input:focus,
.vj-nikotinrechner__row select:focus {
	outline: 1px solid var(--nr-blue);
	outline-offset: 0;
	border-color: var(--nr-blue);
}

.vj-nikotinrechner__assumptions {
	list-style: none;
	margin: 0;
	padding: 0;
}

.vj-nikotinrechner__assumptions li {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 0.5rem;
	padding: 0.12rem 0.4rem;
	border-bottom: 1px solid var(--nr-line);
	font-size: 0.78rem;
	min-height: 1.45rem;
}

.vj-nikotinrechner__assumptions li:last-child {
	border-bottom: 0;
}

.vj-nikotinrechner__assumptions span:first-child {
	min-width: 0;
}

.vj-nikotinrechner__assumptions span:last-child {
	font-weight: 650;
	color: var(--nr-dark);
	text-align: right;
	font-variant-numeric: tabular-nums;
	max-width: 58%;
}

.vj-nikotinrechner__results {
	margin: 0 0 0.4rem;
	padding: 0;
	border: 1px solid var(--nr-line);
	border-radius: 0;
	background: #fff;
	overflow: hidden;
}

.vj-nikotinrechner__table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.vj-nikotinrechner__table {
	width: 100%;
	min-width: 26rem;
	border-collapse: collapse;
	margin: 0;
	font-size: 0.8rem;
}

.vj-nikotinrechner__table th,
.vj-nikotinrechner__table td {
	padding: 0.18rem 0.4rem;
	border-bottom: 1px solid var(--nr-line);
	border-right: 1px solid var(--nr-line);
	text-align: right;
	font-variant-numeric: tabular-nums;
	vertical-align: middle;
}

.vj-nikotinrechner__table th:last-child,
.vj-nikotinrechner__table td:last-child {
	border-right: 0;
}

.vj-nikotinrechner__table tbody tr:last-child th,
.vj-nikotinrechner__table tbody tr:last-child td {
	border-bottom: 0;
}

.vj-nikotinrechner__table th:first-child,
.vj-nikotinrechner__table td:first-child,
.vj-nikotinrechner__table th[scope="row"] {
	text-align: left;
	font-weight: 600;
	color: var(--nr-dark);
	background: #fff;
	width: 42%;
}

.vj-nikotinrechner__table thead th {
	background: var(--nr-blue);
	color: #fff;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.01em;
	text-transform: none;
	border-bottom-color: var(--nr-dark);
	border-right-color: color-mix(in srgb, #fff 22%, var(--nr-blue));
}

.vj-nikotinrechner__table thead th:last-child {
	border-right: 0;
}

.vj-nikotinrechner__table thead th:first-child {
	text-align: left;
}

.vj-nikotinrechner__table tbody td {
	background: var(--nr-result-bg);
	font-weight: 600;
	color: #1d2a33;
}

.vj-nikotinrechner__table tbody td[colspan] {
	text-align: right;
}

.vj-nikotinrechner__highlight {
	margin: 0;
	padding: 0.35rem 0.5rem;
	border-top: 1px solid var(--nr-result-border);
	background: var(--nr-result-bg);
}

.vj-nikotinrechner__summary {
	margin: 0 0 0.18rem;
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--nr-dark);
}

.vj-nikotinrechner__summary:last-child {
	margin-bottom: 0;
}

.vj-nikotinrechner__note {
	margin: 0 0 0.35rem;
	padding: 0.32rem 0.45rem;
	border: 1px solid var(--nr-warn-border);
	border-radius: 0;
	background: var(--nr-warn-bg);
	color: var(--nr-warn-text);
	font-size: 0.76rem;
	line-height: 1.32;
}

.vj-nikotinrechner__note strong {
	color: var(--nr-warn-text);
}

.vj-nikotinrechner__doc {
	margin: 0;
	padding: 0.28rem 0.45rem;
	border: 1px solid #d5dadd;
	border-radius: 0;
	background: var(--nr-doc-bg);
	color: var(--nr-muted);
	font-size: 0.72rem;
	font-style: italic;
	line-height: 1.32;
}

.vj-nikotinrechner__doc strong {
	font-style: normal;
	font-weight: 650;
	color: #4a5864;
}

@media (max-width: 520px) {
	.vj-nikotinrechner__row {
		grid-template-columns: 1fr;
		gap: 0.12rem;
		padding: 0.28rem 0.4rem;
	}

	.vj-nikotinrechner__row input,
	.vj-nikotinrechner__row select {
		text-align: left;
		text-align-last: left;
		max-width: 100%;
	}

	.vj-nikotinrechner__assumptions li {
		flex-wrap: wrap;
		gap: 0.1rem 0.5rem;
	}
}
