.sk-lieferorte-wrapper {
	--sk-surface: #ffffff;
	--sk-surface-soft: #f7f8fa;
	--sk-surface-accent: #f3f7fb;
	--sk-border: #e4e7ec;
	--sk-border-strong: #d7dce4;
	--sk-text: #17202a;
	--sk-muted: #667085;
	--sk-accent: #1e4e8c;
	--sk-accent-soft: #e8f0fb;
	--sk-success-bg: #eff8f1;
	--sk-success-border: #cfe6d4;
	--sk-success-text: #1f6b36;
	color: var(--sk-text);
}

.sk-tarifrechner-search-shell {
	padding: clamp(14px, 3vw, 30px) 14px;
}

.sk-tarifrechner-search {
	--sk-tarifrechner-surface: #ffffff;
	--sk-tarifrechner-surface-soft: #f7f8f9;
	--sk-tarifrechner-surface-soft-strong: #f0f3f6;
	--sk-tarifrechner-border: #d8e0e8;
	--sk-tarifrechner-border-strong: #c3ced8;
	--sk-tarifrechner-text: #162433;
	--sk-tarifrechner-muted: #6b7a89;
	--sk-tarifrechner-accent: #182a40;
	--sk-tarifrechner-accent-strong: #2b5c92;
	--sk-tarifrechner-tab-surface: #eff1f3;
	--sk-tarifrechner-tab-surface-strong: #e7eaee;
	--sk-tarifrechner-product-rail: #edf0ed;
	--sk-tarifrechner-product-rail-strong: #e6ebe6;
	--sk-tarifrechner-product-text: #465156;
	--sk-tarifrechner-shadow: 0 26px 60px rgba(15, 23, 42, 0.11);
	max-width: 980px;
	margin: 0 auto;
	position: relative;
	color: var(--sk-tarifrechner-text);
}

.sk-tarifrechner-search-notice {
	margin-bottom: 16px;
	padding: 13px 15px;
	border-radius: 14px;
	font-size: 0.94rem;
	line-height: 1.5;
}

.sk-tarifrechner-search-notice-error {
	border: 1px solid #f2c3bc;
	background: #feeeec;
	color: #b73c2d;
}

.sk-tarifrechner-sr-only {
	position: absolute;
	inline-size: 1px;
	block-size: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.sk-tarifrechner-search-form {
	display: grid;
	gap: 0;
}

.sk-tarifrechner-search-fieldset {
	margin: 0;
	padding: 0;
	border: 0;
}

.sk-tarifrechner-search-fieldset-tabs {
	position: relative;
	z-index: 1;
	margin-bottom: 0;
}

.sk-tarifrechner-choice-group {
	min-width: 0;
}

.sk-tarifrechner-choice-input {
	position: absolute;
	inline-size: 1px;
	block-size: 1px;
	margin: 0;
	padding: 0;
	border: 0;
	opacity: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.sk-tarifrechner-choice-label {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-width: 0;
	border: 1px solid transparent;
	color: var(--sk-tarifrechner-text);
	font-weight: 700;
	text-align: center;
	cursor: pointer;
	transition: transform 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease, color 0.16s ease;
}

.sk-tarifrechner-choice-label-text {
	display: inline-block;
	line-height: 1.15;
}

.sk-tarifrechner-choice-group-tabs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	border: 1px solid var(--sk-tarifrechner-border);
	border-bottom: 0;
	border-radius: 30px 30px 0 0;
	overflow: hidden;
	background: linear-gradient(180deg, var(--sk-tarifrechner-tab-surface) 0%, var(--sk-tarifrechner-tab-surface-strong) 100%);
}

.sk-tarifrechner-choice-label-tabs {
	position: relative;
	min-height: 68px;
	padding: 0 24px;
	border-color: transparent;
	border-right-color: var(--sk-tarifrechner-border);
	border-radius: 0;
	background: linear-gradient(180deg, var(--sk-tarifrechner-tab-surface) 0%, var(--sk-tarifrechner-tab-surface-strong) 100%);
	font-size: 1rem;
	font-weight: 700;
	color: #55616d;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.88);
}

.sk-tarifrechner-choice-group-tabs .sk-tarifrechner-choice-label-tabs:last-of-type {
	border-right-color: transparent;
}

.sk-tarifrechner-choice-label-tabs::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background: var(--sk-tarifrechner-border);
}

.sk-tarifrechner-choice-label-tabs:hover {
	color: var(--sk-tarifrechner-text);
	background: linear-gradient(180deg, #f3f5f7 0%, #eceff2 100%);
}

.sk-tarifrechner-choice-input:checked + .sk-tarifrechner-choice-label-tabs {
	z-index: 1;
	background: linear-gradient(180deg, #ffffff 0%, #fbfcfd 100%);
	color: var(--sk-tarifrechner-accent);
	font-weight: 800;
	box-shadow: none;
}

.sk-tarifrechner-choice-input:checked + .sk-tarifrechner-choice-label-tabs::after {
	background: transparent;
}

.sk-tarifrechner-search-panel {
	margin-top: 0;
	display: grid;
	gap: 24px;
	padding: clamp(20px, 3vw, 28px);
	border: 1px solid var(--sk-tarifrechner-border);
	border-top: 0;
	border-radius: 0 0 30px 30px;
	background: linear-gradient(180deg, #ffffff 0%, #fbfcfd 100%);
	box-shadow: var(--sk-tarifrechner-shadow);
}

.sk-tarifrechner-search-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.65fr) minmax(250px, 0.82fr);
	gap: 28px;
	align-items: end;
}

.sk-tarifrechner-search-column {
	min-width: 0;
}

.sk-tarifrechner-search-column-address {
	display: grid;
}

.sk-tarifrechner-search-column-consumption {
	display: grid;
	align-self: end;
	padding-left: 24px;
	border-left: 1px solid rgba(22, 36, 51, 0.08);
}

.sk-tarifrechner-search-address-grid {
	display: grid;
	grid-template-columns: minmax(108px, 0.68fr) minmax(0, 1.82fr) minmax(92px, 0.52fr);
	gap: 14px;
}

.sk-tarifrechner-choice-input:focus-visible + .sk-tarifrechner-choice-label {
	outline: 3px solid rgba(43, 92, 146, 0.22);
	outline-offset: 2px;
}

.sk-tarifrechner-search-field {
	display: grid;
	gap: 8px;
}

.sk-tarifrechner-search-label {
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	color: #5f6d7b;
}

.sk-tarifrechner-search-input {
	inline-size: 100%;
	min-height: 56px;
	padding: 0 16px;
	border: 1px solid var(--sk-tarifrechner-border);
	border-radius: 14px;
	background: var(--sk-tarifrechner-surface-soft);
	color: var(--sk-tarifrechner-text);
	font-size: 1rem;
	box-sizing: border-box;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82);
	transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}

.sk-tarifrechner-search-input:hover {
	border-color: var(--sk-tarifrechner-border-strong);
	background: var(--sk-tarifrechner-surface-soft-strong);
}

.sk-tarifrechner-search-input:focus {
	border-color: var(--sk-tarifrechner-accent-strong);
	background: #ffffff;
	outline: none;
	box-shadow: 0 0 0 4px rgba(43, 92, 146, 0.11);
}

.sk-tarifrechner-search-input::placeholder {
	color: #8392a5;
}

.sk-tarifrechner-search-fieldset-product {
	margin-top: 0;
}

.sk-tarifrechner-product-controls {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 16px;
}

.sk-tarifrechner-product-rail {
	display: inline-flex;
	align-self: flex-start;
	min-width: 0;
	max-width: 100%;
	padding: 6px;
	border: 1px solid rgba(57, 70, 75, 0.1);
	border-radius: 999px;
	background: linear-gradient(180deg, var(--sk-tarifrechner-product-rail) 0%, var(--sk-tarifrechner-product-rail-strong) 100%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75);
}

.sk-tarifrechner-choice-group-product {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
	gap: 4px;
}

.sk-tarifrechner-choice-label-product {
	min-height: 40px;
	padding: 0 16px;
	border-color: transparent;
	border-radius: 999px;
	background: transparent;
	font-size: 0.95rem;
	font-weight: 700;
	color: var(--sk-tarifrechner-product-text);
	justify-content: flex-start;
}

.sk-tarifrechner-choice-label-product:hover {
	background: rgba(255, 255, 255, 0.56);
	color: var(--sk-tarifrechner-text);
}

.sk-tarifrechner-choice-input:checked + .sk-tarifrechner-choice-label-product {
	border-color: rgba(22, 36, 51, 0.08);
	background: #ffffff;
	color: var(--sk-tarifrechner-text);
	box-shadow: 0 8px 18px rgba(18, 38, 58, 0.08);
}

.sk-tarifrechner-oeko-control {
	justify-self: end;
}

.sk-tarifrechner-oeko-label {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--sk-tarifrechner-muted);
	font-size: 0.92rem;
	font-weight: 700;
	letter-spacing: 0.01em;
	cursor: pointer;
	user-select: none;
	white-space: nowrap;
}

.sk-tarifrechner-oeko-label-text {
	color: inherit;
}

