/* Extracted styles from item_details.html */
/* Utility */
.hidden { display: none !important; }
.toggle-row { text-align:center; margin:12px 0; }

/* Unified button system (replaces legacy .button after JS mapping) */
.ke-btn { background:#000; color:#fafafa; padding:8px 12px; border:1px solid var(--ke-border,#333); border-radius:4px; cursor:pointer; transition:all .2s ease; font-size:.85rem; white-space:nowrap; min-width:100px; height:40px; display:inline-flex; align-items:center; justify-content:center; }
.ke-btn:hover { background:#1a1a1a; transform:translateY(-1px); }
.ke-btn:active { transform:translateY(0); }
.ke-btn-primary { background:var(--ke-primary,#3b82f6); border-color:var(--ke-primary,#3b82f6); }
.ke-btn-success { background:var(--ke-success,#22c55e); border-color:var(--ke-success,#22c55e); }
.ke-btn-danger { background:var(--ke-danger,#ff5a2f); border-color:var(--ke-danger,#ff5a2f); }
.ke-btn-warning { background:var(--ke-warning,#f8b33a); border-color:var(--ke-warning,#f8b33a); }
.ke-btn-sm { min-width:100px; height:40px; padding:8px 12px; font-size:.75rem; }
.ke-btn[disabled] { opacity:.6; cursor:not-allowed; transform:none; }
.btn-unit-settings-two-line { white-space:normal !important; height:auto !important; min-height:40px; line-height:1.15; text-align:center; }
input[type="number"] { color:#000; }
body.item-details-page { background-color:#000; color:#f1f1f1; font-family:Arial,sans-serif; font-size:18px; }
.adjust-button,.remove-button,.metro-button,.rewe-button { background:#000; color:#fafafa; padding:8px 12px; border:1px solid var(--ke-border,#333); border-radius:4px; cursor:pointer; transition:all .2s ease; font-size:.85rem; white-space:nowrap; min-width:40px; height:40px; display:flex; align-items:center; justify-content:center; }
.adjust-button:hover,.remove-button:hover,.metro-button:hover,.rewe-button:hover { background:#1a1a1a; transform:translateY(-1px); }
.adjust-button:active,.remove-button:active,.metro-button:active,.rewe-button:active { transform:translateY(0); }
.remove-button { background:#000; border-color:var(--ke-border,#333); }
.metro-button { background:#000; border-color:var(--ke-border,#333); }
.rewe-button { background:#000; border-color:var(--ke-border,#333); }
.info-block { background:#000; border-radius:4px; border:1px solid var(--ke-border,#333); padding:15px; margin-bottom:15px; max-width:900px; margin-left:auto; margin-right:auto; }
.section-title { color:#fafafa; font-size:1.14rem; font-weight:800; line-height:1.3; margin-bottom:14px; padding-bottom:10px; border-bottom:1px solid var(--ke-border,#333); letter-spacing:.02em; }
.info-row { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; font-size:.9rem; padding:4px 0; }
.info-label { color:#fafafa; opacity:.8; }
.info-value { color:#fafafa; }
.form-input { background:#fff; border:1px solid var(--ke-border,#333); border-radius:4px; color:#000; padding:8px 12px; font-size:.85rem; }
.form-input:focus { outline:none; border-color:#666; }
.quantity-section { background:#000; border-radius:4px; border:1px solid var(--ke-border,#333); padding:10px 14px; margin:12px auto; max-width:900px; }
.quantity-container { display:flex; align-items:center; justify-content:center; gap:10px; margin:10px 0; width:100%; flex-wrap:nowrap; height:40px; }
.quantity-container .adjust-button,.quantity-container button.ke-btn.ke-btn-sm { padding:0 !important; width:40px !important; min-width:40px !important; max-width:40px !important; height:40px !important; line-height:40px; display:inline-flex; align-items:center; justify-content:center; }
#quantity-input { width:80px; text-align:center; background:#1a1a1a; border:1px solid var(--ke-border,#333); border-radius:4px; color:#fafafa; padding:0 10px; font-size:.95rem; height:40px; line-height:40px; box-sizing:border-box; }
.styled-input { background:#1a1a1a; border:1px solid var(--ke-border,#333); border-radius:4px; color:#fafafa; padding:0 10px; font-size:.95rem; height:40px; box-sizing:border-box; }
.header-container { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; background:#000; padding:12px; margin:8px auto; max-width:900px; }
.header-text { flex:1; padding-right:15px; }
.header-text h3 { color:#fafafa; margin:0 0 4px; font-size:.9rem; opacity:.8; text-transform:uppercase; letter-spacing:1px; }
.header-text h1 { color:#fafafa; margin:0 0 8px; font-size:1.4rem; font-weight:700; }
.item-title-row { display:flex; flex-wrap:wrap; align-items:center; gap:8px 10px; margin-bottom:4px; }
.item-title-row .item-title { margin:0 !important; flex:0 1 auto; width:auto; }
.item-diet-badges { display:inline-flex; flex-wrap:wrap; gap:8px; align-items:center; flex:0 1 auto; }
.diet-badge { display:inline-block; padding:4px 10px; border-radius:999px; font-size:12px; font-weight:700; color:#fff; line-height:1.1; }
.diet-badge-vegan { background:#2e7d32; }
.diet-badge-glutenfrei { background:#1565c0; }
.diet-badge-laktosefrei { background:#6a1b9a; }
.diet-badge-alkohol { background:#ef6c00; }
.header-actions { display:flex; gap:10px; flex-wrap:wrap; margin-top:8px; }
.image-container { display:flex; flex-direction:column; align-items:center; gap:6px; }
.square-thumbnail { width:100px; height:100px; object-fit:cover; border-radius:4px; border:1px solid var(--ke-border,#333); cursor:pointer; transition:transform .2s ease; }
.square-thumbnail:hover { transform:scale(1.02); }
.button { background:#000; color:#fafafa; padding:8px 12px; border:1px solid var(--ke-border,#333); border-radius:4px; cursor:pointer; transition:all .2s ease; font-size:.85rem; white-space:nowrap; min-width:100px; height:40px; display:flex; align-items:center; justify-content:center; }
.button:hover { background:#1a1a1a; transform:translateY(-1px); }
.detail-section { background:#000; border-radius:4px; border:1px solid var(--ke-border,#333); padding:20px; margin:20px auto; color:#fafafa; max-width:900px; }
.low-price { color:#00ff00; }
.high-price { color:#ff0000; }
.quantity-label { margin-bottom:8px; color:#fafafa; font-size:.9rem; opacity:.8; }
@media (max-width:768px){ .header-container{padding:10px; margin:6px;} .header-text{padding-right:10px;} }
/* Produktinfo */
.product-info .product-info-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:6px;margin-top:2px;}
.product-info .pi-field {background:#000;border:1px solid var(--ke-border,#333);border-radius:4px;padding:8px 10px;display:flex;flex-direction:column;min-height:unset;}
.product-info .pi-field:last-child {margin-bottom:0;}
.product-info .pi-label {font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;opacity:.96;margin:0 0 10px;display:flex;justify-content:space-between;align-items:flex-start;gap:8px;font-weight:800;line-height:1.25;color:#eef2f7;}
.product-info .pi-value {font-size:.98rem;line-height:1.55rem;white-space:pre-wrap;color:#e5e7eb;}
.product-info .pi-value p {margin:0 0 .7rem;}
.product-info .pi-value p:last-child {margin-bottom:0;}
.product-info .pi-value p:empty {display:none;margin:0;}
.product-info .pi-value pre {background:transparent;border:none;padding:0;margin:0;font-size:.78rem;line-height:1.2rem;}
.product-info #pi-zutaten .pi-zutaten-content strong,
.product-info #pi-zutaten .pi-zutaten-content strong *,
.product-info #pi-zutaten .pi-zutaten-inhaltstoffe strong,
.product-info #pi-zutaten .pi-zutaten-inhaltstoffe strong *,
.product-info #pi-allergene .pi-value strong,
.product-info #pi-allergene .pi-value strong * {
	display:inline !important;
	overflow:visible !important;
	text-overflow:clip !important;
	white-space:inherit !important;
	max-width:none !important;
}
.product-info #pi-zutaten .pi-zutaten-content,
.product-info #pi-zutaten .pi-zutaten-text,
.product-info #pi-zutaten .pi-zutaten-inhaltstoffe {
	white-space:normal !important;
	word-break:normal !important;
	overflow-wrap:normal !important;
}
.product-info #pi-zutaten .pi-zutaten-text,
.product-info #pi-zutaten .pi-zutaten-inhaltstoffe {
	display:inline !important;
}
.product-info #pi-zutaten .pi-zutaten-inhaltstoffe {
	display:block !important;
	margin-top:4px;
}
.product-info #pi-zutaten .pi-zutaten-text + .pi-zutaten-inhaltstoffe::before {
	content:none;
}
.structured-ingredient {margin:0 0 2px;}
.structured-ingredient.allergen {font-weight:600;text-decoration:underline;}
.structured-ingredient .allergen-badge {color:#f66;font-size:.65rem;font-weight:600;letter-spacing:.05em;}
/* Misc */
.modal {display:none; position:fixed; z-index:3000; left:0; top:0; width:100%; height:100%; overflow:auto; background:rgba(0,0,0,.9);} 
.modal-content {display:block; margin:5vh auto; max-width:600px; width:90%;}

/* Mobile readability tweaks */
@media (max-width: 540px){
	.product-info .product-info-grid{ grid-template-columns: 1fr; gap:8px; }
	.product-info .pi-field{ padding:6px 8px; }
	.product-info .pi-label{ font-size:.72rem; line-height:1.2; }
	.product-info .pi-value{ font-size:1rem; line-height:1.45rem; }
}

/* ===== Desktop readability upgrades (dark theme) ===== */
body.item-details-page .item-title { font-size: 1.9rem; line-height: 1.25; letter-spacing: -0.01em; }
body.item-details-page .item-category { font-size: .85rem; opacity:.85; text-transform: uppercase; letter-spacing: .07em; }
body.item-details-page .header-container { max-width: 1000px; }
body.item-details-page .info-block { max-width: 1000px; }

/* Increase grid air and card padding */
body.item-details-page .product-info .product-info-grid { gap: 10px; }
body.item-details-page .product-info .pi-field { padding: 12px 14px; }

/* Type scale for labels and values */
body.item-details-page .product-info .pi-label { font-size: .82rem; margin-bottom: 12px; }
body.item-details-page .product-info .pi-value { font-size: 1rem; line-height: 1.68rem; }
body.item-details-page .product-info .pi-value pre { font-size: .92rem; line-height: 1.35rem; }

/* === New structured desktop layout (two regions: main content + meta sidebar) === */
@media (min-width: 1000px){
	body.item-details-page .product-info .product-info-grid{
		display:grid;
		grid-template-columns:minmax(480px,1fr) 320px; /* content + sidebar */
		gap:22px 28px;
		align-items:start;
	}
	/* Wrap existing pi-field cards into an auto-flow dense layout inside first column */
	body.item-details-page .product-info .pi-field{background:#040404;border:1px solid #1c1c1c;border-radius:10px;padding:12px 14px;box-shadow:0 0 0 1px rgba(255,255,255,0.02),0 2px 4px -2px rgba(0,0,0,0.6),0 4px 16px -4px rgba(0,0,0,0.5);transition:border-color .18s ease,background .18s ease;}
	body.item-details-page .product-info .pi-field:hover{border-color:#2a2a2a;}
	body.item-details-page .product-info .pi-field.main{grid-column:1 / 2;}
	body.item-details-page .product-info .pi-field.main.span2{grid-column:1 / 2;}
	/* Sidebar container grouping meta information (EAN, Recherche, Nährwerte, etc.) */
	body.item-details-page .product-info .pi-field.sidebar-block{grid-column:2 / 3;}
	/* Allow sticky sidebar blocks */
	body.item-details-page .product-info .pi-field.sidebar-sticky{position:sticky;top:70px;}
	/* Refine typography */
	body.item-details-page .product-info .pi-label{font-size:.80rem;letter-spacing:.12em;margin-bottom:12px;}
	body.item-details-page .product-info .pi-value{font-size:1rem;line-height:1.68rem;}
}

/* Dense variant for meta lists inside sidebar */
body.item-details-page .meta-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:.80rem;}
body.item-details-page .meta-list li{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #1a1a1a;padding:4px 0;}
body.item-details-page .meta-list li:last-child{border-bottom:none;}

/* Visual separators for logical groups */
body.item-details-page .pi-group-sep{height:1px;background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,.02));margin:6px 0 10px;}

/* Tag / badge styling improvement */
body.item-details-page .ke-badge{display:inline-block;background:#1f1f1f;border:1px solid #2b2b2b;color:#bbb;padding:2px 6px;border-radius:999px;font-size:.60rem;letter-spacing:.05em;font-weight:600;text-transform:uppercase;}

/* Subtle scroll shadows for long value blocks */
body.item-details-page .pi-value.scrollable{max-height:280px;overflow:auto;scrollbar-width:thin;}
body.item-details-page .pi-value.scrollable::-webkit-scrollbar{width:10px;}
body.item-details-page .pi-value.scrollable::-webkit-scrollbar-track{background:#0c0c0c;border-radius:8px;}
body.item-details-page .pi-value.scrollable::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:8px;}
body.item-details-page .pi-value.scrollable::-webkit-scrollbar-thumb:hover{background:#343434;}

/* Smooth section reveal (progressive enhancement) */
body.item-details-page .pi-field{opacity:0;animation:piFade .4s ease forwards;}
body.item-details-page .pi-field:nth-child(1){animation-delay:.02s}
body.item-details-page .pi-field:nth-child(2){animation-delay:.04s}
body.item-details-page .pi-field:nth-child(3){animation-delay:.06s}
body.item-details-page .pi-field:nth-child(4){animation-delay:.08s}
@keyframes piFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

/* Sticky contents navigation */
.contents-nav { position: sticky; top: 0; z-index: 5; display: flex; align-items: center; gap: 12px; background: #000; border: 1px solid var(--ke-border,#333); border-radius: 8px; padding: 8px 12px; margin: 10px auto 14px; max-width: 1000px; }
body.drawer-open .contents-nav { visibility: hidden; pointer-events: none; }
.contents-title { font-size: .75rem; font-weight: 700; color: #fafafa; text-transform: uppercase; letter-spacing: .06em; opacity:.9; }
.contents-links { display: flex; flex-wrap: wrap; gap: 10px 14px; }
.contents-links a { color: #6cc0ff; text-decoration: none; font-size: .95rem; }
.contents-links a:hover { text-decoration: underline; }

/* Inline-style replacements */
.ke-btn-dark { background:#222; }
.hidden-inline { display:none; }
.nutrients-grid-base { display:grid; column-gap:10px; row-gap:2px; align-items:center; width:100%; }
.nutrients-grid-4 { grid-template-columns: 1fr auto auto auto; }
.nutrients-grid-3 { grid-template-columns: 1fr auto auto; }
.nutrients-grid-2 { grid-template-columns: 1fr auto; }
.nh-h { font-weight:600; font-size:.78rem; border-bottom:1px solid var(--ke-border,#333); padding:0 0 2px 0; }
.nh-cell { padding:0; font-size:1rem; line-height:1.35rem; }
.nh-nowrap { white-space:nowrap; }
.nh-prefix { font-style:italic; opacity:.75; margin-right:1px; }
.nutrients-empty { font-size:.55rem; opacity:.7; }
.nutrients-basis-header { font-size:.60rem; line-height:1.0; opacity:.7; margin-bottom:2px; }
.nutrients-basis-note { margin-top:2px; font-size:.60rem; line-height:1.0; opacity:.7; }
.nutrients-add-wrap { margin-top:3px; }
#pi-naehrwerte-structured .pi-value { white-space:normal; }
.js-nutrient-tools-toggle { min-width:28px; width:28px; height:24px; padding:0; margin-left:6px; }
#pi-naehrwerte-structured.nutrient-tools-collapsed .nutrients-grid-3 { grid-template-columns: 1fr auto; }
#pi-naehrwerte-structured.nutrient-tools-collapsed .nh-h-actions { display:none; }
#pi-naehrwerte-structured.nutrient-tools-collapsed .nh-actions { display:none; }
#pi-naehrwerte-structured.nutrient-tools-collapsed .nutrients-add-wrap { display:none; }
.pi-value-note { font-size:.78rem; opacity:.78; }
.pi-value-sep { margin-top:6px; }
.structured-ingredients-list { margin:0; padding-left:18px; }
.pi-subline { margin-top:6px; }
.pi-meta-row { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
.pi-meta-content { display:block; flex:1 1 auto; min-width:0; white-space:normal; line-height:1.55; }
.pi-meta-content p { margin:0 0 .45rem; }
.pi-meta-content p:last-child { margin-bottom:0; }
.pi-meta-row .ke-btn { flex:0 0 auto; margin-top:1px; }
.pi-lagerung-note { font-size:.65rem; opacity:.7; margin-top:4px; }
.disclaimer { max-width:900px; margin:30px auto 10px; font-size:0.85rem; line-height:1.4; color:#aaa; opacity:.95; }

/* Keep editorial status card compact (avoid pre-wrap whitespace expansion) */
#pi-redaktionell-status .pi-value {
	white-space: normal;
	line-height: 1.4;
}

#pi-redaktionell-status .pi-value > div {
	margin: 0;
}

#pi-redaktionell-status label {
	margin: 0;
}

/* Content edit overlay */
.content-edit-overlay { display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,.85); z-index:9000; align-items:center; justify-content:center; }
.content-edit-modal { background:#000; padding:20px; border:1px solid #333; max-width:640px; width:92%; border-radius:6px; }
.content-edit-title { margin-top:0; font-size:1.1rem; }
.content-edit-text { width:100%; min-height:180px; background:#000; border:1px solid #333; color:#fafafa; padding:8px; font-family:monospace; font-size:.9rem; }
.nutrient-fields { display:none; gap:12px; flex-direction:column; }
.nutrient-field-group { display:flex; flex-direction:column; gap:4px; }
.nutrient-label { font-size:.75rem; letter-spacing:.05em; opacity:.8; }
.nutrient-input, .nutrient-select { background:#000; border:1px solid #333; color:#fafafa; padding:8px; border-radius:4px; font-size:.9rem; }
.nutrient-input {
	color: #fafafa !important;
	-webkit-text-fill-color: #fafafa !important;
	caret-color: #fafafa;
}
.nutrient-input::placeholder {
	color: #9aa0a6;
	-webkit-text-fill-color: #9aa0a6;
}
.nutrient-input[type="number"] {
	color-scheme: dark;
}
.nutrient-help { opacity:.65; font-size:.65rem; }
.nutrient-unit-row, .nutrient-basis-row { display:flex; flex-direction:column; gap:4px; }
.nutrient-portion-extra { display:none; gap:8px; flex-wrap:wrap; align-items:flex-end; }
.nutrient-portion-group { display:flex; flex-direction:column; gap:4px; min-width:120px; }
.nutrient-portion-unit { min-width:100px; }
.nutrient-portion-help { opacity:.65; font-size:.6rem; line-height:1.2; max-width:240px; }
.nutrient-validation { font-size:.6rem; opacity:.6; line-height:1.2; }
.content-edit-actions { margin-top:12px; display:flex; gap:8px; justify-content:flex-end; }
.content-edit-status { margin-top:8px; font-size:.75rem; opacity:.7; }

/* Supplier codes section */
.info-row-stack { flex-direction:column; align-items:flex-start; gap:6px; }
.info-value-full { width:100%; }
.supplier-codes-list { margin:6px 0 0 18px; }
.supplier-link-add { color:#4caf50; }
.supplier-link-remove { color:#f33; }
.info-row-actions { justify-content:flex-start; gap:10px; }
.supplier-modal { display:none; align-items:center; justify-content:center; }
.supplier-modal-content { background:#000; color:#fafafa; padding:20px; border:1px solid #333; border-radius:8px; width:90%; max-width:900px; }
.supplier-modal-title { margin-top:0; }
.supplier-modal-label { margin-top:10px; display:block; }
.supplier-modal-select { width:100%; background:#1a1a1a; border:1px solid var(--ke-border,#333); border-radius:4px; color:#fafafa; padding:8px 10px; font-size:.9rem; box-sizing:border-box; }
.supplier-modal-select:focus { outline:none; border-color:#666; }
.supplier-modal-label-secondary { margin-top:10px; display:block; }
.supplier-modal-input { width:100%; }
.supplier-modal-divider { margin-top:14px; border-top:1px dashed #333; padding-top:12px; }
.supplier-modal-label-ean { margin-top:6px; display:block; }
.supplier-modal-hint { opacity:.75; display:block; margin-top:6px; }
.supplier-modal-actions { display:flex; gap:10px; margin-top:15px; justify-content:flex-end; flex-wrap:wrap; }
.supplier-modal-note { opacity:0.8; display:block; margin-top:10px; }

.useritem-edit-btn { margin-left:8px; }
.info-row-sm { font-size:14px; }
.text-sm { font-size:14px; }
.inline-form { display:inline; }
.link-white { color:#fff; }
.info-block-muted { opacity:.8; }
.info-row-gap-10 { gap:10px; align-items:center; }
.note-muted { opacity:.8; }
.info-row-gap-12 { gap:12px; align-items:flex-end; }
.flex-grow-min { flex:1; min-width:160px; }
.input-max-140 { max-width:140px; }
.w-160 { width:160px; }
.input-width-120 { width:120px; }
.info-row-wrap { gap:8px; align-items:center; flex-wrap:wrap; }
.input-width-140 { width:140px; }
.input-min-160 { min-width:160px; }
.info-row-mt6 { margin-top:6px; }

/* Anchor offset so sticky nav doesn't cover target */
.pi-field { scroll-margin-top: 60px; }

/* Slightly larger buttons on desktop */
@media (min-width: 981px){
	body.item-details-page { font-size: 18px; }
	body.item-details-page .button, body.item-details-page .ke-btn { height: 42px; }
}

/* Horizontal swipe bars (left/right) for long structured content blocks */
body.item-details-page .product-info .pi-value.swipe-x {
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	padding-bottom: 4px;
	touch-action: pan-x;
}

body.item-details-page .product-info .pi-value.swipe-x::-webkit-scrollbar {
	height: 9px;
}

body.item-details-page .product-info .pi-value.swipe-x::-webkit-scrollbar-track {
	background: #0c0c0c;
	border-radius: 8px;
}

body.item-details-page .product-info .pi-value.swipe-x::-webkit-scrollbar-thumb {
	background: #2a2a2a;
	border-radius: 8px;
}

body.item-details-page .product-info .pi-value.swipe-x::-webkit-scrollbar-thumb:hover {
	background: #3a3a3a;
}

/* Keep source rows in one line so horizontal swipe is meaningful for long metadata */
body.item-details-page #pi-quellen .source-entry,
body.item-details-page #pi-quellen .source-meta {
	white-space: nowrap;
	min-width: max-content;
}

/* === Override: User requested all fields stacked under each other (single column) === */
body.item-details-page .product-info .product-info-grid { 
	display: grid !important; 
	grid-template-columns: 1fr !important; 
	gap: 12px !important; 
}
body.item-details-page .product-info .pi-field { 
	grid-column: auto !important; 
}
body.item-details-page .product-info .pi-field.sidebar-block,
body.item-details-page .product-info .pi-field.main,
body.item-details-page .product-info .pi-field.main.span2 { 
	grid-column: auto !important; 
}
/* End single-column override */

/* === Verpackungs-Label Look for Zutaten/Inhaltsstoffe/Naehrwerte === */
.detail-page #pi-zutaten,
.detail-page #pi-inhaltsstoffe,
.detail-page #pi-naehrwerte-structured {
	background: linear-gradient(180deg, #060606 0%, #030303 100%);
	border: 2px solid #d8d8d8;
	border-radius: 8px;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}

.detail-page #pi-zutaten .pi-label,
.detail-page #pi-inhaltsstoffe .pi-label,
.detail-page #pi-naehrwerte-structured .pi-label {
	display: inline-flex;
	align-self: flex-start;
	background: #f0f0f0;
	color: #111;
	border: 1px solid #cfcfcf;
	border-radius: 4px;
	padding: 2px 7px;
	font-size: .68rem;
	letter-spacing: .1em;
	text-transform: uppercase;
	font-weight: 800;
	margin-bottom: 8px;
}

.detail-page #pi-zutaten .pi-value,
.detail-page #pi-inhaltsstoffe .pi-value {
	font-size: .96rem;
	line-height: 1.45;
	letter-spacing: .005em;
	white-space: normal;
}

.detail-page #pi-zutaten .pi-zutaten-content {
	display: block;
	white-space: normal;
	word-break: normal;
	overflow-wrap: normal;
}

.detail-page #pi-zutaten .pi-zutaten-text,
.detail-page #pi-zutaten .pi-zutaten-inhaltstoffe {
	display: inline;
	opacity: .95;
}

.detail-page #pi-zutaten .pi-zutaten-inhaltstoffe {
	display: block;
	margin-top: 4px;
}

.detail-page #pi-zutaten .pi-zutaten-text + .pi-zutaten-inhaltstoffe::before {
	content: none;
}

.detail-page #pi-zutaten .pi-zutaten-tools {
	padding-top: 8px;
	border-top: 1px solid rgba(216,216,216,.22);
}

.detail-page #pi-naehrwerte-structured .pi-value {
	border-top: 2px solid #d8d8d8;
	padding-top: 8px;
}

body.item-details-page #pi-naehrwerte-structured .nh-h {
	border-bottom: 2px solid #d8d8d8;
	font-size: .72rem;
	letter-spacing: .04em;
	padding-bottom: 4px;
}

body.item-details-page #pi-naehrwerte-structured .nh-cell {
	border-bottom: 1px solid rgba(216,216,216,.28);
	padding: 3px 0;
}

body.item-details-page #pi-naehrwerte-structured .nh-amt {
	font-variant-numeric: tabular-nums;
}

/* Prevent stretched card heights in both item/public detail layouts */
.product-info .product-info-grid { align-items: start; }
.product-info .pi-field { align-self: start; height: auto; min-height: 0; }

/* Keep text cards compact even with linebreaks-generated markup */
#pi-public-info .pi-value,
#pi-public-info-fallback .pi-value,
#pi-profil .pi-value {
	white-space: normal;
	line-height: 1.35;
}

#pi-public-info .pi-value p,
#pi-public-info-fallback .pi-value p,
#pi-profil .pi-value p {
	margin: 0 0 .25rem;
}

#pi-public-info .pi-value p:last-child,
#pi-public-info-fallback .pi-value p:last-child,
#pi-profil .pi-value p:last-child {
	margin-bottom: 0;
}

#pi-public-info .pi-value br + br,
#pi-public-info-fallback .pi-value br + br,
#pi-profil .pi-value br + br {
	display: none;
}

#pi-lagerung .pi-value,
#pi-lagerung .pi-value--storage {
	white-space: normal;
	line-height: 1.55;
	text-align: left;
}