.sk-tarifrechner-oeko-switch {
	position: relative;
	display: inline-flex;
	align-items: center;
	inline-size: 44px;
	block-size: 26px;
	flex: 0 0 44px;
	padding: 2px;
	border: 1px solid rgba(22, 36, 51, 0.12);
	border-radius: 999px;
	background: linear-gradient(180deg, #e7ece8 0%, #dde4de 100%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
	transition: background 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

.sk-tarifrechner-oeko-thumb {
	display: block;
	inline-size: 20px;
	block-size: 20px;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 2px 6px rgba(18, 38, 58, 0.12);
	transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.sk-tarifrechner-oeko-label:hover {
	color: var(--sk-tarifrechner-text);
}

.sk-tarifrechner-oeko-label:hover .sk-tarifrechner-oeko-switch {
	border-color: rgba(22, 36, 51, 0.18);
}

.sk-tarifrechner-oeko-input:checked + .sk-tarifrechner-oeko-label {
	color: var(--sk-tarifrechner-text);
}

.sk-tarifrechner-oeko-input:checked + .sk-tarifrechner-oeko-label .sk-tarifrechner-oeko-switch {
	border-color: rgba(51, 94, 70, 0.2);
	background: linear-gradient(180deg, #dce7de 0%, #cddccc 100%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.84);
}

.sk-tarifrechner-oeko-input:checked + .sk-tarifrechner-oeko-label .sk-tarifrechner-oeko-thumb {
	transform: translateX(18px);
	box-shadow: 0 3px 8px rgba(18, 38, 58, 0.14);
}

.sk-tarifrechner-oeko-input:focus-visible + .sk-tarifrechner-oeko-label {
	outline: 3px solid rgba(43, 92, 146, 0.22);
	outline-offset: 4px;
	border-radius: 999px;
}

.sk-tarifrechner-choice-icon {
	display: inline-block;
	inline-size: 16px;
	block-size: 16px;
	flex: 0 0 16px;
	background-color: currentColor;
	opacity: 0.88;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
}

.sk-tarifrechner-choice-icon.is-strom {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13.2 2L6 13.1h4.8L9.6 22 18 10.8h-4.8L13.2 2z' fill='black'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13.2 2L6 13.1h4.8L9.6 22 18 10.8h-4.8L13.2 2z' fill='black'/%3E%3C/svg%3E");
}

.sk-tarifrechner-choice-icon.is-gas {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13.1 2.5c.2 2.1-.5 3.7-2 5.1-1.5 1.4-3 3-3 5.7 0 3.5 2.6 6.2 6.1 6.2 3.3 0 5.7-2.3 5.7-5.8 0-3.2-1.8-5.3-4-7.4-.9-.8-1.8-1.8-2.8-3.8zm.8 8.9c1.5 1.3 2.4 2.5 2.4 4 0 1.8-1.2 3.1-3 3.1-1.9 0-3.2-1.5-3.2-3.3 0-1.4.7-2.5 2-3.8.4 1 .9 1.4 1.8 1.6z' fill='black'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13.1 2.5c.2 2.1-.5 3.7-2 5.1-1.5 1.4-3 3-3 5.7 0 3.5 2.6 6.2 6.1 6.2 3.3 0 5.7-2.3 5.7-5.8 0-3.2-1.8-5.3-4-7.4-.9-.8-1.8-1.8-2.8-3.8zm.8 8.9c1.5 1.3 2.4 2.5 2.4 4 0 1.8-1.2 3.1-3 3.1-1.9 0-3.2-1.5-3.2-3.3 0-1.4.7-2.5 2-3.8.4 1 .9 1.4 1.8 1.6z' fill='black'/%3E%3C/svg%3E");
}

.sk-tarifrechner-search-submit {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px;
	margin-top: 0;
	padding-top: 20px;
	border-top: 1px solid rgba(22, 36, 51, 0.08);
}

.sk-tarifrechner-search-submit-copy {
	max-width: 440px;
}

.sk-tarifrechner-search-submit-text {
	margin: 0;
	font-size: 0.9rem;
	line-height: 1.5;
	color: var(--sk-tarifrechner-muted);
}

.sk-tarifrechner-search-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 54px;
	min-width: 210px;
	padding: 0 24px;
	border: 0;
	border-radius: 16px;
	background: linear-gradient(180deg, #1b3048 0%, #244a73 100%);
	color: #ffffff;
	font-size: 1rem;
	font-weight: 800;
	letter-spacing: 0.01em;
	cursor: pointer;
	box-shadow: 0 14px 28px rgba(27, 48, 72, 0.2);
	transition: transform 0.16s ease, box-shadow 0.16s ease, filter 0.16s ease;
}

.sk-tarifrechner-search-button:hover {
	transform: translateY(-1px);
	filter: saturate(1.03);
	box-shadow: 0 18px 34px rgba(27, 48, 72, 0.22);
}

.sk-tarifrechner-search-button:focus-visible {
	outline: 3px solid rgba(43, 92, 146, 0.24);
	outline-offset: 3px;
}

@keyframes sk-tarifrechner-shimmer {
	0% {
		background-position: 120% 0;
	}

	100% {
		background-position: -40% 0;
	}
}

.sk-tarifrechner-results-shell {
	padding: clamp(14px, 3vw, 30px) 14px 26px;
}

.sk-tarifrechner-results {
	--sk-tarifrechner-results-surface: #ffffff;
	--sk-tarifrechner-results-surface-soft: #f7f8fa;
	--sk-tarifrechner-results-border: #dbe2ea;
	--sk-tarifrechner-results-text: #162433;
	--sk-tarifrechner-results-muted: #697787;
	--sk-tarifrechner-results-accent: #1b3048;
	--sk-tarifrechner-results-accent-soft: #edf3fb;
	--sk-tarifrechner-results-success: #eaf7ef;
	--sk-tarifrechner-results-success-text: #1b6840;
	--sk-tarifrechner-results-error: #feeeec;
	--sk-tarifrechner-results-error-text: #b73c2d;
	max-width: 1260px;
	margin: 0 auto;
	color: var(--sk-tarifrechner-results-text);
}

.sk-tarifrechner-results-notice {
	margin-bottom: 16px;
	padding: 14px 16px;
	border-radius: 14px;
	border: 1px solid var(--sk-tarifrechner-results-border);
	font-size: 0.95rem;
	line-height: 1.5;
}

.sk-tarifrechner-results-notice-error {
	border-color: #f2c3bc;
	background: var(--sk-tarifrechner-results-error);
	color: var(--sk-tarifrechner-results-error-text);
}

.sk-tarifrechner-results-notice-info {
	background: #f4f8fc;
	color: #32557e;
}

.sk-tarifrechner-results-summary {
	display: grid;
	gap: 16px;
	padding: clamp(18px, 3vw, 28px);
	border: 1px solid var(--sk-tarifrechner-results-border);
	border-radius: 24px;
	background: linear-gradient(180deg, #ffffff 0%, #fbfcfd 100%);
	box-shadow: 0 22px 54px rgba(15, 23, 42, 0.08);
}

.sk-tarifrechner-results-summary-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 14px;
}

.sk-tarifrechner-results-summary-item {
	display: grid;
	gap: 6px;
	padding: 12px 14px;
	border-radius: 16px;
	background: var(--sk-tarifrechner-results-surface-soft);
}

.sk-tarifrechner-results-summary-label,
.sk-tarifrechner-results-summary-filters-label {
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--sk-tarifrechner-results-muted);
}

.sk-tarifrechner-results-summary-value {
	font-size: 0.98rem;
	font-weight: 700;
	line-height: 1.3;
}

.sk-tarifrechner-results-summary-filters {
	display: grid;
	gap: 10px;
}

.sk-tarifrechner-results-summary-filters-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.sk-tarifrechner-results-summary-filter-chip,
.sk-tarifrechner-results-summary-filter-empty {
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	padding: 0 13px;
	border-radius: 999px;
	background: #eef3f6;
	color: var(--sk-tarifrechner-results-text);
	font-size: 0.9rem;
	font-weight: 600;
}

.sk-tarifrechner-results-summary-filter-empty {
	color: var(--sk-tarifrechner-results-muted);
}

.sk-tarifrechner-results-layout {
	display: grid;
	grid-template-columns: minmax(0, 3fr) minmax(280px, 1fr);
	gap: 24px;
	margin-top: 24px;
	align-items: start;
}

.sk-tarifrechner-results-layout.is-main-only {
	grid-template-columns: 1fr;
}

.sk-tarifrechner-results-main {
	display: grid;
	gap: 18px;
	min-width: 0;
}

.sk-tarifrechner-results-sidebar {
	display: grid;
	gap: 16px;
}

.sk-tarifrechner-results-filterbar {
	display: grid;
	grid-template-columns: auto minmax(180px, 0.85fr) minmax(180px, 0.85fr) auto;
	gap: 14px;
	align-items: end;
	padding: 18px 20px;
	border: 1px solid var(--sk-tarifrechner-results-border);
	border-radius: 20px;
	background: #ffffff;
	box-shadow: 0 14px 34px rgba(15, 23, 42, 0.05);
}

.sk-tarifrechner-results-filter-field {
	display: grid;
	gap: 8px;
	min-width: 0;
}

.sk-tarifrechner-results-filter-field.is-toggle {
	align-self: center;
	padding-right: 8px;
}

.sk-tarifrechner-results-filter-label {
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--sk-tarifrechner-results-muted);
}

.sk-tarifrechner-results-filter-select,
.sk-tarifrechner-results-filter-input {
	inline-size: 100%;
	min-height: 48px;
	padding: 0 14px;
	border: 1px solid var(--sk-tarifrechner-results-border);
	border-radius: 14px;
	background: var(--sk-tarifrechner-results-surface-soft);
	color: var(--sk-tarifrechner-results-text);
	font-size: 0.96rem;
	box-sizing: border-box;
}

.sk-tarifrechner-results-filter-select:focus,
.sk-tarifrechner-results-filter-input:focus {
	outline: none;
	border-color: #3a6ea6;
	box-shadow: 0 0 0 4px rgba(43, 92, 146, 0.11);
	background: #ffffff;
}

.sk-tarifrechner-results-filter-actions {
	display: flex;
	align-items: stretch;
}

.sk-tarifrechner-results-filter-button,
.sk-tarifrechner-results-card-button,
.sk-tarifrechner-results-sidecard-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 18px;
	border: 0;
	border-radius: 14px;
	background: linear-gradient(180deg, #1b3048 0%, #244a73 100%);
	color: #ffffff;
	font-size: 0.95rem;
	font-weight: 800;
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.16s ease, box-shadow 0.16s ease, filter 0.16s ease;
	box-shadow: 0 12px 28px rgba(27, 48, 72, 0.16);
}

.sk-tarifrechner-results-filter-button:hover,
.sk-tarifrechner-results-card-button:hover,
.sk-tarifrechner-results-sidecard-button:hover {
	transform: translateY(-1px);
	filter: saturate(1.03);
}

.sk-tarifrechner-results-sidecard-button.is-secondary {
	background: linear-gradient(180deg, #eef2f6 0%, #e3e9ef 100%);
	color: var(--sk-tarifrechner-results-text);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

.sk-tarifrechner-results-feedback,
.sk-tarifrechner-results-highlights,
.sk-tarifrechner-results-list {
	display: grid;
	gap: 16px;
}

.sk-tarifrechner-results-loading {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 18px 20px;
	border-radius: 18px;
	border: 1px solid var(--sk-tarifrechner-results-border);
	background: #ffffff;
}

.sk-tarifrechner-results-loading-spinner {
	inline-size: 34px;
	block-size: 34px;
	border: 3px solid rgba(43, 92, 146, 0.14);
	border-top-color: #2b5c92;
	border-radius: 50%;
	animation: sk-tarifrechner-spin 0.85s linear infinite;
}

@keyframes sk-tarifrechner-spin {
	to {
		transform: rotate(360deg);
	}
}

.sk-tarifrechner-results-loading-copy {
	display: grid;
	gap: 4px;
}

.sk-tarifrechner-results-error-card {
	display: grid;
	gap: 12px;
	padding: 22px 24px;
	border: 1px solid #f2c3bc;
	border-radius: 22px;
	background: linear-gradient(180deg, #fff7f5 0%, #fff1ee 100%);
	box-shadow: 0 18px 40px rgba(183, 60, 45, 0.08);
}

.sk-tarifrechner-results-error-kicker {
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--sk-tarifrechner-results-error-text);
}

.sk-tarifrechner-results-error-title {
	margin: 0;
	font-size: 1.3rem;
	line-height: 1.2;
}

.sk-tarifrechner-results-error-text {
	margin: 0;
	color: #7f4037;
	line-height: 1.6;
}

.sk-tarifrechner-results-error-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.sk-tarifrechner-results-loading-title {
	font-size: 1rem;
	font-weight: 800;
}

.sk-tarifrechner-results-loading-text {
	margin: 0;
	color: var(--sk-tarifrechner-results-muted);
}

.sk-tarifrechner-results-skeleton-list {
	display: grid;
	gap: 14px;
}

.sk-tarifrechner-results-skeleton-card,
.sk-tarifrechner-results-state,
.sk-tarifrechner-results-highlight-block,
.sk-tarifrechner-results-card,
.sk-tarifrechner-results-sidecard {
	padding: 20px;
	border-radius: 22px;
	border: 1px solid var(--sk-tarifrechner-results-border);
	background: linear-gradient(180deg, #ffffff 0%, #fbfcfd 100%);
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.05);
}

.sk-tarifrechner-results-skeleton-line,
.sk-tarifrechner-results-skeleton-pill {
	background: linear-gradient(90deg, #edf1f5 0%, #f7f9fb 50%, #edf1f5 100%);
	background-size: 220% 100%;
	animation: sk-tarifrechner-shimmer 1.4s ease-in-out infinite;
}

.sk-tarifrechner-results-skeleton-line {
	block-size: 14px;
	border-radius: 999px;
	margin-bottom: 10px;
}

.sk-tarifrechner-results-skeleton-line.is-wide {
	inline-size: 62%;
	block-size: 18px;
}

.sk-tarifrechner-results-skeleton-grid {
	display: flex;
	gap: 10px;
	margin-top: 16px;
}

.sk-tarifrechner-results-skeleton-pill {
	inline-size: 100px;
	block-size: 32px;
	border-radius: 999px;
}

.sk-tarifrechner-results-state.is-empty,
.sk-tarifrechner-results-state.is-error {
	background: #ffffff;
}

.sk-tarifrechner-results-state-title {
	font-size: 1.02rem;
	font-weight: 800;
	margin-bottom: 6px;
}

.sk-tarifrechner-results-state-text {
	margin: 0;
	color: var(--sk-tarifrechner-results-muted);
	line-height: 1.55;
}

.sk-tarifrechner-results-highlight-block {
	display: grid;
	gap: 14px;
	background: linear-gradient(180deg, #f9fbfd 0%, #ffffff 100%);
}

.sk-tarifrechner-results-highlight-kicker {
	font-size: 0.79rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #40607f;
}

.sk-tarifrechner-results-highlight-note {
	padding: 0 4px;
	color: var(--sk-tarifrechner-results-muted);
	font-size: 0.9rem;
}

.sk-tarifrechner-results-card {
	display: grid;
	gap: 18px;
	min-width: 0;
}

.sk-tarifrechner-results-card.is-highlight {
	border-color: #bfd1e3;
	background: linear-gradient(180deg, #ffffff 0%, #f8fbfe 100%);
}

.sk-tarifrechner-results-card.is-selected {
	border-color: #7ca4cf;
	box-shadow: 0 0 0 3px rgba(43, 92, 146, 0.12), 0 18px 42px rgba(15, 23, 42, 0.05);
}

.sk-tarifrechner-results-card-top {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(260px, 0.95fr);
	gap: 18px;
	align-items: start;
}

.sk-tarifrechner-results-card-identity,
.sk-tarifrechner-results-card-pricing,
.sk-tarifrechner-results-card-aside {
	min-width: 0;
}

.sk-tarifrechner-results-card-rank {
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--sk-tarifrechner-results-muted);
}

.sk-tarifrechner-results-card-provider {
	margin-top: 4px;
	font-size: 0.9rem;
	font-weight: 700;
	color: #496073;
}

.sk-tarifrechner-results-card-title {
	margin: 4px 0 0;
	font-size: clamp(1.18rem, 2vw, 1.42rem);
	line-height: 1.2;
}

.sk-tarifrechner-results-card-labels,
.sk-tarifrechner-results-card-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 10px;
}

.sk-tarifrechner-results-card-price-main {
	font-size: clamp(1.4rem, 2.4vw, 1.8rem);
	font-weight: 800;
	line-height: 1.1;
}

.sk-tarifrechner-results-card-price-sub {
	margin-top: 4px;
	color: var(--sk-tarifrechner-results-muted);
	font-size: 0.92rem;
}

.sk-tarifrechner-results-card-price-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin-top: 14px;
}

.sk-tarifrechner-results-card-price-grid div,
.sk-tarifrechner-results-card-feature {
	display: grid;
	gap: 4px;
	padding: 10px 12px;
	border-radius: 14px;
	background: #f5f7fa;
}

.sk-tarifrechner-results-card-price-grid span,
.sk-tarifrechner-results-card-feature span {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--sk-tarifrechner-results-muted);
}

.sk-tarifrechner-results-card-price-grid strong,
.sk-tarifrechner-results-card-feature strong {
	font-size: 0.94rem;
	line-height: 1.35;
}

.sk-tarifrechner-results-card-middle {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(220px, 0.7fr);
	gap: 18px;
	align-items: start;
}

.sk-tarifrechner-results-card-features {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px;
}

.sk-tarifrechner-results-card-aside {
	display: grid;
	gap: 14px;
	align-content: start;
}

.sk-tarifrechner-results-badge {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 0 12px;
	border-radius: 999px;
	background: #eef2f5;
	color: #304657;
	font-size: 0.84rem;
	font-weight: 700;
}

.sk-tarifrechner-results-badge.is-good {
	background: #ebf7ef;
	color: #1f6b36;
}

.sk-tarifrechner-results-badge.is-eco {
	background: #edf5ec;
	color: #356249;
}

.sk-tarifrechner-results-badge.is-warn {
	background: #fff1ea;
	color: #a05524;
}

.sk-tarifrechner-results-badge.is-highlight {
	background: #e8f0fb;
	color: #2a5b92;
}

.sk-tarifrechner-results-card-button {
	inline-size: 100%;
}

.sk-tarifrechner-results-card-details {
	display: grid;
	gap: 10px;
}

.sk-tarifrechner-results-detail {
	border: 1px solid var(--sk-tarifrechner-results-border);
	border-radius: 16px;
	background: #ffffff;
	overflow: hidden;
}

.sk-tarifrechner-results-detail-summary {
	padding: 14px 16px;
	font-weight: 700;
	cursor: pointer;
	list-style: none;
}

.sk-tarifrechner-results-detail-summary::-webkit-details-marker {
	display: none;
}

.sk-tarifrechner-results-detail[open] .sk-tarifrechner-results-detail-summary {
	border-bottom: 1px solid var(--sk-tarifrechner-results-border);
	background: #fafbfd;
}

.sk-tarifrechner-results-detail-list {
	margin: 0;
	padding: 12px 18px 16px;
	list-style: disc;
}

.sk-tarifrechner-results-detail-item {
	margin: 0 0 8px 18px;
	color: var(--sk-tarifrechner-results-text);
	line-height: 1.55;
}

.sk-tarifrechner-results-sidecard {
	display: grid;
	gap: 12px;
}

.sk-tarifrechner-results-sidecard.is-admin-hint {
	background: #f6f9fc;
}

.sk-tarifrechner-results-sidecard-title {
	margin: 0;
	font-size: 1.08rem;
	line-height: 1.3;
}

.sk-tarifrechner-results-sidecard-text {
	margin: 0;
	color: var(--sk-tarifrechner-results-muted);
	line-height: 1.55;
}

.sk-tarifrechner-results-lead-form {
	display: grid;
	gap: 12px;
}

.sk-tarifrechner-results-lead-notice {
	min-height: 1px;
	font-size: 0.9rem;
	line-height: 1.45;
}

.sk-tarifrechner-results-lead-notice.is-loading {
	color: var(--sk-tarifrechner-results-muted);
}

.sk-tarifrechner-results-lead-notice.is-success {
	color: var(--sk-tarifrechner-results-success-text);
}

.sk-tarifrechner-results-lead-notice.is-error {
	color: var(--sk-tarifrechner-results-error-text);
}

.sk-tarifrechner-results-checkbox {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 0.9rem;
	line-height: 1.5;
	color: var(--sk-tarifrechner-results-text);
}

.sk-tarifrechner-results-checkbox input {
	margin-top: 3px;
}

.sk-lieferorte-actions {
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 18px;
}

.sk-lieferorte-add-button,
.sk-lieferorte-detail-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 11px 16px;
	border-radius: 999px;
	text-decoration: none;
	border: 1px solid var(--sk-border-strong);
	background: var(--sk-surface);
	color: var(--sk-text);
	font-weight: 600;
	transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
	box-shadow: 0 6px 18px rgba(15, 23, 42, 0.04);
}

.sk-lieferorte-add-button:hover,
.sk-lieferorte-detail-button:hover {
	transform: translateY(-1px);
	border-color: #c3ccd8;
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.08);
}

.sk-lieferorte-group-list {
	display: grid;
	gap: 20px;
}

.sk-lieferort-group {
	border: 1px solid var(--sk-border);
	border-radius: 20px;
	background: linear-gradient(180deg, #ffffff 0%, #fbfcfd 100%);
	padding: 22px;
	box-shadow: 0 14px 30px rgba(15, 23, 42, 0.05);
}

.sk-lieferort-group-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 18px;
	flex-wrap: wrap;
	margin-bottom: 18px;
}

.sk-lieferort-group-header-main {
	flex: 1 1 520px;
	min-width: 260px;
}

.sk-lieferort-group-title {
	font-weight: 700;
	font-size: 1.2rem;
	line-height: 1.2;
	margin-bottom: 6px;
}

.sk-lieferort-group-address {
	color: var(--sk-muted);
	font-size: 0.96rem;
}

.sk-lieferort-group-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}

.sk-lieferort-meta-pill {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 11px;
	border-radius: 999px;
	background: var(--sk-surface-soft);
	border: 1px solid var(--sk-border);
	font-size: 0.92rem;
	line-height: 1;
}

.sk-lieferort-meta-pill.is-count {
	background: var(--sk-accent-soft);
	border-color: #cfe0f7;
	color: var(--sk-accent);
}

.sk-lieferort-status-chip {
	display: inline-block;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 0.88rem;
	font-weight: 600;
	border: 1px solid #c7d8f1;
	background: #eef5ff;
	color: #2b5c9d;
}

.sk-lieferort-status-chip--success {
	border-color: #b9dfc0;
	background: #edf8ef;
	color: #1f6b36;
}

.sk-lieferort-status-chip--warning {
	border-color: #ecd38e;
	background: #fff8e8;
	color: #8a6700;
}

.sk-lieferort-status-chip--danger {
	border-color: #efc1c1;
	background: #fceeee;
	color: #8d2b2b;
}

.sk-lieferort-status-chip--info {
	border-color: #c7d8f1;
	background: #eef5ff;
	color: #2b5c9d;
}

.sk-lieferort-orders-title {
	font-weight: 700;
	font-size: 0.98rem;
	margin-bottom: 10px;
}

.sk-lieferort-orders {
	border-top: 1px solid var(--sk-border);
	padding-top: 14px;
}

.sk-lieferort-orders-shell {
	border: 1px solid var(--sk-border);
	border-radius: 16px;
	padding: 12px 14px;
	background: var(--sk-surface-soft);
}

.sk-lieferort-orders-table-wrap {
	overflow-x: auto;
}

.sk-lieferort-orders-table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}

.sk-lieferort-orders-head-cell {
	padding: 0 10px 8px;
	font-size: 0.74rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--sk-muted);
	text-align: left;
	white-space: nowrap;
}

.sk-lieferort-orders-head-cell.is-action {
	text-align: right;
}

.sk-lieferort-order-row {
	background: var(--sk-surface);
}

.sk-lieferort-order-row:first-child .sk-lieferort-order-cell {
	border-top: 1px solid var(--sk-border);
}

.sk-lieferort-order-cell {
	padding: 11px 10px;
	border-top: 1px solid var(--sk-border);
	font-size: 0.94rem;
	line-height: 1.35;
	vertical-align: middle;
}

.sk-lieferort-order-cell.is-order-id {
	font-weight: 700;
	color: var(--sk-text);
	white-space: nowrap;
}

.sk-lieferort-order-cell.is-status {
	min-width: 180px;
}

.sk-lieferort-order-cell.is-email .sk-lieferort-order-cell-value {
	display: inline-block;
	max-width: 240px;
	white-space: normal;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.sk-lieferort-status-stack {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.sk-lieferort-savings-chip {
	display: inline-flex;
	align-items: center;
	padding: 4px 10px;
	border-radius: 999px;
	border: 1px solid var(--sk-success-border);
	background: var(--sk-success-bg);
	color: var(--sk-success-text);
	font-size: 0.88rem;
	font-weight: 700;
	white-space: nowrap;
}

.sk-lieferort-order-cell.is-action {
	text-align: right;
	white-space: nowrap;
}

.sk-lieferort-orders .sk-lieferorte-detail-button {
	padding: 8px 12px;
	font-size: 0.88rem;
	font-weight: 700;
	box-shadow: none;
}

.sk-lieferort-order-empty {
	color: var(--sk-muted);
}

.sk-lieferort-page {
	max-width: 1220px;
	margin: 0 auto;
	padding: 24px 16px;
	color: #17324d;
}

.sk-lieferort-actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 18px;
}

.sk-lieferort-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 11px 16px;
	border-radius: 999px;
	border: 1px solid #d8e1ec;
	background: #fff;
	color: #17324d;
	text-decoration: none;
	font-weight: 600;
	transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, background 0.16s ease, color 0.16s ease;
	box-shadow: 0 8px 18px rgba(15, 42, 70, 0.05);
	cursor: pointer;
}

.sk-lieferort-btn:hover {
	transform: translateY(-1px);
	border-color: #c7d3df;
	box-shadow: 0 12px 24px rgba(15, 42, 70, 0.08);
}

.sk-lieferort-btn-primary {
	background: #17324d;
	border-color: #17324d;
	color: #fff;
}

.sk-lieferort-btn-warning {
	background: #fff7e8;
	border-color: #efd79d;
	color: #8a6700;
}

.sk-lieferort-btn-danger {
	background: #feeeec;
	border-color: #f2c3bc;
	color: #b73c2d;
}

.sk-lieferort-btn-secondary {
	background: #fff;
	border-color: #d8e1ec;
	color: #17324d;
}

.sk-lieferort-btn[disabled] {
	opacity: 0.6;
	cursor: not-allowed;
	transform: none;
	box-shadow: none;
}

.sk-lieferort-action-confirms {
	display: grid;
	gap: 12px;
	margin: -6px 0 18px;
}

.sk-lieferort-action-confirm {
	display: grid;
	gap: 12px;
	padding: 16px 18px;
	border-radius: 18px;
	border: 1px solid #f2c3bc;
	background: #fff9f8;
}

.sk-lieferort-action-confirm[hidden] {
	display: none !important;
}

.sk-lieferort-action-confirm.is-delete {
	border-color: #efb5b5;
	background: #fff3f3;
}

.sk-lieferort-action-confirm-copy {
	display: grid;
	gap: 4px;
}

.sk-lieferort-action-confirm-title {
	font-weight: 700;
	color: #102b46;
}

.sk-lieferort-action-confirm-text {
	color: #5f7388;
	line-height: 1.55;
}

.sk-lieferort-action-confirm-actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.sk-lieferort-notice,
.sk-create-notice,
.sk-lieferort-edit-notice {
	padding: 14px 16px;
	border-radius: 16px;
	margin-bottom: 16px;
}

.sk-lieferort-notice-success,
.sk-create-notice-success,
.sk-lieferort-edit-notice-success {
	background: #e9f8ef;
	border: 1px solid #bee7cb;
	color: #1f7a42;
}

.sk-lieferort-notice-error,
.sk-create-notice-error,
.sk-lieferort-edit-notice-error {
	background: #feeeec;
	border: 1px solid #f2c3bc;
	color: #b73c2d;
}

.sk-lieferort-hero {
	background: linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%);
	border: 1px solid #e3ebf4;
	border-radius: 24px;
	padding: 26px;
	box-shadow: 0 16px 32px rgba(15, 42, 70, 0.05);
	margin-bottom: 22px;
}

.sk-lieferort-hero-top {
	display: flex;
	gap: 18px;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	margin-bottom: 14px;
}

.sk-lieferort-kicker {
	font-size: 0.9rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #5c7898;
	margin-bottom: 8px;
}

.sk-lieferort-title {
	margin: 0;
	font-size: 2.1rem;
	line-height: 1.08;
	color: #102b46;
}

.sk-lieferort-header-desc {
	margin: 10px 0 0;
	color: #60748a;
	max-width: 860px;
	line-height: 1.6;
}

.sk-lieferort-status-wrap {
	display: flex;
	align-items: flex-start;
}

.sk-lieferort-status {
	display: inline-flex;
	align-items: center;
	padding: 8px 12px;
	border-radius: 999px;
	font-weight: 700;
	font-size: 0.95rem;
	white-space: nowrap;
}

.sk-status-green {
	background: #e9f8ef;
	color: #1f7a42;
	border: 1px solid #bee7cb;
}

.sk-status-red {
	background: #feeeec;
	color: #b73c2d;
	border: 1px solid #f2c3bc;
}

.sk-status-amber {
	background: #fff7e8;
	color: #9a6a00;
	border: 1px solid #efd79d;
}

.sk-status-blue {
	background: #eef5ff;
	color: #24599d;
	border: 1px solid #c8dbf5;
}

.sk-status-gray {
	background: #f4f6f8;
	color: #556273;
	border: 1px solid #dbe2e8;
}

.sk-lieferort-status-stack {
	display: grid;
	gap: 14px;
	margin-top: 18px;
	min-width: 0;
}

.sk-lieferort-status-stack > * {
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
}

.sk-lieferort-header-notice {
	margin-top: 0;
	padding: 16px 18px;
	border-radius: 18px;
	border: 1px solid #d9e7fb;
	background: #f5f9ff;
}

.sk-lieferort-header-notice-label {
	display: block;
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #5c7898;
	margin-bottom: 6px;
}

.sk-lieferort-header-notice-value {
	color: #17324d;
	line-height: 1.6;
	font-weight: 600;
	overflow-wrap: anywhere;
}

.sk-lieferort-status-context-note {
	padding: 14px 16px;
	border-radius: 18px;
	border: 1px solid #e5ecf3;
	background: #fbfdff;
}

.sk-lieferort-status-context-label {
	display: block;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #627d99;
	margin-bottom: 6px;
}

.sk-lieferort-status-context-text {
	display: block;
	color: #35516e;
	line-height: 1.6;
	overflow-wrap: anywhere;
}

.sk-lieferort-chip-row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 18px;
}

.sk-lieferort-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 12px;
	border-radius: 999px;
	background: #f6f8fb;
	border: 1px solid #e3eaf2;
	font-size: 0.93rem;
	color: #23415e;
}

.sk-lieferort-chip strong {
	color: #102b46;
}

.sk-lieferort-summary-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 12px;
	margin-top: 18px;
}

.sk-lieferort-summary-item {
	background: #f8fbff;
	border: 1px solid #e6eef8;
	border-radius: 16px;
	padding: 15px;
}

.sk-lieferort-summary-label {
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: #6482a2;
	margin-bottom: 6px;
}

.sk-lieferort-summary-value {
	color: #102b46;
	font-weight: 700;
	line-height: 1.45;
}

.sk-lieferort-timeline-shell {
	padding: 18px;
	border: 1px solid #e4ebf4;
	border-radius: 20px;
	background: linear-gradient(180deg, #ffffff 0%, #f9fbfe 100%);
	min-width: 0;
	overflow: hidden;
}

.sk-lieferort-timeline-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 16px;
}

.sk-lieferort-timeline-kicker {
	display: block;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #617d99;
	margin-bottom: 6px;
}

.sk-lieferort-timeline-caption {
	color: #5f7388;
	line-height: 1.55;
	max-width: 760px;
	overflow-wrap: anywhere;
}

.sk-lieferort-timeline {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: flex-start;
	min-width: 0;
	max-width: 100%;
}

.sk-lieferort-timeline-step {
	position: relative;
	flex: 1 1 0;
	min-width: 0;
	padding-right: 16px;
}

.sk-lieferort-timeline-step:last-child {
	padding-right: 0;
}

.sk-lieferort-timeline-step:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 18px;
	left: 42px;
	right: -8px;
	height: 3px;
	border-radius: 999px;
	background: #dbe4ee;
	z-index: 0;
}

.sk-lieferort-timeline-step.is-complete:not(:last-child)::after {
	background: #2b8a4b;
}

.sk-lieferort-timeline-step.is-current:not(:last-child)::after {
	background: linear-gradient(90deg, #24599d 0%, #dbe4ee 100%);
}

.sk-lieferort-timeline-node {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 999px;
	border: 2px solid #dbe4ee;
	background: #fff;
	color: #6b8097;
	font-weight: 800;
	font-size: 0.88rem;
	box-shadow: 0 0 0 4px #fff;
}

.sk-lieferort-timeline-step.is-complete .sk-lieferort-timeline-node {
	background: #2b8a4b;
	border-color: #2b8a4b;
	color: #fff;
}

.sk-lieferort-timeline-step.is-current .sk-lieferort-timeline-node {
	background: #24599d;
	border-color: #24599d;
	color: #fff;
	box-shadow: 0 0 0 6px rgba(36, 89, 157, 0.16);
}

.sk-lieferort-timeline-step.is-neutral-off-timeline .sk-lieferort-timeline-node {
	background: #f4f7fa;
	color: #7b90a6;
}

.sk-lieferort-timeline-content {
	margin-top: 12px;
	padding-right: 8px;
}

.sk-lieferort-timeline-label {
	display: block;
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #6a8098;
	margin-bottom: 5px;
}

.sk-lieferort-timeline-text {
	display: block;
	font-weight: 700;
	line-height: 1.45;
	color: #17324d;
	overflow-wrap: anywhere;
}

.sk-lieferort-timeline-step.is-complete .sk-lieferort-timeline-label {
	color: #2b8a4b;
}

.sk-lieferort-timeline-step.is-current .sk-lieferort-timeline-label {
	color: #24599d;
}

.sk-lieferort-timeline-step.is-upcoming .sk-lieferort-timeline-text,
.sk-lieferort-timeline-step.is-neutral-off-timeline .sk-lieferort-timeline-text {
	color: #5f7388;
}

.sk-lieferort-tabs-shell {
	margin-top: 8px;
}

.sk-lieferort-tablist {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 18px;
	padding: 0;
}

.sk-lieferort-tab {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 11px 16px;
	border-radius: 999px;
	border: 1px solid #d8e1ec;
	background: #fff;
	color: #35516e;
	font-weight: 700;
	font-size: 0.95rem;
	line-height: 1.2;
	cursor: pointer;
	transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, background 0.16s ease, color 0.16s ease;
	box-shadow: 0 8px 18px rgba(15, 42, 70, 0.04);
}

.sk-lieferort-tab:hover {
	transform: translateY(-1px);
	border-color: #c7d3df;
	box-shadow: 0 12px 24px rgba(15, 42, 70, 0.06);
}

.sk-lieferort-tab:focus-visible {
	outline: 2px solid #24599d;
	outline-offset: 2px;
}

.sk-lieferort-tab.is-active {
	background: #17324d;
	border-color: #17324d;
	color: #fff;
	box-shadow: 0 14px 28px rgba(15, 42, 70, 0.12);
}

.sk-lieferort-tabpanel[hidden] {
	display: none !important;
}

.sk-lieferort-section {
	background: #fff;
	border: 1px solid #e5edf6;
	border-radius: 22px;
	padding: 22px;
	box-shadow: 0 10px 26px rgba(15, 42, 70, 0.04);
}

.sk-lieferort-section-title {
	margin: 0 0 6px;
	color: #102b46;
	font-size: 1.2rem;
}

.sk-lieferort-section-desc {
	margin: 0 0 16px;
	color: #637689;
	line-height: 1.6;
}

.sk-lieferort-subsection + .sk-lieferort-subsection {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid #eef3f8;
}

.sk-lieferort-subsection-title {
	margin: 0 0 6px;
	color: #17324d;
	font-size: 1rem;
}

.sk-lieferort-subsection-desc {
	margin: 0 0 12px;
	color: #697b8f;
	line-height: 1.5;
}

.sk-lieferort-fields {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 12px;
}

.sk-lieferort-field {
	padding: 14px;
	border: 1px solid #edf2f7;
	border-radius: 16px;
	background: #fbfdff;
}

.sk-lieferort-field-label {
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: #6a8098;
	margin-bottom: 8px;
}

.sk-lieferort-field-value {
	color: #12304f;
	line-height: 1.6;
	word-break: break-word;
}

.sk-empty {
	color: #8a98a8;
	font-style: italic;
}

.sk-boolean-badge {
	display: inline-flex;
	align-items: center;
	padding: 5px 10px;
	border-radius: 999px;
	font-weight: 700;
	font-size: 0.92rem;
	border: 1px solid #dbe5f0;
	background: #fff;
}

.sk-bool-yes {
	color: #1f7a42;
	background: #e9f8ef;
	border-color: #bee7cb;
}

.sk-bool-no {
	color: #7a2331;
	background: #feeff1;
	border-color: #f3c6ce;
}

.sk-automation-logic {
	padding: 16px 18px;
	border-radius: 18px;
	border: 1px solid #d9e7fb;
	background: #f5f9ff;
}

.sk-automation-logic-title {
	margin: 0 0 8px;
	font-size: 1rem;
	color: #102b46;
}

.sk-automation-logic-text {
	margin: 0;
	color: #4f647b;
	line-height: 1.6;
}

.sk-attachment-list {
	display: grid;
	gap: 10px;
}

.sk-attachment-item {
	padding: 12px;
	border: 1px solid #e9eef4;
	border-radius: 14px;
	background: #fff;
}

.sk-attachment-thumb {
	display: block;
	max-width: 240px;
	height: auto;
	border: 1px solid #e3e8ef;
	border-radius: 12px;
	margin-bottom: 8px;
}

.sk-attachment-meta {
	font-size: 0.9rem;
	color: #6a7787;
	margin-top: 4px;
}

.sk-lieferort-edit-page {
	max-width: 1180px;
	margin: 0 auto;
	padding: 24px 16px;
}

.sk-lieferort-edit-actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 18px;
}

.sk-lieferort-edit-btn,
.sk-create-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 11px 16px;
	border-radius: 12px;
	border: 1px solid #d9e3ef;
	background: #fff;
	color: #163457;
	text-decoration: none;
	font-weight: 700;
	cursor: pointer;
}

.sk-lieferort-edit-btn {
	font-weight: 600;
	transition: 0.15s ease;
}

.sk-lieferort-edit-btn:hover,
.sk-create-btn:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(22, 52, 87, 0.08);
}

.sk-lieferort-edit-primary,
.sk-create-btn-primary {
	background: #163457;
	color: #fff;
	border-color: #163457;
}

.sk-lieferort-edit-btn[disabled],
.sk-create-btn[disabled] {
	opacity: 0.6;
	cursor: not-allowed;
	transform: none;
	box-shadow: none;
}

.sk-create-btn[disabled] {
	opacity: 0.55;
}

.sk-lieferort-edit-hero {
	background: #fff;
	border: 1px solid #e5edf6;
	border-radius: 20px;
	padding: 24px;
	box-shadow: 0 10px 30px rgba(15, 42, 70, 0.05);
	margin-bottom: 20px;
}

.sk-lieferort-edit-kicker,
.sk-create-kicker {
	font-size: 0.92rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #55779f;
	margin-bottom: 8px;
}

.sk-lieferort-edit-title,
.sk-create-title {
	margin: 0 0 10px;
	font-size: 2rem;
	line-height: 1.1;
	color: #12304f;
}

.sk-lieferort-edit-desc,
.sk-create-desc {
	margin: 0;
	color: #5f7288;
	max-width: 860px;
}

.sk-lieferort-edit-form,
.sk-create-form {
	display: grid;
	gap: 18px;
}

.sk-lieferort-edit-section,
.sk-create-step {
	background: #fff;
	border: 1px solid #e5edf6;
	border-radius: 18px;
	padding: 20px;
	box-shadow: 0 8px 24px rgba(15, 42, 70, 0.04);
}

.sk-create-step {
	border-radius: 20px;
	padding: 22px;
	display: none;
}

.sk-create-step.is-active {
	display: block;
}

.sk-lieferort-edit-section-title {
	margin: 0 0 6px;
	color: #12304f;
	font-size: 1.2rem;
}

.sk-create-step-title {
	margin: 0 0 6px;
	font-size: 1.35rem;
	color: #12304f;
}

.sk-lieferort-edit-section-desc {
	margin: 0 0 16px;
	color: #637689;
	line-height: 1.5;
}

.sk-create-step-desc {
	margin: 0 0 18px;
	color: #637689;
	line-height: 1.55;
	max-width: 860px;
}

.sk-lieferort-edit-fields,
.sk-create-fields {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 14px;
}

.sk-create-fields-spaced {
	margin-top: 14px;
}

.sk-lieferort-edit-field,
.sk-create-field {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.sk-create-field-secondary {
	padding: 14px;
	border: 1px dashed #e2eaf4;
	border-radius: 16px;
	background: #fcfdff;
}

.sk-create-field.full {
	grid-column: 1 / -1;
}

.sk-lieferort-edit-label,
.sk-create-label {
	font-size: 0.9rem;
	font-weight: 700;
	color: #2d4b6a;
}

.sk-create-label {
	font-size: 0.92rem;
}

.sk-lieferort-edit-input,
.sk-lieferort-edit-select,
.sk-lieferort-edit-textarea,
.sk-create-input,
.sk-create-select,
.sk-create-textarea {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid #dce7f3;
	border-radius: 12px;
	background: #fff;
	color: #12304f;
}

.sk-create-textarea {
	min-height: 110px;
	resize: vertical;
}

.sk-lieferort-edit-checkbox-wrap {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 48px;
	padding: 12px 14px;
	border: 1px solid #dce7f3;
	border-radius: 12px;
	background: #fff;
}

.sk-lieferort-edit-checkbox-wrap-spaced {
	margin-top: 10px;
}

.sk-lieferort-edit-help,
.sk-create-help {
	font-size: 0.85rem;
	color: #6d8096;
	line-height: 1.45;
}

.sk-create-help-trace {
	margin-top: 8px;
}

.sk-create-page {
	max-width: 1100px;
	margin: 0 auto;
	padding: 24px 16px;
}

.sk-create-hero {
	background: #fff;
	border: 1px solid #e5edf6;
	border-radius: 22px;
	padding: 24px;
	box-shadow: 0 10px 30px rgba(15, 42, 70, 0.05);
	margin-bottom: 18px;
}

.sk-create-progress {
	background: #fff;
	border: 1px solid #e5edf6;
	border-radius: 18px;
	padding: 18px;
	margin-bottom: 18px;
}

.sk-create-progress-top {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	align-items: center;
	margin-bottom: 12px;
	flex-wrap: wrap;
}

.sk-create-progress-step {
	font-weight: 700;
	color: #12304f;
}

.sk-create-progress-label {
	color: #5f7288;
}

.sk-create-progress-bar {
	height: 10px;
	border-radius: 999px;
	background: #eef3f8;
	overflow: hidden;
}

.sk-create-progress-fill {
	height: 100%;
	width: 0;
	border-radius: 999px;
	background: #163457;
	transition: width 0.2s ease;
}

.sk-create-radio-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 12px;
}

.sk-create-radio-card {
	position: relative;
	border: 1px solid #dce7f3;
	border-radius: 16px;
	background: #fff;
	padding: 16px;
	cursor: pointer;
	transition: 0.15s ease;
}

.sk-create-radio-card input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.sk-create-radio-card.is-selected {
	border-color: #163457;
	box-shadow: 0 0 0 2px rgba(22, 52, 87, 0.08);
}

.sk-create-radio-title {
	font-weight: 700;
	color: #12304f;
	margin-bottom: 6px;
}

.sk-create-radio-text {
	color: #637689;
	line-height: 1.5;
}

.sk-create-toggle-box {
	padding: 14px;
	border: 1px solid #dce7f3;
	border-radius: 14px;
	background: #fff;
}

.sk-create-toggle-box-spaced {
	margin-top: 16px;
}

.sk-create-toggle-box label {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 600;
	color: #12304f;
}

.sk-create-info {
	padding: 14px 16px;
	border-radius: 14px;
	border: 1px solid #dce7f3;
	background: #f8fbff;
	color: #385674;
	line-height: 1.55;
}

.sk-create-info strong {
	color: #12304f;
}

.sk-create-optional {
	margin-top: 18px;
	padding: 18px;
	border: 1px solid #dce7f3;
	border-radius: 18px;
	background: #f8fbff;
}

.sk-create-optional-title,
.sk-create-review-title {
	margin: 0 0 6px;
	font-size: 1rem;
	color: #12304f;
}

.sk-create-review-title {
	margin-bottom: 10px;
}

.sk-create-optional-text {
	margin: 0 0 14px;
	color: #5f7288;
	line-height: 1.55;
}

.sk-create-branch-note {
	margin-top: 12px;
}

.sk-create-conditional {
	display: none;
}

.sk-create-conditional.is-visible {
	display: block;
}

.sk-create-actions {
	display: flex;
	gap: 10px;
	justify-content: space-between;
	flex-wrap: wrap;
}

.sk-create-actions-left,
.sk-create-actions-right {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.sk-create-review-grid {
	display: grid;
	gap: 14px;
}

.sk-create-review-card {
	border: 1px solid #e5edf6;
	border-radius: 16px;
	padding: 16px;
	background: #fbfdff;
}

.sk-create-review-list {
	display: grid;
	gap: 8px;
}

.sk-create-review-item {
	display: grid;
	grid-template-columns: minmax(140px, 220px) 1fr;
	gap: 10px;
	padding: 8px 0;
	border-bottom: 1px solid #edf2f7;
}

.sk-create-review-item:last-child {
	border-bottom: 0;
}

.sk-create-review-label {
	font-weight: 700;
	color: #59718d;
}

.sk-create-review-value {
	color: #12304f;
	word-break: break-word;
}

.sk-create-hidden {
	display: none !important;
}

.sk-lieferort-edit-attachments {
	display: grid;
	gap: 12px;
	margin-top: 6px;
}

.sk-lieferort-edit-attachment-card {
	padding: 14px;
	border: 1px solid #edf2f7;
	border-radius: 14px;
	background: #fbfdff;
}

.sk-lieferort-edit-existing-files {
	display: grid;
	gap: 8px;
	margin-bottom: 10px;
}

.sk-lieferort-edit-existing-file {
	padding: 10px;
	border: 1px solid #e9eef4;
	border-radius: 12px;
	background: #fff;
}

.sk-lieferort-edit-existing-file a {
	text-decoration: none;
}

.sk-lieferort-edit-footer {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	justify-content: flex-end;
}

@media (max-width: 767px) {
	.sk-tarifrechner-results-shell {
		padding-inline: 10px;
	}

	.sk-tarifrechner-results-summary-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sk-tarifrechner-results-layout {
		grid-template-columns: 1fr;
	}

	.sk-tarifrechner-results-filterbar {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sk-tarifrechner-results-filter-field.is-toggle,
	.sk-tarifrechner-results-filter-actions {
		grid-column: 1 / -1;
	}

	.sk-tarifrechner-results-card-top,
	.sk-tarifrechner-results-card-middle,
	.sk-tarifrechner-results-card-features,
	.sk-tarifrechner-results-card-price-grid {
		grid-template-columns: 1fr;
	}

	.sk-tarifrechner-results-sidecard-button,
	.sk-tarifrechner-results-filter-button {
		inline-size: 100%;
	}

	.sk-tarifrechner-search-shell {
		padding: 12px;
	}

	.sk-tarifrechner-choice-label-tabs {
		min-height: 62px;
		padding: 0 18px;
	}

	.sk-tarifrechner-search-panel {
		padding: 18px;
		gap: 18px;
	}

	.sk-tarifrechner-search-grid,
	.sk-tarifrechner-search-address-grid {
		grid-template-columns: 1fr;
	}

	.sk-tarifrechner-product-controls {
		gap: 12px;
	}

	.sk-tarifrechner-search-column-consumption {
		align-self: stretch;
		padding-left: 0;
		padding-top: 18px;
		border-left: 0;
		border-top: 1px solid rgba(22, 36, 51, 0.08);
	}

	.sk-tarifrechner-search-submit {
		grid-template-columns: 1fr;
		align-items: stretch;
		gap: 14px;
		padding-top: 18px;
	}

	.sk-tarifrechner-search-submit-copy {
		max-width: none;
	}

	.sk-tarifrechner-search-button {
		inline-size: 100%;
		min-width: 0;
	}

	.sk-lieferort-page,
	.sk-lieferort-edit-page,
	.sk-create-page {
		padding: 18px 12px;
	}

	.sk-lieferort-actions,
	.sk-lieferort-action-confirm-actions {
		flex-direction: column;
	}

	.sk-lieferort-actions .sk-lieferort-btn,
	.sk-lieferort-action-confirm-actions .sk-lieferort-btn,
	.sk-lieferort-edit-footer .sk-lieferort-edit-btn {
		width: 100%;
	}

	.sk-lieferort-hero,
	.sk-create-hero,
	.sk-create-step,
	.sk-create-progress {
		padding: 18px;
	}

	.sk-lieferort-title,
	.sk-lieferort-edit-title,
	.sk-create-title {
		font-size: 1.6rem;
	}

	.sk-lieferort-status-stack {
		gap: 12px;
	}

	.sk-lieferort-timeline-shell {
		padding: 16px;
	}

	.sk-lieferort-timeline {
		display: block;
	}

	.sk-lieferort-timeline-step {
		padding: 0 0 18px 56px;
		min-width: 0;
	}

	.sk-lieferort-timeline-step:last-child {
		padding-bottom: 0;
	}

	.sk-lieferort-timeline-step:not(:last-child)::after {
		top: 42px;
		left: 17px;
		right: auto;
		width: 3px;
		height: calc(100% - 18px);
	}

	.sk-lieferort-timeline-step.is-current:not(:last-child)::after {
		background: linear-gradient(180deg, #24599d 0%, #dbe4ee 100%);
	}

	.sk-lieferort-timeline-node {
		position: absolute;
		left: 0;
		top: 0;
	}

	.sk-lieferort-timeline-content {
		margin-top: 2px;
		padding-right: 0;
	}

	.sk-lieferort-tablist {
		gap: 8px;
	}

	.sk-lieferort-tab,
	.sk-create-actions-left,
	.sk-create-actions-right {
		width: 100%;
	}

	.sk-lieferort-fields,
	.sk-lieferort-edit-fields,
	.sk-create-fields,
	.sk-create-radio-grid,
	.sk-lieferort-summary-grid {
		grid-template-columns: 1fr;
	}

	.sk-create-review-item {
		grid-template-columns: 1fr;
	}

	.sk-create-actions {
		flex-direction: column;
	}

	.sk-create-actions-left .sk-create-btn,
	.sk-create-actions-right .sk-create-btn {
		width: 100%;
	}
}

@media (max-width: 640px) {
	.sk-tarifrechner-results-summary {
		padding: 16px;
	}

	.sk-tarifrechner-results-summary-grid,
	.sk-tarifrechner-results-filterbar {
		grid-template-columns: 1fr;
	}

	.sk-tarifrechner-results-skeleton-card,
	.sk-tarifrechner-results-state,
	.sk-tarifrechner-results-highlight-block,
	.sk-tarifrechner-results-card,
	.sk-tarifrechner-results-sidecard {
		padding: 16px;
	}

	.sk-tarifrechner-results-card-title {
		font-size: 1.12rem;
	}

	.sk-tarifrechner-results-card-price-main {
		font-size: 1.44rem;
	}

	.sk-tarifrechner-results-card-labels,
	.sk-tarifrechner-results-card-badges,
	.sk-tarifrechner-results-summary-filters-list {
		gap: 6px;
	}

	.sk-tarifrechner-results-badge,
	.sk-tarifrechner-results-summary-filter-chip,
	.sk-tarifrechner-results-summary-filter-empty {
		font-size: 0.8rem;
	}

	.sk-tarifrechner-search-shell {
		padding: 10px;
	}

	.sk-tarifrechner-choice-group-tabs {
		border-radius: 26px 26px 0 0;
	}

	.sk-tarifrechner-search-panel {
		padding: 16px;
		gap: 16px;
		border-radius: 0 0 26px 26px;
	}

	.sk-tarifrechner-search-grid,
	.sk-tarifrechner-search-address-grid {
		grid-template-columns: 1fr;
	}

	.sk-tarifrechner-product-controls {
		gap: 10px;
	}

	.sk-tarifrechner-choice-label-tabs {
		min-height: 58px;
		padding: 0 14px;
		font-size: 0.96rem;
	}

	.sk-tarifrechner-product-rail {
		max-width: 100%;
	}

	.sk-tarifrechner-choice-label-product {
		min-height: 38px;
		padding: 0 14px;
		font-size: 0.92rem;
	}

	.sk-tarifrechner-oeko-label {
		gap: 8px;
		font-size: 0.88rem;
	}

	.sk-tarifrechner-oeko-switch {
		inline-size: 40px;
		block-size: 24px;
		flex-basis: 40px;
	}

	.sk-tarifrechner-oeko-thumb {
		inline-size: 18px;
		block-size: 18px;
	}

	.sk-tarifrechner-oeko-input:checked + .sk-tarifrechner-oeko-label .sk-tarifrechner-oeko-thumb {
		transform: translateX(16px);
	}

	.sk-tarifrechner-choice-icon {
		inline-size: 15px;
		block-size: 15px;
		flex-basis: 15px;
	}

	.sk-tarifrechner-search-submit {
		align-items: stretch;
		padding-top: 16px;
	}

	.sk-tarifrechner-search-button {
		inline-size: 100%;
	}

	.sk-lieferort-group {
		padding: 18px;
	}

	.sk-lieferort-orders-shell {
		padding: 10px;
	}

	.sk-lieferort-orders-table,
	.sk-lieferort-orders-table thead,
	.sk-lieferort-orders-table tbody,
	.sk-lieferort-orders-table tr,
	.sk-lieferort-orders-table th,
	.sk-lieferort-orders-table td {
		display: block;
	}

	.sk-lieferort-orders-table thead {
		display: none;
	}

	.sk-lieferort-orders-table tbody {
		display: grid;
		gap: 10px;
	}

	.sk-lieferort-order-row {
		border: 1px solid var(--sk-border);
		border-radius: 12px;
		background: var(--sk-surface);
		padding: 10px 12px;
	}

	.sk-lieferort-order-row:first-child .sk-lieferort-order-cell,
	.sk-lieferort-order-cell {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap: 12px;
		padding: 5px 0;
		border-top: 0;
		text-align: left;
		white-space: normal;
	}

	.sk-lieferort-order-cell::before {
		content: attr(data-label);
		flex: 0 0 42%;
		font-size: 0.74rem;
		font-weight: 700;
		letter-spacing: 0.05em;
		text-transform: uppercase;
		color: var(--sk-muted);
	}

	.sk-lieferort-order-cell.is-action {
		align-items: center;
	}

	.sk-lieferort-order-cell.is-status .sk-lieferort-status-stack {
		justify-content: flex-start;
	}

	.sk-lieferort-order-cell.is-email .sk-lieferort-order-cell-value {
		display: block;
		flex: 1 1 auto;
		min-width: 0;
		max-width: none;
		text-align: right;
	}

	.sk-lieferort-order-cell.is-action .sk-lieferorte-detail-button {
		width: auto;
	}
}

.sk-tarifrechner-results-flow-copy {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 18px;
}

.sk-tarifrechner-results-flow-step {
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	padding: 0 14px;
	border-radius: 999px;
	background: #eef3f8;
	color: #31506a;
	font-size: 0.84rem;
	font-weight: 700;
}

.sk-tarifrechner-results-highlight-grid {
	display: grid;
	gap: 16px;
}

.sk-tarifrechner-results-highlight-card {
	display: grid;
	gap: 12px;
}

.sk-tarifrechner-results-highlight-title {
	font-size: 0.9rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #47637c;
}

.sk-tarifrechner-results-card-badge {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 0 12px;
	border-radius: 999px;
	background: #edf2f6;
	color: #375066;
	font-size: 0.8rem;
	font-weight: 700;
}

.sk-tarifrechner-results-card-badge.is-selected {
	background: #e8f0fb;
	color: #2c5e94;
}

.sk-tarifrechner-results-card-badge.is-eco {
	background: #edf6ef;
	color: #336247;
}

.sk-tarifrechner-results-card-badge.is-orderable {
	background: #ebf7ef;
	color: #1f6b36;
}

.sk-tarifrechner-results-card-badge.is-muted {
	background: #f5f0eb;
	color: #8c5b32;
}

.sk-tarifrechner-results-card-subtitle {
	margin-top: 6px;
	color: var(--sk-tarifrechner-results-muted);
	font-size: 0.92rem;
}

.sk-tarifrechner-results-card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.sk-tarifrechner-results-card-fact {
	display: grid;
	gap: 4px;
	padding: 12px 14px;
	border-radius: 16px;
	background: #f5f7fa;
}

.sk-tarifrechner-results-card-fact-label {
	font-size: 0.74rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--sk-tarifrechner-results-muted);
}

.sk-tarifrechner-results-card-fact-value {
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.35;
}

.sk-tarifrechner-results-card-info-list {
	display: grid;
	gap: 8px;
	margin: 0;
	padding-left: 18px;
	color: #40576b;
}

.sk-tarifrechner-results-card-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.sk-tarifrechner-results-card-button.is-disabled {
	background: #d5dde6;
	color: #627388;
	cursor: not-allowed;
}

.sk-tarifrechner-results-card-button.is-primary {
	max-width: 340px;
}

.sk-tarifrechner-results-order-panel,
.sk-tarifrechner-results-order-result {
	margin-top: 22px;
}

.sk-tarifrechner-order-card,
.sk-tarifrechner-results-order-result-card,
.sk-lieferort-ordercheck-shell {
	padding: 22px;
	border-radius: 22px;
	border: 1px solid var(--sk-tarifrechner-results-border);
	background: linear-gradient(180deg, #ffffff 0%, #fbfcfd 100%);
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.05);
}

.sk-tarifrechner-order-card.is-empty,
.sk-tarifrechner-order-card.is-warning {
	display: grid;
	gap: 8px;
}

.sk-tarifrechner-order-header {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(260px, 0.8fr);
	gap: 18px;
	align-items: start;
	margin-bottom: 18px;
}

.sk-tarifrechner-order-kicker,
.sk-tarifrechner-results-order-result-kicker,
.sk-lieferort-ordercheck-kicker {
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #48657e;
}

.sk-tarifrechner-order-header h2,
.sk-tarifrechner-results-order-result-card h3,
.sk-lieferort-ordercheck-title {
	margin: 8px 0 0;
}

.sk-tarifrechner-order-header p,
.sk-tarifrechner-results-order-result-card p {
	margin: 8px 0 0;
	color: var(--sk-tarifrechner-results-muted);
}

.sk-tarifrechner-order-selected {
	display: grid;
	gap: 6px;
	padding: 16px;
	border-radius: 18px;
	background: #f5f8fb;
}

.sk-tarifrechner-order-selected-provider {
	font-size: 0.9rem;
	font-weight: 700;
	color: #4b6479;
}

.sk-tarifrechner-order-selected-title {
	font-size: 1.08rem;
	font-weight: 800;
}

.sk-tarifrechner-order-selected-price {
	font-size: 1rem;
	font-weight: 700;
	color: #245896;
}

.sk-tarifrechner-order-form {
	display: grid;
	gap: 16px;
}

.sk-tarifrechner-order-grid {
	display: grid;
	gap: 14px;
}

.sk-tarifrechner-order-grid.is-two {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sk-tarifrechner-order-grid.is-three {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sk-tarifrechner-order-field {
	display: grid;
	gap: 6px;
}

.sk-tarifrechner-order-label,
.sk-tarifrechner-order-field label {
	font-size: 0.84rem;
	font-weight: 700;
	color: #48657f;
}

.sk-tarifrechner-order-field input,
.sk-tarifrechner-order-field select {
	width: 100%;
	min-height: 48px;
	padding: 0 14px;
	border: 1px solid rgba(73, 98, 122, 0.18);
	border-radius: 14px;
	background: #ffffff;
	box-sizing: border-box;
	font: inherit;
}

.sk-tarifrechner-order-choice-row {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.sk-tarifrechner-order-choice {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border: 1px solid rgba(73, 98, 122, 0.18);
	border-radius: 14px;
	background: #ffffff;
	font-weight: 600;
}

.sk-tarifrechner-order-choice input {
	margin: 0;
}

.sk-tarifrechner-order-footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding-top: 4px;
}

.sk-tarifrechner-order-note {
	margin: 0;
	max-width: 60ch;
	color: var(--sk-tarifrechner-results-muted);
}

.sk-tarifrechner-results-order-result-card.is-success {
	border-color: #bad5c1;
	background: linear-gradient(180deg, #ffffff 0%, #f5fbf6 100%);
}

.sk-tarifrechner-results-order-result-card.is-error {
	border-color: #e7cbb9;
	background: linear-gradient(180deg, #ffffff 0%, #fff8f4 100%);
}

.sk-tarifrechner-results-order-result-card.is-loading {
	display: flex;
	align-items: center;
	gap: 16px;
}

.sk-tarifrechner-results-order-meta {
	display: grid;
	gap: 4px;
	margin-top: 12px;
	font-size: 0.94rem;
}

.sk-tarifrechner-results-inline-link {
	color: #245896;
	font-weight: 700;
	text-decoration: none;
}

.sk-tarifrechner-results-inline-link:hover {
	text-decoration: underline;
}

.sk-lieferort-ordercheck-shell {
	display: grid;
	gap: 14px;
	margin-top: 22px;
}

.sk-lieferort-ordercheck-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.sk-lieferort-ordercheck-item {
	display: grid;
	gap: 4px;
	padding: 12px 14px;
	border-radius: 16px;
	background: #f5f8fb;
}

.sk-lieferort-ordercheck-label {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--sk-muted);
}

.sk-lieferort-ordercheck-value {
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.35;
}

@media (max-width: 767px) {
	.sk-tarifrechner-results-card-grid,
	.sk-tarifrechner-order-header,
	.sk-tarifrechner-order-grid.is-two,
	.sk-tarifrechner-order-grid.is-three,
	.sk-lieferort-ordercheck-grid {
		grid-template-columns: 1fr;
	}

	.sk-tarifrechner-order-footer {
		flex-direction: column;
		align-items: stretch;
	}

	.sk-tarifrechner-results-card-actions,
	.sk-tarifrechner-results-card-button.is-primary {
		width: 100%;
		max-width: none;
	}
}
