:root{--bg:#f4f3ef;--card:#fff;--ink:#171717;--muted:#6f6f69;--line:#deddd7;--soft:#efeee9;--danger:#9e2f2f;--ok:#235f3c}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.center,.gate{min-height:100vh;display:grid;place-items:center;padding:24px}.gateCard{width:min(470px,100%);background:var(--card);border:1px solid var(--line);border-radius:24px;padding:38px;box-shadow:0 24px 75px #00000012}.brandMark{width:50px;height:50px;border-radius:14px;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:700;letter-spacing:-.05em}.eyebrow{margin:28px 0 0;font-size:11px;font-weight:800;letter-spacing:.15em}.eyebrow.compact{margin:0}h1{margin:10px 0 0;font-size:clamp(42px,6vw,70px);line-height:.96;letter-spacing:-.05em}h2{margin:0;font-size:24px;letter-spacing:-.03em}.muted{color:var(--muted)}.codeForm{display:grid;gap:10px;margin-top:30px}.codeForm label,.inquiryForm label span{font-size:13px;font-weight:700}.codeForm input,.catalogToolbar input,.inquiryForm input,.inquiryForm textarea{width:100%;padding:15px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;outline:none}.codeForm input{text-transform:uppercase;font-weight:700;letter-spacing:.06em}.codeForm input:focus,.catalogToolbar input:focus,.inquiryForm input:focus,.inquiryForm textarea:focus{border-color:#777;box-shadow:0 0 0 3px #0000000d}.codeForm button,.primaryButton{border:0;border-radius:12px;padding:15px 18px;background:var(--ink);color:#fff;font-weight:700}.codeForm button:disabled,.ghost:disabled,.primaryButton:disabled{opacity:.45;cursor:not-allowed}.testHint{margin:20px 0 0;font-size:13px;color:var(--muted)}.error{color:var(--danger);font-size:13px}.shopShell{max-width:1540px;margin:0 auto;padding:28px 34px 64px}.topbar{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.logo{font-weight:700;letter-spacing:-.045em;font-size:24px}.partnerLine{color:var(--muted);font-size:13px;margin-top:5px}.topActions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.ghost{border:1px solid var(--line);background:transparent;border-radius:999px;padding:10px 14px;font-weight:700}.cartTopButton span{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;margin-left:4px;border-radius:999px;background:var(--ink);color:white;font-size:11px}.hero{display:flex;align-items:end;justify-content:space-between;gap:32px;padding:58px 0 42px}.hero p:not(.eyebrow){color:var(--muted);margin:18px 0 0;max-width:590px}.ruleBox{min-width:260px;border:1px solid var(--line);border-radius:18px;background:#ffffff8c;padding:20px;display:grid;gap:6px}.ruleBox span,.ruleBox small{color:var(--muted);font-size:12px}.ruleBox strong{font-size:18px}.shopGrid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}.catalogArea{min-width:0}.catalogToolbar{display:grid;gap:13px;margin-bottom:30px}.catalogToolbar input{max-width:560px}.sectionHeading{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin-bottom:16px}.sectionHeading>span{color:var(--muted);font-size:13px}.sourceLine{color:var(--muted);font-size:12px;margin-top:6px}.sourceLine code,.catalogNotice code{background:var(--soft);color:var(--ink);border-radius:6px;padding:2px 5px}.catalogTableWrap{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:var(--card)}.catalogTable{width:100%;border-collapse:collapse;min-width:780px}.catalogTable th{text-align:left;padding:13px 16px;color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase;background:#f8f7f3;border-bottom:1px solid var(--line)}.catalogTable td{padding:15px 16px;border-bottom:1px solid var(--soft);font-size:14px}.catalogTable tbody tr:last-child td{border-bottom:0}.catalogTable tbody tr:hover{background:#faf9f6}.sku{display:inline-flex;padding:6px 8px;border-radius:8px;background:var(--soft);font-weight:800;font-size:12px}.priceCell{display:grid;gap:4px;white-space:nowrap}.priceCell small{color:var(--muted);font-size:11px}.priceCell .piecePrice{color:var(--ink);font-weight:700;font-size:12px}.addButton{border:1px solid var(--ink);background:var(--ink);color:white;border-radius:10px;padding:9px 11px;font-size:12px;font-weight:800}.catalogNotice{margin-top:16px;padding:15px 17px;border:1px solid var(--line);border-radius:14px;background:#ffffff8c;display:grid;gap:5px;font-size:12px;line-height:1.45;color:var(--muted)}.catalogNotice strong{color:var(--ink)}.loader{color:var(--muted);font-size:14px}.catalogError{margin:12px 0;border:1px solid #e4baba;background:#fff5f5;color:var(--danger);border-radius:12px;padding:13px 15px;font-size:13px}.warnings{margin-bottom:14px;border:1px solid #e5d7a8;background:#fffbec;border-radius:12px;padding:12px 15px;font-size:13px}.warnings summary{cursor:pointer;font-weight:700}.warnings ul{margin:10px 0 0;padding-left:20px;color:#715f2d}.emptyRow{text-align:center;color:var(--muted);padding:35px!important}
.cartPanel{position:sticky;top:20px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px;max-height:calc(100vh - 40px);overflow:auto}.cartHeader,.modalHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.emptyCart{padding:32px 0;color:var(--muted);font-size:13px}.cartItems{display:grid;gap:10px;margin-top:16px}.cartLine{border:1px solid var(--soft);border-radius:13px;padding:12px;display:grid;grid-template-columns:1fr auto;gap:10px}.cartLineMain{display:grid;gap:4px;min-width:0}.cartLineMain strong{font-size:13px}.cartLineMain span,.cartLineMain small{font-size:11px;color:var(--muted)}.qtyControl{display:flex;align-items:center;gap:8px}.qtyControl button{width:28px;height:28px;border:1px solid var(--line);border-radius:8px;background:white;font-weight:700}.qtyControl span{min-width:18px;text-align:center;font-size:12px;font-weight:800}.removeButton{grid-column:1/-1;justify-self:start;border:0;background:transparent;padding:0;color:var(--muted);font-size:11px;text-decoration:underline}.cartSummary{border-top:1px solid var(--line);margin-top:18px;padding-top:16px;display:grid;gap:9px}.cartSummary>div{display:flex;justify-content:space-between;gap:16px;font-size:13px}.cartSummary .cartTotal{border-top:1px solid var(--soft);padding-top:12px;margin-top:3px;font-size:16px}.thresholdNotice{margin:4px 0 6px;color:var(--muted);font-size:11px;line-height:1.4}.mobileOnly{display:none}.iconButton{border:1px solid var(--line);background:#fff;border-radius:999px;width:36px;height:36px;font-size:22px;line-height:1}.modal{position:fixed;inset:0;background:#0008;z-index:100;display:grid;place-items:center;padding:20px}.modalCard{width:min(720px,100%);max-height:calc(100vh - 40px);overflow:auto;background:var(--card);border-radius:22px;padding:24px;box-shadow:0 30px 100px #0005}.inquiryForm{margin-top:22px}.fieldGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fieldGrid label{display:grid;gap:7px}.fieldGrid .wide{grid-column:1/-1}.inquiryForm textarea{resize:vertical}.checkRow{display:flex!important;align-items:flex-start;gap:10px;margin:18px 0}.checkRow input{width:auto!important;margin-top:3px}.checkRow span{font-weight:400!important;line-height:1.45}.privacyNote{font-size:11px;line-height:1.45;color:var(--muted)}.successBox{text-align:center;padding:34px 10px 10px}.successBox p{color:var(--muted);line-height:1.5}.inquiryCode{margin:20px auto;font-family:monospace;font-size:clamp(23px,5vw,38px);font-weight:700;letter-spacing:.04em;background:var(--soft);border-radius:14px;padding:18px;word-break:break-all;color:var(--ok)}
.adminShell{max-width:1200px;margin:0 auto;padding:28px}.adminTop{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.adminTableWrap{overflow:auto;border:1px solid var(--line);border-radius:16px;background:#fff}.adminTable{width:100%;border-collapse:collapse;min-width:900px}.adminTable th,.adminTable td{padding:12px 14px;border-bottom:1px solid var(--soft);text-align:left;font-size:13px;vertical-align:top}.adminTable th{background:#f8f7f3;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.adminCode{font-family:monospace;font-weight:800}.adminDetail{margin-top:10px;padding:12px;background:var(--soft);border-radius:10px;white-space:pre-wrap;font-family:monospace;font-size:11px;line-height:1.5}.adminLogin{min-height:100vh;display:grid;place-items:center;padding:24px}.adminLogin form{width:min(420px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;display:grid;gap:12px}.adminLogin input{padding:14px;border:1px solid var(--line);border-radius:10px}.adminLogin button{padding:14px;border:0;border-radius:10px;background:var(--ink);color:#fff;font-weight:800}
@media(max-width:1050px){.shopGrid{grid-template-columns:1fr}.cartPanel{position:fixed;z-index:80;right:0;top:0;height:100vh;width:min(420px,100%);max-height:none;border-radius:0;transform:translateX(105%);transition:transform .2s ease;box-shadow:-20px 0 80px #0002}.cartPanel.mobileOpen{transform:translateX(0)}.mobileOnly{display:inline-grid;place-items:center}}
@media(max-width:760px){.shopShell{padding:18px 16px 40px}.hero{align-items:stretch;flex-direction:column;padding:42px 0 30px}.ruleBox{min-width:0}.gateCard{padding:30px 22px}.partnerLine{max-width:220px}.topbar{align-items:flex-start}.topActions{flex-direction:column;align-items:stretch}.topActions .ghost{width:100%}.fieldGrid{grid-template-columns:1fr}.fieldGrid .wide{grid-column:auto}.modal{padding:0}.modalCard{max-height:100vh;height:100%;border-radius:0;padding:20px}.adminShell{padding:18px 12px}}

.settlementChoice{display:grid;gap:6px;margin:12px 0}.settlementChoice span{font-size:12px;color:var(--muted);font-weight:700}.settlementChoice select{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:inherit;font:inherit}

/* V2.5 Staffelvorteile */
.benefitHighlight strong{font-size:24px}.benefitHighlight small{font-size:12px;line-height:1.45}.benefitSection{margin:-8px 0 34px;padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff}.benefitIntro{max-width:780px}.benefitIntro h2{margin-top:8px;font-size:clamp(24px,3vw,34px)}.benefitIntro p:not(.eyebrow){margin:8px 0 0;color:var(--muted);font-size:13px}.benefitGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.benefitCard{border:1px solid var(--line);border-radius:16px;padding:16px;background:#faf9f6}.benefitCardHead{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.benefitCardHead span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.benefitCardHead strong{font-size:17px}.benefitRules{display:grid}.benefitRule{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid var(--soft);font-size:13px}.benefitRule:last-child{border-bottom:0}.benefitRule span{color:var(--muted)}.benefitRule strong{white-space:nowrap}.liveBenefitHint{margin-top:16px;padding:14px 16px;border-radius:13px;background:var(--ink);color:#fff;font-size:13px;line-height:1.5}.liveBenefitHint span{opacity:.78;margin-left:4px}@media(max-width:760px){.benefitSection{padding:18px;margin-bottom:24px}.benefitGrid{grid-template-columns:1fr}.benefitRule{font-size:12px}.liveBenefitHint span{display:block;margin:3px 0 0}}

/* V3.0 – Mobile-first Optimierung */
:root{--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px)}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
button,.ghost,.primaryButton,.addButton,.qtyControl button,.iconButton{touch-action:manipulation}
.cartMobileTotal{display:none}.cartBackdrop{display:none}.addToast{position:fixed;left:50%;bottom:88px;z-index:250;transform:translateX(-50%);background:var(--ink);color:#fff;border-radius:999px;padding:11px 16px;font-size:12px;font-weight:800;box-shadow:0 10px 34px #0003;max-width:calc(100vw - 32px);text-align:center}.cartOpen{overflow:hidden}

@media(max-width:1050px){
  .cartBackdrop:not(.hidden){display:block;position:fixed;inset:0;z-index:79;background:#0007;backdrop-filter:blur(2px)}
  .cartPanel{z-index:80;padding-top:max(20px,var(--safe-top));padding-bottom:calc(22px + var(--safe-bottom));overscroll-behavior:contain}
  .cartHeader{position:sticky;top:calc(-1 * max(20px,var(--safe-top)));z-index:3;background:var(--card);padding-top:max(20px,var(--safe-top));padding-bottom:14px;border-bottom:1px solid var(--soft)}
}

@media(max-width:760px){
  html{scroll-padding-top:128px}
  body{font-size:15px;padding-bottom:0}
  .center,.gate{padding:16px;min-height:100svh}
  .gateCard{padding:26px 20px;border-radius:20px;box-shadow:none}
  .gateCard .brandMark{width:46px;height:46px;border-radius:13px}
  .gateCard .eyebrow{margin-top:22px;font-size:10px;line-height:1.45}
  .gateCard h1{font-size:38px;line-height:1;word-break:normal}
  .codeForm{margin-top:24px;gap:11px}
  .codeForm input,.catalogToolbar input,.inquiryForm input,.inquiryForm textarea,.settlementChoice select{font-size:16px;min-height:50px}
  .codeForm button,.primaryButton{min-height:52px;font-size:15px}

  .shopShell{padding:0 12px 32px;max-width:none}
  .topbar{position:sticky;top:0;z-index:70;display:block;margin:0 -12px;padding:calc(10px + var(--safe-top)) 12px 10px;min-height:auto;background:rgba(244,243,239,.98);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
  .logo{font-size:21px}.partnerLine{font-size:11px;margin-top:3px;max-width:58vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .topActions{display:grid;grid-template-columns:1fr 1fr;gap:7px;min-width:0;margin-top:10px}
  .topActions .ghost{width:auto;min-height:38px;padding:8px 10px;font-size:11px;white-space:nowrap}
  .topActions #reloadButton{grid-column:1}.topActions #logoutButton{grid-column:2}
  .cartTopButton{position:static!important;grid-column:1/-1;display:grid!important;grid-template-columns:1fr auto auto;align-items:center;gap:9px;width:100%!important;min-height:50px!important;padding:9px 12px!important;border:1px solid var(--ink)!important;border-radius:12px!important;background:var(--ink)!important;color:#fff!important;box-shadow:none!important;text-align:left;transform:none!important}
  .cartTopButton .cartTopLabel{font-size:14px;font-weight:800}.cartTopButton #cartBadge{margin:0;background:#fff;color:var(--ink);min-width:26px;height:26px;font-size:12px}.cartMobileTotal{display:block;font-size:14px;white-space:nowrap}

  .hero{padding:28px 0 20px;gap:18px}.hero h1{font-size:36px;line-height:1.02}.hero p:not(.eyebrow){margin-top:12px;font-size:14px;line-height:1.5}.hero .eyebrow{margin-top:0;font-size:10px}.ruleBox{padding:15px 16px;border-radius:15px}.benefitHighlight strong{font-size:21px}
  .benefitSection{padding:15px;margin:0 0 20px;border-radius:18px}.benefitIntro h2{font-size:23px;line-height:1.12}.benefitIntro p:not(.eyebrow){font-size:12px;line-height:1.5}.benefitGrid{gap:10px;margin-top:14px}.benefitCard{padding:13px;border-radius:14px}.benefitCardHead{padding-bottom:10px}.benefitCardHead strong{font-size:15px}.benefitRule{padding:9px 0;gap:10px}.liveBenefitHint{margin-top:12px;padding:12px 13px;font-size:12px;border-radius:12px}

  .catalogToolbar{position:static;z-index:auto;margin:0 -12px 18px;padding:10px 12px 9px;background:var(--bg);border-bottom:1px solid var(--line);gap:9px}
  .catalogToolbar input{max-width:none;border-radius:13px;padding:12px 14px;box-shadow:0 2px 7px #00000008}
  .sectionHeading{align-items:flex-end;margin-bottom:12px}.sectionHeading h2{font-size:21px}.sectionHeading>span{font-size:11px;white-space:nowrap}.sourceLine{font-size:10px;line-height:1.4}

  .catalogTableWrap{overflow:visible;border:0;border-radius:0;background:transparent}
  .catalogTable{min-width:0;width:100%;display:block}.catalogTable thead{display:none}.catalogTable tbody{display:grid;gap:10px}.catalogTable tbody tr{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 11px;padding:14px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 2px 8px #00000008}.catalogTable td{display:block;padding:0!important;border:0!important;font-size:13px;min-width:0}.catalogTable td:nth-child(1){grid-column:1;grid-row:1;align-self:start}.catalogTable td:nth-child(2){grid-column:2;grid-row:1;align-self:center;overflow-wrap:anywhere}.catalogTable td:nth-child(2) strong{font-size:15px;line-height:1.25}.catalogTable td:nth-child(3){grid-column:1/-1;grid-row:2;color:var(--muted);font-size:12px;line-height:1.45}.catalogTable td:nth-child(4){grid-column:1/-1;grid-row:3;border-top:1px solid var(--soft)!important;padding-top:11px!important}.catalogTable td:nth-child(5){grid-column:1/-1;grid-row:4}.catalogTable tbody tr:hover{background:var(--card)}
  .sku{padding:6px 8px;font-size:11px;border-radius:8px}.priceCell{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:end;white-space:normal}.priceCell>strong{font-size:20px;line-height:1}.priceCell small{font-size:10px}.priceCell .piecePrice{grid-column:2;grid-row:1/3;align-self:center;padding:6px 8px;background:var(--soft);border-radius:9px;font-size:11px;text-align:right}.priceCell small:last-child{grid-column:1/-1;color:var(--muted);margin-top:2px}.addButton{width:100%;min-height:48px;border-radius:12px;font-size:13px;margin-top:2px}
  .emptyRow{grid-column:1/-1!important;padding:28px 14px!important;text-align:center!important}.catalogNotice{padding:13px 14px;margin-top:11px;font-size:11px;border-radius:13px}

  .cartBackdrop:not(.hidden){z-index:89;background:#0008}
  .cartPanel{left:0;right:0;top:0;width:100%;height:100svh;max-height:100svh;z-index:90;border:0;border-radius:0;padding:0 14px calc(18px + var(--safe-bottom));box-shadow:none;transform:translateY(105%);transition:transform .24s ease;overflow-y:auto;-webkit-overflow-scrolling:touch}.cartPanel.mobileOpen{transform:translateY(0)}
  .cartHeader{top:0;margin:0 -14px;padding:calc(10px + var(--safe-top)) 14px 8px;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);justify-content:flex-end}.cartHeader>div{display:none}.iconButton{width:44px;height:44px;min-width:44px;font-size:24px}
  .emptyCart{padding:38px 4px;text-align:center;font-size:14px}.cartItems{gap:9px;margin-top:13px}.cartLine{padding:13px;border-radius:14px;grid-template-columns:1fr auto;gap:10px}.cartLineMain strong{font-size:14px;line-height:1.3}.cartLineMain span{font-size:11px;line-height:1.4}.cartLineMain small{font-size:10px;line-height:1.45}.qtyControl{gap:5px}.qtyControl button{width:40px;height:40px;border-radius:10px;font-size:18px}.qtyControl span{min-width:24px;font-size:14px}.removeButton{font-size:12px;min-height:32px}
  .cartSummary{margin-top:15px;padding:15px 2px 74px;gap:11px}.cartSummary>div{font-size:13px}.cartSummary .cartTotal{font-size:18px;padding-top:14px}.settlementChoice{margin:8px 0}.thresholdNotice{font-size:11px;line-height:1.5}.cartSummary .primaryButton{position:sticky;bottom:calc(8px + var(--safe-bottom));z-index:4;width:100%;min-height:54px;box-shadow:0 10px 28px #0003}

  .modal{padding:0;align-items:stretch}.modalCard{width:100%;height:100svh;max-height:100svh;border-radius:0;padding:0 16px calc(20px + var(--safe-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch}.modalHeader{position:sticky;top:0;z-index:3;margin:0 -16px;padding:calc(14px + var(--safe-top)) 16px 12px;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-bottom:1px solid var(--soft)}.modalHeader h2{font-size:22px}.inquiryForm{margin-top:18px}.fieldGrid{gap:12px}.fieldGrid label{gap:6px}.inquiryForm input,.inquiryForm textarea{padding:13px 14px;border-radius:12px}.checkRow{gap:11px;margin:16px 0}.checkRow input{width:22px!important;height:22px;min-width:22px;margin-top:0}.checkRow span{font-size:12px}.privacyNote{font-size:10px}.inquiryForm>.primaryButton,.successBox .primaryButton{width:100%;min-height:54px}.successBox{padding:30px 0 10px}.inquiryCode{font-size:24px;padding:16px 10px;border-radius:12px}

  .addToast{bottom:calc(14px + var(--safe-bottom));font-size:11px;padding:10px 14px}

  .adminShell{padding:16px 10px calc(24px + var(--safe-bottom))}.adminTop{align-items:flex-start;margin-bottom:18px}.adminTop h1{font-size:31px!important;line-height:1.05}.adminTop .ghost{min-height:40px}.adminShell>form[method="get"]{display:grid!important;grid-template-columns:1fr auto!important;gap:7px!important}.adminShell>form[method="get"] input{grid-column:1/-1;font-size:16px!important;min-height:48px}.adminTableWrap{overflow:visible;border:0;background:transparent}.adminTable{min-width:0;display:block}.adminTable thead{display:none}.adminTable tbody{display:grid;gap:10px}.adminTable tr{display:grid;background:#fff;border:1px solid var(--line);border-radius:15px;padding:13px;gap:10px}.adminTable td{display:block;padding:0!important;border:0!important;font-size:12px;overflow-wrap:anywhere}.adminTable td::before{display:block;margin-bottom:3px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.adminTable td:nth-child(1)::before{content:'Code / Zeit'}.adminTable td:nth-child(2)::before{content:'Kunde'}.adminTable td:nth-child(3)::before{content:'Kontakt'}.adminTable td:nth-child(4)::before{content:'Zugang'}.adminTable td:nth-child(5)::before{content:'Warenkorb'}.adminTable td:nth-child(6)::before{content:'Wert'}.adminDetail{font-size:10px;overflow-wrap:anywhere}.adminLogin{padding:14px;min-height:100svh}.adminLogin form{padding:22px 18px;border-radius:18px}.adminLogin input{font-size:16px;min-height:50px}.adminLogin button{min-height:50px}
}

@media(max-width:380px){
  .shopShell{padding-left:9px;padding-right:9px}.topbar{margin-left:-9px;margin-right:-9px;padding-left:9px;padding-right:9px}.logo{font-size:19px}.partnerLine{max-width:52vw}.topActions .ghost{padding-left:8px;padding-right:8px;font-size:10px}.hero h1{font-size:32px}.catalogToolbar{margin-left:-9px;margin-right:-9px;padding-left:9px;padding-right:9px}.cartTopButton{width:100%!important}.catalogTable tbody tr{padding:12px}.priceCell .piecePrice{font-size:10px;padding:5px 6px}}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* V3.2 – branded Laborzugang */
.gate{
  background:
    radial-gradient(circle at 12% 12%, rgba(191,91,255,.10), transparent 28rem),
    radial-gradient(circle at 88% 88%, rgba(0,215,196,.10), transparent 28rem),
    var(--bg);
}
.gateCard{
  width:min(520px,100%);
  padding:34px 38px 38px;
  text-align:center;
  overflow:hidden;
}
.gateLogo{
  display:block;
  width:min(390px,92%);
  height:auto;
  margin:0 auto 14px;
  object-fit:contain;
}
.gateCard h1{
  margin:4px 0 0;
  font-size:clamp(38px,7vw,54px);
}
.gateSubtitle{
  margin:10px 0 0;
  color:var(--muted);
  font-size:16px;
}
.gateCard .codeForm{
  margin-top:26px;
  text-align:left;
}
.gateCard .codeForm input{
  min-height:54px;
  border-radius:14px;
  font-size:16px;
  background:#fff;
}
.gateCard .codeForm button{
  min-height:54px;
  border-radius:14px;
  margin-top:3px;
  background:linear-gradient(100deg,#7138f5 0%,#466bed 52%,#20c9c1 100%);
  box-shadow:0 12px 28px rgba(62,91,220,.18);
}
.gateCard .codeForm button:active{transform:none}

@media(max-width:760px){
  .gate{padding:14px;align-items:center}
  .gateCard{
    width:100%;
    max-width:460px;
    padding:24px 18px 26px;
    border-radius:22px;
    box-shadow:0 16px 44px rgba(22,22,22,.08);
  }
  .gateLogo{width:min(330px,94%);margin-bottom:8px}
  .gateCard h1{font-size:38px;margin-top:0}
  .gateSubtitle{font-size:15px;margin-top:8px}
  .gateCard .codeForm{margin-top:22px}
  .gateCard .codeForm label{font-size:13px}
  .gateCard .codeForm input,.gateCard .codeForm button{min-height:54px}
}

@media(max-width:380px){
  .gate{padding:10px}
  .gateCard{padding:20px 15px 22px}
  .gateLogo{width:min(300px,96%)}
  .gateCard h1{font-size:34px}
}


/* V3.5 – Footer, Rechtstexte und Zustimmungen */
.siteFooter{border-top:1px solid var(--line);background:#f8f7f3;color:var(--muted)}
.siteFooterInner{max-width:1540px;margin:0 auto;padding:18px 34px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:12px}
.siteFooterBrand{font-weight:800;color:var(--ink)}
.legalNav{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}
.legalNav a,.privacyNote a,.legalCheck a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.optionalMark{font-size:11px;font-weight:400;color:var(--muted)}
.legalCheck{margin-top:-6px}
.legalAccepted{margin-top:8px;padding:7px 9px;border-radius:8px;background:var(--soft);font-size:11px;color:var(--muted)}
.legalPageBody{min-height:100svh;display:flex;flex-direction:column}
.legalShell{width:min(920px,calc(100% - 32px));margin:0 auto;padding:26px 0 60px;flex:1}
.legalTop{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.legalBrand{font-size:23px;font-weight:700;letter-spacing:-.04em;color:var(--ink);text-decoration:none}
.legalBack{text-decoration:none;display:inline-flex}
.legalArticle{margin-top:28px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:clamp(22px,4vw,42px);line-height:1.65;box-shadow:0 12px 40px #00000008}
.legalArticle h1{font-size:clamp(34px,5vw,50px);line-height:1.05;margin:0 0 28px;letter-spacing:-.04em}
.legalArticle h2{font-size:22px;line-height:1.25;margin:34px 0 12px}
.legalArticle h3{font-size:17px;line-height:1.3;margin:24px 0 8px}
.legalArticle p{margin:10px 0}
.legalArticle ul,.legalArticle ol{padding-left:24px;margin:10px 0 16px}
.legalArticle li{margin:6px 0}
.legalArticle li>p{margin:0}
.legalArticle strong{font-weight:800}
.legalArticle a{color:inherit}
.gate{min-height:calc(100svh - 66px)}

@media(max-width:760px){
  .siteFooterInner{padding:16px;align-items:flex-start;flex-direction:column;gap:10px}
  .legalNav{justify-content:flex-start;gap:10px 14px}
  .legalShell{width:min(100% - 20px,920px);padding-top:10px;padding-bottom:28px}
  .legalTop{padding:10px 2px 14px}
  .legalBrand{font-size:20px}
  .legalBack{font-size:11px;padding:8px 10px}
  .legalArticle{margin-top:12px;border-radius:16px;padding:20px 16px;line-height:1.58}
  .legalArticle h1{font-size:32px;margin-bottom:22px}
  .legalArticle h2{font-size:19px;margin-top:28px}
  .legalArticle h3{font-size:16px}
  .legalArticle ul,.legalArticle ol{padding-left:20px}
  .legalCheck{margin-top:-4px}
}


/* V3.6 – Elektronische Widerrufsfunktion (§ 356a BGB) */

/* V3.8 B2B legal update */
.gateB2BNote{margin:2px 0 16px;color:var(--muted);font-size:12px;font-weight:750;text-align:center}
.legalArticle table{width:100%;border-collapse:separate;border-spacing:0;margin:18px 0 28px;background:var(--soft);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.legalArticle th,.legalArticle td{padding:16px 18px;text-align:left;vertical-align:top;font-weight:500}
.legalArticle th strong{font-weight:700}
.legalArticle .legalVersion{margin-top:38px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
@media(max-width:760px){.legalArticle table,.legalArticle thead,.legalArticle tbody,.legalArticle tr,.legalArticle th,.legalArticle td{display:block;width:100%}.legalArticle th,.legalArticle td{padding:14px}.gateB2BNote{font-size:11px;margin-bottom:14px}}

/* V3.11 Versand- und Supportinformationen */
.shippingServiceNote{margin:14px 0 0;font-size:13px;line-height:1.55;color:var(--muted)}
@media (max-width:700px){
      }


/* V3.15 Cookie-Einwilligung */
.footerLinkButton{
  appearance:none;border:0;background:transparent;padding:0;margin:0;
  font:inherit;color:inherit;text-decoration:underline;cursor:pointer;
}
.cookieDialogOpen{overflow:hidden}
.cookieConsentLayer{
  position:fixed;inset:0;z-index:100000;display:flex;align-items:flex-end;justify-content:center;
  padding:18px;background:rgba(10,17,29,.54);backdrop-filter:blur(3px);
}
.cookieConsentLayer.hidden{display:none}
.cookieConsentCard{
  width:min(760px,100%);max-height:min(88vh,780px);overflow:auto;background:#fff;color:#172033;
  border:1px solid rgba(17,34,68,.12);border-radius:22px;padding:22px;
  box-shadow:0 24px 80px rgba(15,23,42,.28);
}
.cookieConsentHead h2{margin:2px 0 10px;font-size:28px}
.cookieConsentCard>p{line-height:1.55;color:#596579}
.cookieConsentActions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.cookieChoiceButton{
  min-height:50px;border-radius:12px;border:1px solid #b9c4d3;background:#fff;color:#172033;
  font-weight:750;font-size:15px;cursor:pointer;padding:12px 16px;
}
.cookieChoiceButton.primaryChoice{
  border-color:#6d5dfc;background:linear-gradient(135deg,#6d5dfc,#1ab6bd);color:#fff;
}
.cookieTextButton{
  grid-column:1/-1;border:0;background:transparent;min-height:42px;font-weight:700;color:#4b5b72;cursor:pointer;
}
.cookieSettingsPanel{margin-top:16px;border-top:1px solid #e3e8ef;padding-top:10px}
.cookieSettingsPanel.hidden{display:none}
.cookieCategory{
  display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 2px;border-bottom:1px solid #edf0f4;
}
.cookieCategory span{display:flex;flex-direction:column;gap:3px}
.cookieCategory small{color:#687489;line-height:1.35}
.cookieCategory input{width:22px;height:22px;flex:0 0 auto}
.cookieWideButton{width:100%;margin-top:14px}
.cookieLegalLine{font-size:12px;margin:14px 0 0!important}
.cookieLegalLine a{color:inherit;font-weight:700}
@media (max-width:600px){
  .cookieConsentLayer{padding:0;align-items:flex-end}
  .cookieConsentCard{
    border-radius:20px 20px 0 0;padding:18px 16px calc(18px + env(safe-area-inset-bottom));
    max-height:92vh;
  }
  .cookieConsentHead h2{font-size:24px}
  .cookieConsentActions{grid-template-columns:1fr}
  .cookieTextButton{grid-column:auto}
}


/* V3.16 Versand & WhatsApp prominent */
.shopTypeLabel{
  margin-top:2px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);
}
.frontInfoStrip{
  display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);gap:12px;
  margin:14px 0 20px;
}
.frontInfoItem{
  min-height:76px;display:flex;align-items:center;gap:14px;padding:15px 17px;
  border:1px solid var(--line);border-radius:16px;background:#fff;text-decoration:none;color:inherit;
  box-shadow:0 8px 24px rgba(15,23,42,.06);
}
.frontInfoItem strong{display:block;font-size:15px;line-height:1.3}
.frontInfoItem span:not(.frontInfoIcon){display:block;margin-top:4px;font-size:14px;line-height:1.35;color:var(--muted)}
.frontInfoIcon{
  min-width:48px;height:48px;border-radius:12px;display:grid;place-items:center;
  font-size:12px;font-weight:700;letter-spacing:.04em;border:1px solid var(--line);background:#f8fafc;
}
.frontInfoWhatsapp{transition:transform .15s ease,box-shadow .15s ease}
.frontInfoWhatsapp:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(15,23,42,.10)}
.shippingServiceNote{
  font-size:14px!important;line-height:1.55!important;
}
@media (max-width:760px){
  .frontInfoStrip{grid-template-columns:1fr}
  .frontInfoItem{min-height:72px}
}


/* V3.18 – Mobile Bestätigungen */
.inquiryConfirmations{
  display:grid;
  gap:10px;
  margin:18px 0;
}
.inquiryConfirmations .checkRow,
.inquiryConfirmations .legalCheck{
  display:grid!important;
  grid-template-columns:24px minmax(0,1fr);
  align-items:start;
  gap:12px;
  margin:0;
  padding:13px 14px;
  border:1px solid var(--line);
  border-radius:13px;
  background:#faf9f6;
}
.inquiryConfirmations .checkRow input{
  width:22px!important;
  height:22px!important;
  min-width:22px;
  margin:1px 0 0;
  accent-color:var(--ink);
}
.inquiryConfirmations .checkRow span{
  min-width:0;
  font-size:13px;
  line-height:1.5;
  font-weight:400!important;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:auto;
}
.inquiryConfirmations .legalCheck a{
  display:inline;
  font-weight:800;
  white-space:normal;
  text-decoration-thickness:1px;
}
@media(max-width:760px){
  .inquiryConfirmations{
    gap:9px;
    margin:16px 0;
  }
  .inquiryConfirmations .checkRow,
  .inquiryConfirmations .legalCheck{
    grid-template-columns:26px minmax(0,1fr);
    gap:11px;
    padding:14px 13px;
    border-radius:12px;
  }
  .inquiryConfirmations .checkRow input{
    width:24px!important;
    height:24px!important;
    min-width:24px;
    margin-top:0;
  }
  .inquiryConfirmations .checkRow span{
    font-size:14px;
    line-height:1.48;
  }
  .inquiryConfirmations .legalCheck{
    margin-top:0!important;
  }
  .inquiryConfirmations .legalCheck a{
    font-size:inherit;
    line-height:inherit;
    overflow-wrap:anywhere;
  }
}


/* V3.20 Checkbox-Ausrichtung */
.checkRow { align-items: center; }


/* V3.21 Ausrichtung für rechtliche Checkbox-Zeilen */
label.checkRow.legalCheck { align-items: center; }


/* V3.23 – Kontaktbestätigung zuerst und deutlich sichtbar */
.supportConsentFirst{
  margin:0 0 18px;
  padding:15px;
  border:2px solid #68a875;
  border-radius:15px;
  background:#edf8ef;
  box-shadow:0 6px 18px rgba(45,110,60,.08);
}
.supportConsentTitle{
  margin:0 0 9px;
  font-size:12px;
  line-height:1.2;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#285d34;
}
.supportConsentFirst .contactCheck{
  display:grid!important;
  grid-template-columns:26px minmax(0,1fr);
  align-items:center!important;
  gap:12px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
}
.supportConsentFirst .contactCheck input{
  width:24px!important;
  height:24px!important;
  min-width:24px;
  margin:0;
  accent-color:#2f7d40;
}
.supportConsentFirst .contactCheck span{
  min-width:0;
  font-size:14px;
  line-height:1.5;
  font-weight:750!important;
  color:#21492b;
}
.inquiryNotice strong{
  display:block;
  margin-bottom:4px;
}
.successSupportNotice{
  display:grid;
  gap:7px;
  margin:18px 0 20px;
  padding:15px 16px;
  border:1px solid #a7d7b0;
  border-radius:14px;
  background:#f0f9f2;
  color:#234c2c;
  text-align:left;
  line-height:1.5;
}
.successSupportNotice strong{
  font-size:14px;
}
.successSupportNotice span{
  font-size:13px;
}
@media(max-width:760px){
  .supportConsentFirst{
    margin:14px 0 16px;
    padding:14px 13px;
    border-radius:13px;
  }
  .supportConsentTitle{
    font-size:11px;
  }
  .supportConsentFirst .contactCheck{
    grid-template-columns:28px minmax(0,1fr);
    gap:11px;
  }
  .supportConsentFirst .contactCheck input{
    width:26px!important;
    height:26px!important;
    min-width:26px;
  }
  .supportConsentFirst .contactCheck span{
    font-size:14px;
    line-height:1.48;
  }
  .successSupportNotice{
    padding:14px;
    margin:16px 0 18px;
  }
}


/* V3.24 Header */
.topbar .logo{
  font-size:26px;
}
@media(max-width:760px){
  .topbar .logo{
    font-size:24px;
  }
}




/* V3.26 – Anfragebutton nur am Ende des Warenkorbs */
@media(max-width:1050px){
  .cartSummary{
    padding-bottom:18px!important;
  }
  .cartSummary #openInquiryButton,
  .cartPanel.mobileOpen #openInquiryButton{
    position:static!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    margin-top:10px!important;
    box-shadow:none!important;
  }
}


/* V3.28 – Mobile Header: Laborkennung wechseln oben rechts */
@media(max-width:760px){
  .topbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start!important;
    column-gap:10px;
    row-gap:8px;
  }

  .topbar > div:first-child{
    grid-column:1;
    grid-row:1;
    min-width:0;
  }

  .topActions{
    display:contents!important;
  }

  .topActions #logoutButton{
    grid-column:2;
    grid-row:1;
    align-self:start;
    justify-self:end;
    width:auto!important;
    min-height:38px;
    margin:0!important;
    padding:8px 10px;
    white-space:nowrap;
  }

  .topActions .cartTopButton{
    grid-column:1 / -1!important;
    grid-row:2;
    width:100%!important;
    margin:0!important;
  }
}


/* V3.29 – dynamischer Laborvorteil */
.benefitHighlight #discountHeadline{
  display:block;
  max-width:330px;
  font-size:20px;
  line-height:1.18;
}
@media(max-width:760px){
  .benefitHighlight #discountHeadline{
    max-width:none;
    font-size:19px;
  }
}


/* V3.30 – Laborvorteil zweizeilig */
.benefitHighlight #discountHeadline .discountIntro{
  display:block;
  font-size:18px;
  line-height:1.25;
  font-weight:700;
}
.benefitHighlight #discountHeadline .discountValue{
  display:block;
  margin-top:4px;
  font-size:30px;
  line-height:1.05;
  font-weight:700;
}
@media(max-width:760px){
  .benefitHighlight #discountHeadline .discountIntro{
    font-size:17px;
  }
  .benefitHighlight #discountHeadline .discountValue{
    font-size:28px;
  }
}


/* V3.31 – Mobile Titelumbruch */
.mobileTitleBreak{display:none}
@media(max-width:760px){
  .mobileTitleBreak{display:block}
}


/* V3.33 – aktiver Zugang grün */
.accessActive{
  color:#2f7d40!important;
}


/* V3.34 – echte Logos für Front-Infos */
.frontInfoIcon.logoBadge{
  padding:0;
  overflow:hidden;
  background:#fff;
}
.frontInfoIcon.logoBadge img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}


/* V3.36 – China-Bestellservice Hinweis */
.chinaSupportNote{
  margin:-6px 0 20px;
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  line-height:1.5;
}
.chinaSupportNote strong{
  display:block;
  font-size:14px;
}
.chinaSupportNote span{
  display:block;
  margin-top:3px;
  font-size:13px;
  color:var(--muted);
}
@media(max-width:760px){
  .chinaSupportNote{
    margin:-4px 0 18px;
    padding:13px 14px;
  }
  .chinaSupportNote strong{
    font-size:14px;
  }
  .chinaSupportNote span{
    font-size:13px;
  }
}


/* V3.37 – hochgeladene WhatsApp-/DHL-PNG-Logos */
.frontInfoIcon.logoBadge{
  width:48px;
  min-width:48px;
  height:48px;
  border:0;
  background:transparent;
}
.frontInfoIcon.logoBadge img{
  width:48px;
  height:48px;
  object-fit:contain;
  border-radius:10px;
}


/* V3.38 – Packungsangabe mobil größer */
@media(max-width:760px){
  .catalogTable td:nth-child(3){
    font-size:15px!important;
    line-height:1.5!important;
    font-weight:700;
    color:var(--ink)!important;
  }
}


/* V3.39 – Warenkorb leeren */
.clearCartButton{
  width:100%;
  min-height:42px;
  margin:4px 0 2px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fff;
  color:var(--muted);
  font-weight:700;
  font-size:12px;
}
.clearCartButton:hover{
  color:var(--ink);
  border-color:var(--ink);
}
@media(max-width:760px){
  .clearCartButton{
    min-height:46px;
    font-size:13px;
    margin-top:7px;
  }
}


/* V3.53 – Admin Monatsstatistik Laborkennungen */
.adminStats{
  margin:0 0 28px;
  padding:20px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
}
.adminStatsHead{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}
.adminStatsHead h2{margin-top:6px}
.adminStatsHead .muted{margin:6px 0 0;font-size:12px}
.adminMonthForm{
  display:flex;
  align-items:center;
  gap:8px;
}
.adminMonthForm label{
  font-size:11px;
  font-weight:800;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.06em;
}
.adminMonthForm input[type="month"]{
  min-height:42px;
  padding:9px 11px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
}
.adminStatCards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-bottom:16px;
}
.adminStatCard{
  padding:14px;
  border:1px solid var(--soft);
  border-radius:13px;
  background:#faf9f6;
}
.adminStatCard span{
  display:block;
  font-size:10px;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
  color:var(--muted);
}
.adminStatCard strong{
  display:block;
  margin-top:5px;
  font-size:22px;
  line-height:1.05;
}
.adminStatCard small{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:10px;
}
.adminStatsTableWrap{
  overflow:auto;
  border:1px solid var(--line);
  border-radius:13px;
}
.adminStatsTable{
  width:100%;
  min-width:1180px;
  border-collapse:collapse;
}
.adminStatsTable th,
.adminStatsTable td{
  padding:10px 11px;
  border-bottom:1px solid var(--soft);
  text-align:right;
  vertical-align:top;
  font-size:11px;
  white-space:nowrap;
}
.adminStatsTable th:first-child,
.adminStatsTable td:first-child,
.adminStatsTable th:last-child,
.adminStatsTable td:last-child{
  text-align:left;
}
.adminStatsTable thead th{
  background:#f8f7f3;
  color:var(--muted);
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.adminStatsTable tbody tr:last-child td{border-bottom:0}
.adminStatsTable tfoot th{
  background:#f3f1eb;
  color:var(--ink);
  border-top:1px solid var(--line);
  font-size:10px;
}
.adminStatsTable .statsZero{opacity:.5}
.adminStatsNote{
  margin:12px 2px 0;
  font-size:10px;
  line-height:1.5;
  color:var(--muted);
}
.adminSearchForm{
  display:flex;
  gap:8px;
  margin-bottom:14px;
  max-width:720px;
}
.adminSearchForm input[name="q"]{
  flex:1;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:10px;
}
.adminSearchForm a.ghost{text-decoration:none}

@media(max-width:760px){
  .adminStats{padding:14px;margin-bottom:20px}
  .adminStatsHead{align-items:stretch;flex-direction:column}
  .adminMonthForm{display:grid;grid-template-columns:1fr auto}
  .adminMonthForm label{grid-column:1/-1}
  .adminMonthForm input[type="month"]{width:100%;font-size:16px}
  .adminStatCards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .adminStatCard{padding:12px}
  .adminStatCard strong{font-size:18px}
  .adminStatsTableWrap{overflow:auto;-webkit-overflow-scrolling:touch}
  .adminSearchForm{display:grid;grid-template-columns:1fr auto}
  .adminSearchForm input[name="q"]{grid-column:1/-1;font-size:16px;min-height:48px}
}


/* V3.54 – aktiver Rabatt direkt am Produktpreis */
.activePriceDeal{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px 8px;
}
.oldPrice{
  position:relative;
  display:inline-block;
  color:#b42318;
  font-size:13px;
  font-weight:700;
  text-decoration:line-through;
  text-decoration-thickness:2px;
  text-decoration-color:#d92d20;
}
.newPrice{
  color:var(--ink);
  font-size:18px;
  font-weight:700;
  line-height:1.1;
}
.discountBadge{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:3px 7px;
  border-radius:999px;
  background:#edf8ef;
  color:#217a38;
  font-size:10px;
  font-weight:700;
  white-space:nowrap;
}
.piecePrice .newPiecePrice{
  color:#217a38;
  font-weight:800;
}

@media(max-width:760px){
  .activePriceDeal{gap:6px}
  .oldPrice{font-size:14px}
  .newPrice{font-size:20px}
  .discountBadge{
    min-height:24px;
    padding:4px 8px;
    font-size:11px;
  }
  .priceCell .piecePrice{
    display:block;
    margin-top:6px;
    font-size:11px!important;
  }
  .piecePrice .newPiecePrice{
    display:inline-block;
  }
}


/* V3.57 – Rabattvorteil am Produktpreis deutlicher sichtbar */
.priceSaving{
  display:block;
  margin-top:4px;
  color:#217a38;
  font-size:10px;
  font-weight:800;
}
.activePriceDeal .oldPrice{
  color:#c62828!important;
  text-decoration-color:#c62828!important;
  text-decoration-thickness:2px;
}
.activePriceDeal .newPrice{
  font-size:19px;
  font-weight:700;
}
.activePriceDeal .discountBadge{
  background:#edf8ef;
  color:#217a38;
  font-weight:700;
}
@media(max-width:760px){
  .activePriceDeal .newPrice{font-size:21px}
  .priceSaving{font-size:11px}
}

/* V3.60 – Cart/Anfrage nicht im unteren Seitenbereich anzeigen */
@media(max-width:760px){
  .cartPanel{
    position:fixed!important;
    z-index:90!important;
    left:0!important;
    right:0!important;
    top:0!important;
    bottom:auto!important;
    width:100%!important;
    height:100svh!important;
    max-height:100svh!important;
    margin:0!important;
    padding:0 14px calc(18px + var(--safe-bottom))!important;
    border:0!important;
    border-radius:0!important;
    overflow-y:auto!important;
    transform:translateY(105%)!important;
    transition:transform .24s ease!important;
    box-shadow:none!important;
  }

  .cartPanel.mobileOpen{
    position:fixed!important;
    transform:translateY(0)!important;
  }

  .cartSummary{
    position:static!important;
    padding-bottom:18px!important;
  }

  .cartSummary #openInquiryButton,
  .cartPanel.mobileOpen #openInquiryButton{
    position:static!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    width:100%!important;
    margin-top:10px!important;
    box-shadow:none!important;
  }
}


/* V3.61 – mobilen schwebenden "Zum Warenkorb hinzugefügt"-Balken entfernen */
@media(max-width:760px){
  .addToast{
    display:none!important;
    position:static!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    box-shadow:none!important;
  }
}


/* V3.62 – geschlossenen Warenkorb mobil vollständig ausblenden */
@media(max-width:760px){
  .cartPanel:not(.mobileOpen){
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    transform:none!important;
  }

  .cartPanel.mobileOpen{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:0!important;
    bottom:0!important;
    width:100%!important;
    height:100dvh!important;
    max-height:100dvh!important;
    margin:0!important;
    transform:none!important;
  }

  .cartBackdrop.hidden{
    display:none!important;
  }
}


/* V3.63 – Menge vor dem Hinzufügen wählen */
.productPurchaseControl{
  display:flex;
  align-items:stretch;
  gap:8px;
}
.productQtyPicker{
  display:grid;
  grid-template-columns:34px 48px 34px;
  align-items:stretch;
  border:1px solid var(--line);
  border-radius:11px;
  overflow:hidden;
  background:#fff;
}
.productQtyPicker button{
  border:0;
  background:#f8f7f3;
  font-size:18px;
  font-weight:700;
  min-height:42px;
}
.productQtyPicker button:first-child{border-right:1px solid var(--line)}
.productQtyPicker button:last-child{border-left:1px solid var(--line)}
.productQtyPicker input{
  width:48px;
  min-width:0;
  border:0;
  padding:0 3px;
  background:#fff;
  text-align:center;
  font-size:14px;
  font-weight:700;
  outline:none;
  appearance:textfield;
  -moz-appearance:textfield;
}
.productQtyPicker input::-webkit-outer-spin-button,
.productQtyPicker input::-webkit-inner-spin-button{
  margin:0;
  -webkit-appearance:none;
}
.productPurchaseControl .addButton{
  flex:1;
  min-width:110px;
  margin-top:0;
}

@media(max-width:760px){
  .productPurchaseControl{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:8px;
  }
  .productQtyPicker{
    grid-template-columns:42px 50px 42px;
    border-radius:12px;
  }
  .productQtyPicker button{
    min-height:48px;
    font-size:20px;
  }
  .productQtyPicker input{
    width:50px;
    font-size:16px;
  }
  .productPurchaseControl .addButton{
    min-width:0;
    min-height:48px;
  }
}


/* V3.65 – Produkt-Code und Produktname Größen angepasst */
.catalogTable td:nth-child(1) .sku{
  font-size:16px!important;
  line-height:1.15!important;
  font-weight:700!important;
  padding:7px 10px!important;
}
.catalogTable td:nth-child(2) strong{
  font-size:16px!important;
  line-height:1.2!important;
  font-weight:700!important;
}

@media(max-width:760px){
  .catalogTable td:nth-child(1) .sku{
    font-size:18px!important;
    line-height:1.1!important;
    padding:8px 10px!important;
  }
  .catalogTable td:nth-child(2) strong{
    font-size:18px!important;
    line-height:1.15!important;
  }
}


/* V3.72 – Beispiel normal schreiben, echte Laborkennung-Eingabe weiterhin GROSS */
.codeForm input::placeholder{
  text-transform:none!important;
  letter-spacing:normal!important;
}


/* V3.76 – Abstand zwischen mobilem Warenkorb-Header und Zugangshinweis */
@media(max-width:760px){
  .topbar{
    padding-bottom:14px!important;
    row-gap:10px!important;
  }

  .hero{
    margin-top:10px!important;
    padding-top:30px!important;
  }

  .hero .accessActive{
    display:block!important;
    position:relative!important;
    z-index:1!important;
    margin-top:0!important;
    padding-top:2px!important;
  }
}


/* V3.77 – Zugangshinweis vor Laborkennung im Header */
.headerAccessLine{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:5px;
  min-width:0;
}
.headerAccessActive{
  color:#2f7d40;
  font-size:11px;
  line-height:1.2;
  font-weight:700;
  letter-spacing:.08em;
  white-space:nowrap;
}
.headerAccessLine .partnerLine{
  margin-top:0!important;
  min-width:0;
}

@media(max-width:760px){
  .headerAccessLine{
    display:flex;
    flex-wrap:wrap;
    gap:4px 7px;
    margin-top:3px;
    max-width:58vw;
  }
  .headerAccessActive{
    font-size:10px;
    letter-spacing:.06em;
  }
  .headerAccessLine .partnerLine{
    max-width:100%!important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  /* Hero braucht nach dem Verschieben des Hinweises keinen Zusatzabstand mehr */
  .hero{
    margin-top:0!important;
    padding-top:26px!important;
  }
}


/* V3.78 – Header vierzeilig: Marke, Typ, Zugang, Laborkennung */
.headerAccessLine{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:3px!important;
  align-items:start!important;
  margin-top:5px!important;
}
.headerAccessActive{
  display:block!important;
  color:#2f7d40!important;
  font-size:11px!important;
  line-height:1.25!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
}
.headerAccessLine .partnerLine{
  display:block!important;
  margin-top:0!important;
  max-width:none!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}

@media(max-width:760px){
  .headerAccessLine{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:2px!important;
    max-width:none!important;
    margin-top:4px!important;
  }
  .headerAccessActive{
    font-size:10px!important;
    letter-spacing:.06em!important;
  }
  .headerAccessLine .partnerLine{
    max-width:none!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
}


/* V3.80 – Produktnamen gruppieren, Packungsgrößen erst beim Öffnen zeigen */
.productGroupRow > td{
  padding:0!important;
}
.productGroupToggle{
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 38px;
  align-items:center;
  gap:14px;
  padding:17px 18px;
  border:1px solid var(--line);
  border-radius:15px;
  background:var(--card);
  color:var(--ink);
  text-align:left;
}
.productGroupToggle:hover{
  background:#faf9f6;
}
.productGroupName{
  min-width:0;
  font-size:18px;
  line-height:1.2;
  font-weight:700;
  overflow-wrap:anywhere;
}
.productGroupMeta{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}
.productGroupChevron{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:var(--soft);
  font-size:20px;
  font-weight:700;
}
.productVariantList{
  display:grid;
  gap:8px;
  margin:8px 0 16px;
}
.productVariant{
  display:grid;
  grid-template-columns:minmax(210px,1.2fr) minmax(230px,1fr) minmax(300px,auto);
  align-items:center;
  gap:16px;
  padding:14px 16px;
  border:1px solid var(--soft);
  border-radius:14px;
  background:#fff;
}
.variantIdentity{
  display:grid;
  gap:6px;
  min-width:0;
}
.variantIdentity .sku{
  justify-self:start;
}
.variantSize{
  font-size:15px;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.variantBlendComponents{
  display:grid;
  gap:3px;
  margin:2px 0 6px;
  font-size:15px;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.variantBlendComponents strong{
  font-weight:700;
}
.variantPrice{
  min-width:0;
}
.productVariant .productPurchaseControl{
  justify-self:end;
  width:100%;
  max-width:360px;
}
.productGroupRow + .productGroupRow{
  border-top:0!important;
}

@media(max-width:760px){
  .catalogTable tbody{
    gap:9px!important;
  }
  .catalogTable tbody .productGroupRow{
    display:block!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .catalogTable tbody .productGroupRow > td{
    display:block!important;
    padding:0!important;
    grid-column:auto!important;
    grid-row:auto!important;
  }
  .productGroupToggle{
    grid-template-columns:minmax(0,1fr) 34px;
    gap:8px;
    padding:15px 14px;
    border-radius:14px;
  }
  .productGroupName{
    font-size:18px;
  }
  .productGroupMeta{
    grid-column:1;
    grid-row:2;
    font-size:11px;
    white-space:normal;
  }
  .productGroupChevron{
    grid-column:2;
    grid-row:1 / 3;
    width:32px;
    height:32px;
  }
  .productVariantList{
    gap:8px;
    margin:7px 0 14px;
  }
  .productVariant{
    display:grid;
    grid-template-columns:1fr;
    gap:11px;
    padding:13px;
    border-radius:13px;
  }
  .variantIdentity{
    gap:5px;
  }
  .variantSize{
    font-size:15px;
  }
  .productVariant .priceCell{
    border-top:1px solid var(--soft);
    padding-top:10px;
  }
  .productVariant .productPurchaseControl{
    justify-self:stretch;
    max-width:none;
  }
}

@media(min-width:761px){
  .catalogTable tbody .productGroupRow:hover{
    background:transparent;
  }
}


/* V3.81 – Gruppendarstellung auf Desktop und Mobil vereinheitlichen */
.catalogTable thead{
  display:none!important;
}
.catalogTable{
  width:100%!important;
  min-width:0!important;
  border-collapse:separate!important;
  border-spacing:0 9px!important;
}
.catalogTable tbody{
  display:table-row-group;
}
.catalogTable .productGroupRow{
  background:transparent!important;
}
.catalogTable .productGroupRow > td{
  border:0!important;
  padding:0!important;
}
.productGroupToggle{
  width:100%!important;
  min-height:58px;
  cursor:pointer;
}
.productVariantList{
  width:100%;
}
.productVariant{
  width:100%;
}

@media(min-width:761px){
  .catalogTableWrap{
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
  }
  .catalogTable tbody{
    display:block!important;
  }
  .catalogTable .productGroupRow{
    display:block!important;
    width:100%!important;
    margin:0 0 9px!important;
  }
  .catalogTable .productGroupRow > td{
    display:block!important;
    width:100%!important;
  }
  .productGroupToggle{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto 40px!important;
    padding:18px 20px!important;
    border-radius:16px!important;
  }
  .productGroupName{
    font-size:19px!important;
  }
  .productGroupMeta{
    font-size:12px!important;
  }
  .productVariantList{
    display:grid!important;
    gap:8px!important;
    margin:8px 0 16px!important;
  }
  .productVariant{
    display:grid!important;
    grid-template-columns:minmax(220px,1.25fr) minmax(230px,1fr) minmax(300px,360px)!important;
    gap:18px!important;
    padding:15px 18px!important;
    border-radius:14px!important;
  }
}

@media(max-width:760px){
  .catalogTable,
  .catalogTable tbody{
    display:block!important;
    width:100%!important;
  }
  .catalogTable .productGroupRow{
    display:block!important;
    width:100%!important;
  }
  .catalogTable .productGroupRow > td{
    display:block!important;
    width:100%!important;
  }
}


/* V3.86 – Produktgruppen vertikal +3px Abstand */
.catalogTable{
  border-spacing:0 12px!important;
}
@media(min-width:761px){
  .catalogTable .productGroupRow{
    margin-bottom:12px!important;
  }
}
@media(max-width:760px){
  .catalogTable tbody{
    gap:12px!important;
  }
}


/* V3.87 – Mobil mehr Abstand zwischen eingeklappten Produktgruppen */
@media(max-width:760px){
  .catalogTable tbody .productGroupRow{
    margin:0 0 16px 0!important;
  }

  .catalogTable tbody .productGroupRow:last-child{
    margin-bottom:0!important;
  }

  .productGroupToggle{
    margin:0!important;
  }
}


/* V3.88 – ausgearbeitete Infoboxen oberhalb und unterhalb des Katalogs */
.chinaSupportTop{
  display:grid;
  gap:10px;
  margin:-6px 0 22px!important;
  padding:17px 18px!important;
}
.chinaSupportTop p{
  margin:0;
  line-height:1.55;
}
.chinaSupportTop strong{
  font-weight:700;
}

.catalogSupportNote{
  margin:22px 0 18px;
  padding:17px 18px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  line-height:1.55;
}
.catalogSupportNote p{
  margin:0;
}
.catalogSupportNote strong{
  font-weight:700;
}

@media(max-width:760px){
  .chinaSupportTop{
    gap:10px;
    margin:-2px 0 18px!important;
    padding:15px 14px!important;
  }
  .catalogSupportNote{
    margin:20px 0 16px;
    padding:15px 14px;
  }
}


/* V3.89 – obere China-Hinweise in zwei Infoboxen trennen */
.chinaInfoStack{
  display:grid;
  gap:12px;
  margin:-6px 0 22px;
}
.chinaInfoStack .chinaSupportNote{
  margin:0!important;
}
.chinaPriceNote{
  padding:17px 18px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
}
.chinaPriceNote p{
  margin:0;
  line-height:1.55;
}
.chinaPriceNote strong{
  font-weight:700;
}

@media(max-width:760px){
  .chinaInfoStack{
    gap:12px;
    margin:-2px 0 18px;
  }
  .chinaPriceNote{
    padding:15px 14px;
  }
}


/* V3.91 – Infoboxen: Überschrift größer, Untertext kleiner */
.infoBoxTitle{
  margin:0!important;
  font-size:16px!important;
  line-height:1.35!important;
  font-weight:700!important;
  color:var(--ink)!important;
}
.infoBoxText{
  margin:0!important;
  font-size:13px!important;
  line-height:1.55!important;
  font-weight:400!important;
  color:var(--muted)!important;
}
.infoBoxText strong{
  font-size:inherit!important;
  font-weight:700!important;
  color:var(--ink)!important;
}

@media(max-width:760px){
  .infoBoxTitle{
    font-size:15px!important;
    line-height:1.35!important;
  }
  .infoBoxText{
    font-size:12px!important;
    line-height:1.5!important;
  }
}



/* V3.98 – Einheitliches Grunddesign für alle Informationsboxen */
.ruleBox.benefitHighlight,
.frontInfoItem,
.chinaInfoStack .chinaSupportNote,
.catalogSupportNote,
.catalogNotice{
  background:#fff!important;
  border:1px solid var(--line)!important;
  border-radius:16px!important;
  box-shadow:0 8px 24px rgba(15,23,42,.06)!important;
}

/* Einheitliche Innenabstände */
.ruleBox.benefitHighlight,
.chinaInfoStack .chinaSupportNote,
.catalogSupportNote,
.catalogNotice{
  padding:17px 18px!important;
}
.frontInfoItem{
  padding:17px 18px!important;
}

/* Einheitliche Überschriften */
.infoBoxTitle,
.catalogNotice > strong,
.frontInfoItem strong{
  color:var(--ink)!important;
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:700!important;
}

/* Einheitlicher Untertext */
.infoBoxText,
.catalogNotice > span,
.frontInfoItem span:not(.frontInfoIcon){
  color:var(--muted)!important;
  font-size:13px!important;
  line-height:1.5!important;
  font-weight:400!important;
}

/* Abstand zwischen Überschrift und Untertext */
.catalogNotice{
  display:grid!important;
  gap:6px!important;
}
.catalogNotice > strong{
  display:block!important;
  margin:0!important;
}
.catalogNotice > span{
  display:block!important;
  margin:0!important;
}

.frontInfoItem span:not(.frontInfoIcon){
  margin-top:4px!important;
}

/* Dein-Vorteil-Box optisch an dieselben Boxen angleichen */
.ruleBox.benefitHighlight{
  gap:7px!important;
}
.ruleBox.benefitHighlight > span{
  color:var(--muted)!important;
  font-size:12px!important;
  line-height:1.3!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
}
.benefitHighlight #discountHeadline .discountIntro{
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:700!important;
}
.benefitHighlight #discountHeadline .discountValue{
  margin-top:3px!important;
  font-size:24px!important;
  line-height:1.08!important;
  font-weight:700!important;
}

/* Logos bleiben als visuelles Element innerhalb des gleichen Boxdesigns */
.frontInfoIcon.logoBadge{
  background:#fff!important;
  border:1px solid var(--line)!important;
  border-radius:12px!important;
}

/* Kein abweichender Hover-Schatten bei WhatsApp */
.frontInfoWhatsapp:hover{
  box-shadow:0 8px 24px rgba(15,23,42,.06)!important;
}

@media(max-width:760px){
  .ruleBox.benefitHighlight,
  .frontInfoItem,
  .chinaInfoStack .chinaSupportNote,
  .catalogSupportNote,
  .catalogNotice{
    border-radius:16px!important;
  }

  .ruleBox.benefitHighlight,
  .chinaInfoStack .chinaSupportNote,
  .catalogSupportNote,
  .catalogNotice,
  .frontInfoItem{
    padding:15px 14px!important;
  }

  .infoBoxTitle,
  .catalogNotice > strong,
  .frontInfoItem strong{
    font-size:15px!important;
  }

  .infoBoxText,
  .catalogNotice > span,
  .frontInfoItem span:not(.frontInfoIcon){
    font-size:12px!important;
    line-height:1.5!important;
  }

  .benefitHighlight #discountHeadline .discountIntro{
    font-size:15px!important;
  }
  .benefitHighlight #discountHeadline .discountValue{
    font-size:23px!important;
  }
}


/* V3.99 – Einheitliche Abstände zwischen den Informationsboxen */
.hero{
  gap:24px!important;
}
.frontInfoStrip{
  gap:14px!important;
  margin:16px 0 14px!important;
}
.chinaInfoStack{
  gap:14px!important;
  margin:0 0 22px!important;
}
.catalogSupportNote{
  margin:22px 0 14px!important;
}
.catalogNotice{
  margin-top:14px!important;
}
.catalogNotice + .catalogNotice{
  margin-top:14px!important;
}

/* Innerhalb der Boxen ebenfalls einheitlicher vertikaler Rhythmus */
.chinaSupportTop,
.chinaPriceNote,
.catalogSupportNote{
  gap:7px!important;
}
.chinaSupportTop p + p,
.chinaPriceNote p + p,
.catalogSupportNote p + p{
  margin-top:0!important;
}

@media(max-width:760px){
  .hero{
    gap:18px!important;
  }
  .frontInfoStrip{
    gap:12px!important;
    margin:14px 0 12px!important;
  }
  .chinaInfoStack{
    gap:12px!important;
    margin:0 0 18px!important;
  }
  .catalogSupportNote{
    margin:18px 0 12px!important;
  }
  .catalogNotice,
  .catalogNotice + .catalogNotice{
    margin-top:12px!important;
  }
}


/* V4.01 – Vier zentrale Infoboxen exakt vereinheitlichen */
.standardInfoBox{
  display:grid!important;
  gap:7px!important;
  margin-left:0!important;
  margin-right:0!important;
  padding:17px 18px!important;
  background:#fff!important;
  border:1px solid var(--line)!important;
  border-radius:16px!important;
  box-shadow:0 8px 24px rgba(15,23,42,.06)!important;
  color:var(--ink)!important;
}

.standardInfoBox .infoBoxTitle{
  margin:0!important;
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:700!important;
  color:var(--ink)!important;
}

.standardInfoBox .infoBoxText{
  margin:0!important;
  font-size:13px!important;
  line-height:1.5!important;
  font-weight:400!important;
  color:var(--muted)!important;
}

.standardInfoBox .infoBoxText strong{
  font-weight:700!important;
  color:var(--ink)!important;
}

/* Gleicher vertikaler Abstand für die beiden unteren Standardboxen */
.catalogSupportNote.standardInfoBox{
  margin-top:22px!important;
  margin-bottom:14px!important;
}
.inquiryNotice.standardInfoBox{
  margin-top:14px!important;
}

/* Abweichende alte Spezialregeln neutralisieren */
.standardInfoBox.chinaSupportTop,
.standardInfoBox.chinaPriceNote{
  margin:0!important;
}

@media(max-width:760px){
  .standardInfoBox{
    gap:7px!important;
    padding:15px 14px!important;
    border-radius:16px!important;
  }
  .standardInfoBox .infoBoxTitle{
    font-size:15px!important;
  }
  .standardInfoBox .infoBoxText{
    font-size:12px!important;
    line-height:1.5!important;
  }
  .catalogSupportNote.standardInfoBox{
    margin-top:18px!important;
    margin-bottom:12px!important;
  }
  .inquiryNotice.standardInfoBox{
    margin-top:12px!important;
  }
}


/* V4.03 – Zugangshinweis und LABORKENNUNG typografisch vereinheitlichen */
.headerAccessActive,
.headerAccessLine .partnerLine,
.headerAccessLine .partnerLine strong{
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:11px!important;
  line-height:1.25!important;
  font-weight:700!important;
  letter-spacing:.06em!important;
}

.headerAccessLine .partnerLine strong{
  color:inherit!important;
}

@media(max-width:760px){
  .headerAccessActive,
  .headerAccessLine .partnerLine,
  .headerAccessLine .partnerLine strong{
    font-size:10px!important;
    line-height:1.25!important;
    font-weight:700!important;
    letter-spacing:.06em!important;
  }
}


/* V4.04 – Mobile Überschrift mit sicherem Abstand unter dem Warenkorb-Header */
@media(max-width:760px){
  .hero{
    margin-top:12px!important;
    padding-top:30px!important;
  }
  .hero h1{
    position:relative!important;
    z-index:1!important;
    margin-top:0!important;
  }
}


/* V4.09 – Laborzugang-Design auf den Shop übertragen, ohne Bildlogo */
body{
  background:var(--bg)!important;
}

.shopShell{
  width:min(1540px, calc(100% - 48px))!important;
  max-width:1540px!important;
  margin:24px auto 40px!important;
  padding:34px 38px 64px!important;
  background:var(--card)!important;
  border:1px solid var(--line)!important;
  border-radius:24px!important;
  box-shadow:0 24px 75px #00000012!important;
  overflow:visible!important;
}

/* Header wie innerhalb der Laborzugang-Karte */
.shopShell .topbar{
  background:transparent!important;
  border-bottom:1px solid var(--line)!important;
}

/* Bedienflächen an die ruhige Laborzugang-Optik angleichen */
.shopShell .ghost{
  background:#fff!important;
  border:1px solid var(--line)!important;
  box-shadow:none!important;
}

/* Das vorhandene Textbranding bleibt; es wird kein Bildlogo in den Shop übernommen. */
#shop .gateLogo,
#shop img.peptiddirektLogo,
#shop .brandMark{
  display:none!important;
}

@media(max-width:760px){
  .shopShell{
    width:calc(100% - 16px)!important;
    margin:8px auto 18px!important;
    padding:16px 12px 34px!important;
    border-radius:20px!important;
    box-shadow:0 18px 48px #00000010!important;
  }

  .shopShell .topbar{
    margin-left:-12px!important;
    margin-right:-12px!important;
    padding-left:12px!important;
    padding-right:12px!important;
    background:rgba(255,255,255,.98)!important;
    border-radius:19px 19px 0 0!important;
  }

  /* Warenkorb-Button behält mobil bewusst seine dunkle Hervorhebung */
  .shopShell .cartTopButton{
    background:var(--ink)!important;
    border-color:var(--ink)!important;
    color:#fff!important;
  }
}

@media(max-width:380px){
  .shopShell{
    width:calc(100% - 10px)!important;
    margin:5px auto 14px!important;
    padding-left:9px!important;
    padding-right:9px!important;
    border-radius:18px!important;
  }

  .shopShell .topbar{
    margin-left:-9px!important;
    margin-right:-9px!important;
    padding-left:9px!important;
    padding-right:9px!important;
    border-radius:17px 17px 0 0!important;
  }
}


/* V4.10 – Produktpreise harmonischer und klarer hierarchisieren */
.productVariant .variantPrice{
  display:block!important;
}

.priceOverview{
  display:grid;
  gap:8px;
  min-width:0;
}

.priceOverview .activePriceDeal{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:5px 8px;
}

.priceOverview .newPrice{
  font-size:20px!important;
  line-height:1.08!important;
  font-weight:700!important;
  letter-spacing:-.02em;
  color:var(--ink)!important;
}

.priceOverview .oldPrice{
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:600!important;
  color:#a84740!important;
  text-decoration-thickness:1.5px!important;
}

.priceOverview .discountBadge{
  min-height:auto!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  background:#edf8ef!important;
  color:#217a38!important;
  font-size:10px!important;
  line-height:1.25!important;
  font-weight:700!important;
}

.priceMetaLine{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px 8px;
  min-width:0;
}

.priceMetaLine .piecePrice,
.priceMetaLine .priceSaving{
  display:inline-flex!important;
  align-items:center;
  min-height:25px;
  margin:0!important;
  padding:4px 8px!important;
  border-radius:8px!important;
  font-size:11px!important;
  line-height:1.3!important;
  font-weight:600!important;
  white-space:nowrap;
}

.priceMetaLine .piecePrice{
  background:var(--soft)!important;
  color:var(--muted)!important;
}

.priceMetaLine .priceSaving{
  background:#f3faf4!important;
  color:#217a38!important;
}

.priceMetaLine 
.priceMetaLine .piecePrice .newPiecePrice{
  color:inherit!important;
  font-weight:600!important;
}

@media(max-width:760px){
  .priceOverview{
    gap:7px;
  }

  .priceOverview .newPrice{
    font-size:20px!important;
  }

  .priceMetaLine{
    gap:6px;
  }

  .priceMetaLine .piecePrice,
  .priceMetaLine .priceSaving{
    min-height:27px;
    padding:5px 8px!important;
    font-size:11px!important;
  }
}

@media(max-width:380px){
  .priceMetaLine{
    align-items:flex-start;
  }

  .priceMetaLine .piecePrice,
  .priceMetaLine .priceSaving{
    white-space:normal;
  }
}




/* V4.14 – Rabatt und Ersparnis zusammen anzeigen; Stückpreis als Preis pro Vial */
.priceOverview .discountSummary{
  display:inline-flex;
  align-items:center;
  justify-self:start;
  flex-wrap:wrap;
  gap:4px;
  min-height:25px;
  padding:4px 8px;
  border-radius:8px;
  background:#f3faf4;
  color:#217a38;
  font-size:11px;
  line-height:1.3;
  font-weight:700;
}

.priceOverview .discountSummarySeparator{
  color:var(--muted);
  font-weight:600;
}

.priceMetaLine .piecePrice{
  min-height:25px!important;
}

@media(max-width:760px){
  .priceOverview .discountSummary{
    min-height:27px;
    padding:5px 8px;
    font-size:11px;
  }
}


/* V4.15 – Rabatt/Ersparnis und Preis pro Vial typografisch vereinheitlichen */
.priceOverview .discountSummary,
.priceMetaLine .piecePrice,
.priceMetaLine .piecePrice .newPiecePrice{
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:11px!important;
  line-height:1.3!important;
  font-weight:600!important;
  letter-spacing:0!important;
}

.priceOverview .discountSummary{
  gap:0!important;
}

.priceOverview .discountSummarySeparator{
  margin:0 2px!important;
  font:inherit!important;
  line-height:inherit!important;
  font-weight:600!important;
}

.priceMetaLine .piecePrice .newPiecePrice{
  color:inherit!important;
}

@media(max-width:760px){
  .priceOverview .discountSummary,
  .priceMetaLine .piecePrice,
  .priceMetaLine .piecePrice .newPiecePrice{
    font-size:11px!important;
    line-height:1.3!important;
    font-weight:600!important;
  }
}


/* V4.16 – Vorteilszeile: Ersparnis zuerst, aktiven Rabatt in Klammern */
.priceOverview .discountSummary .discountActiveNote{
  font:inherit!important;
  line-height:inherit!important;
  font-weight:inherit!important;
  color:inherit!important;
}


/* V4.17 – Ersparnis und aktiven Rabatt als zwei separate Anzeigen nebeneinander */
.priceOverview .discountSummaryRow{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  min-width:0;
}

.priceOverview .savingBadge,
.priceOverview .activeDiscountBadge{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 8px;
  border-radius:8px;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:11px!important;
  line-height:1.3!important;
  font-weight:600!important;
  letter-spacing:0!important;
  white-space:nowrap;
}

.priceOverview .savingBadge{
  background:#f3faf4;
  color:#217a38;
}

.priceOverview .activeDiscountBadge{
  background:#edf8ef;
  color:#217a38;
}

@media(max-width:760px){
  .priceOverview .discountSummaryRow{
    gap:6px;
  }

  .priceOverview .savingBadge,
  .priceOverview .activeDiscountBadge{
    min-height:27px;
    padding:5px 8px;
    font-size:11px!important;
    line-height:1.3!important;
    font-weight:600!important;
  }
}

@media(max-width:380px){
  .priceOverview .savingBadge,
  .priceOverview .activeDiscountBadge{
    white-space:normal;
  }
}


/* V4.18 – Preis pro Vial als hellblaues Badge */
.priceMetaLine .piecePrice{
  background:#eef7ff!important;
  color:#2f648c!important;
  border:1px solid #d5e8f7!important;
  box-shadow:none!important;
}

.priceMetaLine .piecePrice .newPiecePrice{
  color:#2f648c!important;
  font-weight:600!important;
}


/* V4.19 – Ersparnis und aktiver Rabatt im gleichen Badge-Design wie Vial-Preis, nur grün */
.priceOverview .savingBadge,
.priceOverview .activeDiscountBadge{
  background:#f1fbf3!important;
  color:#2f7d40!important;
  border:1px solid #cfe8d4!important;
  box-shadow:none!important;
}

.priceOverview .savingBadge,
.priceOverview .activeDiscountBadge{
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:11px!important;
  line-height:1.3!important;
  font-weight:600!important;
  min-height:25px!important;
  padding:4px 8px!important;
  border-radius:8px!important;
}

@media(max-width:760px){
  .priceOverview .savingBadge,
  .priceOverview .activeDiscountBadge{
    min-height:27px!important;
    padding:5px 8px!important;
    font-size:11px!important;
  }
}


/* V4.25 – COA / Analysezertifikate */
.coaSection{
  margin:22px 0 18px;
  padding:18px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow:0 8px 24px rgba(15,23,42,.06);
}

.coaHeading{
  margin-bottom:0!important;
}

.coaHeading .eyebrow{
  margin:0 0 4px!important;
}

.coaIntro{
  margin:9px 0 14px;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.coaList{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.coaCard{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:11px;
  min-width:0;
  padding:12px 13px;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fafaf8;
  color:var(--ink);
  text-decoration:none;
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}

.coaCard:hover{
  transform:translateY(-1px);
  border-color:#c9c8c2;
  box-shadow:0 8px 20px rgba(15,23,42,.06);
}

.coaPdfBadge{
  display:inline-grid;
  place-items:center;
  width:38px;
  height:38px;
  border:1px solid #d5e8f7;
  border-radius:10px;
  background:#eef7ff;
  color:#2f648c;
  font-size:10px;
  line-height:1;
  font-weight:700;
  letter-spacing:.04em;
}

.coaCardText{
  display:grid;
  gap:3px;
  min-width:0;
}

.coaCardText strong{
  overflow:hidden;
  color:var(--ink);
  font-size:13px;
  line-height:1.3;
  font-weight:700;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.coaCardText small{
  color:var(--muted);
  font-size:11px;
  line-height:1.3;
}

.coaOpenIcon{
  color:var(--muted);
  font-size:15px;
}

.coaEmpty{
  padding:13px 14px;
  border:1px dashed var(--line);
  border-radius:12px;
  color:var(--muted);
  background:#fafaf8;
  font-size:12px;
  line-height:1.45;
}

@media(max-width:760px){
  .coaSection{
    margin:18px 0 16px;
    padding:15px 14px;
  }

  .coaIntro{
    font-size:12px;
  }

  .coaList{
    grid-template-columns:1fr;
    gap:8px;
  }

  .coaCard{
    padding:11px 12px;
  }

  .coaCardText strong{
    font-size:12px;
  }
}


/* V4.26 – aktiver Rabatt in Orange/Amber */
.priceOverview .activeDiscountBadge{
  background:#fff4e5!important;
  color:#b76400!important;
  border:1px solid #f2d2a6!important;
  box-shadow:none!important;
}


/* V4.32 – Laborkennungen im Adminbereich anlegen */
.adminAccessManager{
  margin:0 0 24px;
  padding:18px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:0 8px 24px rgba(15,23,42,.05);
}
.adminAccessHead{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}
.adminAccessHead h2{margin:5px 0 0}
.adminAccessHead .muted{margin:7px 0 0;font-size:12px;line-height:1.5}
.adminAccessCount{
  flex:0 0 auto;
  padding:6px 9px;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--soft);
  color:var(--muted);
  font-size:11px;
  font-weight:700;
}
.adminSuccess{
  margin:0 0 12px;
  padding:11px 13px;
  border:1px solid #cfe8d4;
  border-radius:10px;
  background:#f1fbf3;
  color:#2f7d40;
  font-size:12px;
  font-weight:700;
}
.adminAccessForm{
  display:grid;
  grid-template-columns:1.05fr 1.5fr .8fr .9fr;
  gap:10px;
  align-items:end;
  padding:14px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fafaf8;
}
.adminAccessField{
  display:grid;
  gap:6px;
  min-width:0;
}
.adminAccessField label,
.adminAccessActive{
  color:var(--ink);
  font-size:11px;
  line-height:1.3;
  font-weight:700;
}
.adminAccessField input{
  width:100%;
  min-width:0;
  min-height:42px;
  padding:9px 10px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  color:var(--ink);
  font:inherit;
  font-size:13px;
}
.adminAccessField small{
  color:var(--muted);
  font-size:9px;
  line-height:1.3;
}
.adminAccessActive{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:42px;
}
.adminAccessActive input{
  width:18px;
  height:18px;
  margin:0;
}
.adminAccessSubmit{
  min-height:42px;
  white-space:nowrap;
}
.adminAccessTableWrap{
  margin-top:14px;
  overflow:auto;
  border:1px solid var(--line);
  border-radius:13px;
}
.adminAccessTable{
  width:100%;
  min-width:680px;
  border-collapse:collapse;
}
.adminAccessTable th,
.adminAccessTable td{
  padding:10px 12px;
  border-bottom:1px solid var(--soft);
  text-align:left;
  font-size:12px;
}
.adminAccessTable th{
  background:#f8f7f3;
  color:var(--muted);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.adminAccessTable tbody tr:last-child td{border-bottom:0}
.adminAccessStatus{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 8px;
  border-radius:999px;
  font-size:10px;
  font-weight:700;
}
.adminAccessStatus.isActive{
  border:1px solid #cfe8d4;
  background:#f1fbf3;
  color:#2f7d40;
}
.adminAccessStatus.isInactive{
  border:1px solid var(--line);
  background:var(--soft);
  color:var(--muted);
}
.adminAccessWarnings{margin-top:12px}

@media(max-width:900px){
  .adminAccessForm{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .adminAccessManager{padding:14px;margin-bottom:18px}
  .adminAccessHead{flex-direction:column;gap:10px}
  .adminAccessForm{grid-template-columns:1fr;padding:12px}
  .adminAccessField input{font-size:16px;min-height:48px}
  .adminAccessActive{min-height:44px}
  .adminAccessSubmit{width:100%;min-height:48px}
  .adminAccessTableWrap{-webkit-overflow-scrolling:touch}
}


/* V4.33 – bestehende Laborkennungen bearbeiten / aktivieren / deaktivieren */
.adminAccessManageHead{
  margin:18px 0 10px;
}
.adminAccessManageHead h3{
  margin:0;
  font-size:15px;
  line-height:1.3;
}
.adminAccessManageHead .muted{
  margin:5px 0 0;
  font-size:11px;
  line-height:1.45;
}

.adminAccessEditList{
  display:grid;
  gap:8px;
}

.adminAccessEditCard{
  border:1px solid var(--line);
  border-radius:13px;
  background:#fff;
  overflow:hidden;
}

.adminAccessEditCard>summary{
  display:grid;
  grid-template-columns:120px minmax(140px,1fr) minmax(220px,1.2fr) auto 20px;
  align-items:center;
  gap:10px;
  padding:12px 13px;
  cursor:pointer;
  list-style:none;
  user-select:none;
}

.adminAccessEditCard>summary::-webkit-details-marker{
  display:none;
}

.adminAccessEditCard[open]>summary{
  border-bottom:1px solid var(--line);
  background:#fafaf8;
}

.adminAccessSummaryCode{
  font-size:12px;
  font-weight:700;
  color:var(--ink);
}

.adminAccessSummaryPartner{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
  color:var(--ink);
}

.adminAccessSummaryMeta{
  font-size:11px;
  color:var(--muted);
}

.adminAccessChevron{
  display:inline-grid;
  place-items:center;
  font-size:16px;
  color:var(--muted);
  transition:transform .15s ease;
}

.adminAccessEditCard[open] .adminAccessChevron{
  transform:rotate(180deg);
}

.adminAccessEditForm{
  display:grid;
  grid-template-columns:1.05fr 1.5fr .8fr .9fr;
  gap:10px;
  align-items:end;
  padding:13px;
  background:#fff;
}

.adminAccessEditActive{
  min-height:42px;
}

.adminAccessSave{
  min-height:42px;
  white-space:nowrap;
}

@media(max-width:1000px){
  .adminAccessEditCard>summary{
    grid-template-columns:110px minmax(120px,1fr) auto 20px;
  }
  .adminAccessSummaryMeta{
    grid-column:2/4;
    grid-row:2;
  }
  .adminAccessEditForm{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .adminAccessEditCard>summary{
    grid-template-columns:1fr auto 20px;
    gap:5px 8px;
    padding:11px 12px;
  }
  .adminAccessSummaryCode{
    font-size:13px;
  }
  .adminAccessSummaryPartner{
    grid-column:1/2;
    grid-row:2;
    white-space:normal;
  }
  .adminAccessSummaryMeta{
    grid-column:1/4;
    grid-row:3;
  }
  .adminAccessStatus{
    grid-column:2/3;
    grid-row:1;
  }
  .adminAccessChevron{
    grid-column:3/4;
    grid-row:1;
  }
  .adminAccessEditForm{
    grid-template-columns:1fr;
    padding:12px;
  }
  .adminAccessEditForm .adminAccessField input{
    min-height:48px;
    font-size:16px;
  }
  .adminAccessSave{
    width:100%;
    min-height:48px;
  }
}


/* V4.34 – Laborkennungs-Nutzung und Live-Warenkörbe */
.adminUsageStats,
.adminLiveSection{
  margin:0 0 24px;
  padding:18px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:0 8px 24px rgba(15,23,42,.05);
}
.adminUsageCards{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.adminUsageEvents{
  margin-top:14px;
  border-top:1px solid var(--line);
  padding-top:12px;
}
.adminUsageEvents>summary{
  cursor:pointer;
  color:var(--ink);
  font-size:12px;
  font-weight:700;
}
.adminUsageEvents .adminStatsTableWrap{margin-top:10px}
.adminUsageTable td{vertical-align:middle}

.adminLiveHead{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:14px;
}
.adminLiveHead h2{margin:5px 0 0}
.adminLiveHead .muted{margin:7px 0 0;font-size:12px;line-height:1.5;max-width:920px}
.adminLiveControls{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:7px;
  color:var(--muted);
  font-size:10px;
  white-space:nowrap;
}
.adminLiveDot{
  width:9px;
  height:9px;
  border-radius:999px;
  background:#36a852;
  box-shadow:0 0 0 4px #36a85218;
}
.adminLiveList{
  display:grid;
  gap:10px;
}
.adminLiveEmpty{
  padding:16px;
  border:1px dashed var(--line);
  border-radius:12px;
  background:#fafaf8;
  color:var(--muted);
  font-size:12px;
}
.adminLiveCard{
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden;
  background:#fff;
}
.adminLiveCardHead{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:11px 13px;
  background:#fafaf8;
  border-bottom:1px solid var(--line);
}
.adminLiveCardHead>div{
  display:flex;
  align-items:baseline;
  gap:8px;
  min-width:0;
}
.adminLiveCardHead strong{
  font-size:13px;
}
.adminLiveCardHead span{
  color:var(--muted);
  font-size:11px;
}
.adminLiveCardHead code{
  flex:0 0 auto;
  font-size:10px;
  color:var(--muted);
}
.adminLiveMeta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px 14px;
  padding:10px 13px;
  border-bottom:1px solid var(--soft);
  color:var(--muted);
  font-size:10px;
}
.adminLiveMeta strong{
  margin-left:auto;
  color:var(--ink);
  font-size:13px;
}
.adminLiveCart{
  display:grid;
  gap:6px;
  padding:11px 13px;
  font-size:11px;
}
.adminLiveCart>div{
  line-height:1.45;
}
.adminLiveCart small{
  color:var(--muted);
}

@media(max-width:900px){
  .adminUsageCards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .adminLiveHead{
    flex-direction:column;
  }
  .adminLiveControls{
    justify-content:flex-start;
  }
}
@media(max-width:760px){
  .adminUsageStats,
  .adminLiveSection{
    padding:14px;
    margin-bottom:18px;
  }
  .adminUsageCards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .adminLiveCardHead{
    align-items:flex-start;
    flex-direction:column;
  }
  .adminLiveCardHead>div{
    flex-direction:column;
    gap:2px;
  }
  .adminLiveMeta{
    align-items:flex-start;
    flex-direction:column;
    gap:5px;
  }
  .adminLiveMeta strong{
    margin-left:0;
  }
}


/* V4.35 – Laborzugang Überschrift */
.gateCard h1{
  color:#6b6b6b!important;
}


/* V4.37 – strukturierte Administration */
.adminMainHeader{
  margin-bottom:14px!important;
}
.adminMainHeader h1{
  margin:6px 0 0;
  font-size:40px!important;
  line-height:1.05;
  letter-spacing:-.03em;
}
.adminMainHeader h1 span{
  color:var(--muted);
}
.adminMainHeader .muted{
  margin:8px 0 0;
  max-width:820px;
  font-size:12px;
  line-height:1.5;
}
.adminHeaderActions{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}
.adminHeaderActions form{margin:0}
.adminHeaderActions a{text-decoration:none}

.adminSectionNav{
  position:sticky;
  top:8px;
  z-index:20;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  margin:0 0 20px;
  padding:8px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.94);
  box-shadow:0 8px 24px rgba(15,23,42,.06);
  backdrop-filter:blur(10px);
}
.adminSectionNav a{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 10px;
  border-radius:9px;
  color:var(--muted);
  text-decoration:none;
  font-size:11px;
  font-weight:700;
}
.adminSectionNav a:hover,
.adminSectionNav a:focus-visible{
  background:var(--soft);
  color:var(--ink);
}

.adminDashboard,
.adminInquirySection,
.adminSystemSection{
  margin:0 0 24px;
  padding:18px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:0 8px 24px rgba(15,23,42,.05);
  scroll-margin-top:82px;
}
#laborkennungen,
#nutzung,
#live-uebersicht,
#anfrage-statistik{
  scroll-margin-top:82px;
}

.adminDashboardHead,
.adminInquiryHead,
.adminSystemHead{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:14px;
}
.adminDashboardHead h2,
.adminInquiryHead h2,
.adminSystemHead h2{
  margin:5px 0 0;
}
.adminDashboardHead .muted,
.adminInquiryHead .muted,
.adminSystemHead .muted{
  margin:6px 0 0;
  font-size:12px;
  line-height:1.5;
}

.adminVersionBadge,
.adminSystemOverall{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 9px;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--soft);
  color:var(--muted);
  font-size:10px;
  font-weight:700;
}
.adminSystemOverall.isOk{
  border-color:#cfe8d4;
  background:#f1fbf3;
  color:#2f7d40;
}
.adminSystemOverall.hasIssue{
  border-color:#f0d0c9;
  background:#fff5f2;
  color:#a84740;
}

.adminDashboardCards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.adminDashboardCard{
  display:grid;
  gap:5px;
  min-height:112px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fafaf8;
  color:var(--ink);
  text-decoration:none;
}
a.adminDashboardCard:hover{
  border-color:#c9c8c2;
  box-shadow:0 8px 18px rgba(15,23,42,.05);
}
.adminDashboardCard span{
  color:var(--muted);
  font-size:10px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.adminDashboardCard strong{
  align-self:end;
  font-size:24px;
  line-height:1.05;
  font-weight:700;
  letter-spacing:-.02em;
}
.adminDashboardCardStatic strong{
  font-size:15px;
  line-height:1.25;
}
.adminDashboardCard small{
  color:var(--muted);
  font-size:10px;
  line-height:1.4;
}
.adminQuickActions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:12px;
}
.adminQuickActions a{
  text-decoration:none;
}

.adminInquiryFilter{
  display:grid!important;
  grid-template-columns:minmax(280px,1.8fr) minmax(190px,.9fr) auto auto;
  align-items:end;
  gap:8px!important;
  margin:0 0 12px!important;
}
.adminSearchField,
.adminFilterField{
  display:grid;
  gap:5px;
  min-width:0;
}
.adminSearchField label,
.adminFilterField label{
  color:var(--muted);
  font-size:10px;
  font-weight:700;
}
.adminSearchField input,
.adminFilterField select{
  width:100%;
  min-width:0;
  min-height:42px;
  padding:9px 10px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  color:var(--ink);
  font:inherit;
  font-size:12px;
}
.adminInquiryHead>a{
  flex:0 0 auto;
  text-decoration:none;
}

.adminSystemGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.adminSystemCard{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fafaf8;
}
.adminSystemIndicator{
  width:10px;
  height:10px;
  border-radius:999px;
  background:#a84740;
}
.adminSystemCard.isOk .adminSystemIndicator{
  background:#36a852;
}
.adminSystemCard>div{
  display:grid;
  gap:2px;
  min-width:0;
}
.adminSystemCard strong{
  font-size:11px;
}
.adminSystemCard small{
  color:var(--muted);
  font-size:9px;
  line-height:1.35;
}
.adminSystemCard b{
  color:#a84740;
  font-size:10px;
}
.adminSystemCard.isOk b{
  color:#2f7d40;
}
.adminSystemInfo{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-top:12px;
}
.adminSystemInfo>div{
  display:grid;
  gap:4px;
  min-width:0;
  padding:10px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
}
.adminSystemInfo span{
  color:var(--muted);
  font-size:9px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.adminSystemInfo strong{
  min-width:0;
  overflow-wrap:anywhere;
  font-size:10px;
  line-height:1.4;
}

@media(max-width:980px){
  .adminDashboardCards{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .adminInquiryFilter{
    grid-template-columns:1fr 1fr!important;
  }
  .adminInquiryFilter>button,
  .adminInquiryFilter>a{
    width:100%;
    justify-content:center;
  }
  .adminSystemInfo{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .adminMainHeader{
    flex-direction:column;
  }
  .adminMainHeader h1{
    font-size:31px!important;
  }
  .adminHeaderActions{
    width:100%;
  }
  .adminHeaderActions .ghost{
    flex:1;
    justify-content:center;
  }
  .adminSectionNav{
    top:4px;
    overflow-x:auto;
    flex-wrap:nowrap;
    padding:6px;
    border-radius:12px;
    -webkit-overflow-scrolling:touch;
  }
  .adminSectionNav a{
    flex:0 0 auto;
  }
  .adminDashboard,
  .adminInquirySection,
  .adminSystemSection{
    padding:14px;
    margin-bottom:18px;
  }
  .adminDashboardHead,
  .adminInquiryHead,
  .adminSystemHead{
    flex-direction:column;
    gap:9px;
  }
  .adminDashboardCards{
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .adminDashboardCard{
    min-height:100px;
    padding:12px;
  }
  .adminDashboardCard strong{
    font-size:20px;
  }
  .adminDashboardCardStatic strong{
    font-size:13px;
  }
  .adminInquiryFilter{
    grid-template-columns:1fr!important;
  }
  .adminSearchField input,
  .adminFilterField select{
    min-height:48px;
    font-size:16px;
  }
  .adminSystemGrid,
  .adminSystemInfo{
    grid-template-columns:1fr;
  }
}

@media(max-width:420px){
  .adminDashboardCards{
    grid-template-columns:1fr;
  }
}


/* V4.38 – WhatsApp-Support-Statistik */
.adminWhatsappStats{
  margin:0 0 24px;
  padding:18px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:0 8px 24px rgba(15,23,42,.05);
  scroll-margin-top:82px;
}
.adminWhatsappCards{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.adminWhatsappEvents{
  margin-top:14px;
}
.adminEmailStatus{
  display:inline-flex;
  align-items:center;
  min-height:23px;
  padding:3px 7px;
  border-radius:999px;
  font-size:9px;
  font-weight:700;
  white-space:nowrap;
}
.adminEmailStatus.isSent{
  border:1px solid #cfe8d4;
  background:#f1fbf3;
  color:#2f7d40;
}
.adminEmailStatus.isFailed{
  border:1px solid #f0d0c9;
  background:#fff5f2;
  color:#a84740;
}
.adminEmailStatus.isLimited{
  border:1px solid #f2d2a6;
  background:#fff4e5;
  color:#b76400;
}
@media(max-width:900px){
  .adminWhatsappCards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .adminWhatsappStats{
    padding:14px;
    margin-bottom:18px;
  }
  .adminWhatsappCards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:420px){
  .adminWhatsappCards{
    grid-template-columns:1fr!important;
  }
}

/* V4.41 – Transparenzhinweis zur Kundenprüfung */
.inquiryRoleNote{
  margin:2px 0 8px;
  padding:9px 10px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fafaf8;
  color:var(--muted);
  font-size:10px;
  line-height:1.45;
}


/* V4.42 – einheitliches Design für alle Legal-Seiten */
.legalPageBody{
  min-height:100svh;
  display:flex;
  flex-direction:column;
  background:#f4f3ef;
  color:#252525;
  font-family:Arial,Helvetica,sans-serif;
  font-size:15px;
  line-height:1.62;
}

.legalPageBody .siteFooter{
  margin-top:auto;
}

.legalShell{
  width:min(980px,calc(100% - 36px))!important;
  margin:0 auto!important;
  padding:24px 0 56px!important;
  flex:1;
}

.legalTop{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  min-height:58px;
  padding:0 2px 16px!important;
  border-bottom:1px solid var(--line)!important;
}

.legalTopBrand{
  display:grid;
  gap:3px;
}

.legalBrand{
  color:var(--ink)!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:22px!important;
  line-height:1.1!important;
  font-weight:700!important;
  letter-spacing:-.035em!important;
  text-decoration:none!important;
}

.legalAreaLabel{
  color:var(--muted);
  font-size:10px;
  line-height:1.3;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.legalBack{
  flex:0 0 auto;
  min-height:38px;
  padding:8px 13px!important;
  border-radius:999px!important;
  color:var(--ink)!important;
  font-size:11px!important;
  line-height:1.2;
  text-decoration:none!important;
  white-space:nowrap;
}

.legalDocNav{
  display:flex;
  align-items:center;
  gap:6px;
  margin:14px 0 0;
  padding:7px;
  overflow-x:auto;
  border:1px solid var(--line);
  border-radius:13px;
  background:rgba(255,255,255,.72);
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.legalDocNav::-webkit-scrollbar{display:none}

.legalDocNav a{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 10px;
  border-radius:8px;
  color:var(--muted);
  font-size:11px;
  line-height:1.2;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
}
.legalDocNav a:hover,
.legalDocNav a:focus-visible{
  background:var(--soft);
  color:var(--ink);
}
.legalDocNav a.isActive{
  background:var(--ink);
  color:#fff;
}

.legalDocumentMeta{
  display:flex;
  align-items:center;
  gap:6px;
  margin:18px 4px 0;
  color:var(--muted);
  font-size:10px;
  line-height:1.3;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.legalDocumentMeta strong{
  color:var(--ink);
  font-weight:700;
}

.legalArticle{
  margin-top:9px!important;
  padding:38px 42px 40px!important;
  border:1px solid var(--line)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 10px 32px rgba(15,23,42,.045)!important;
  color:#30302e;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:14px!important;
  line-height:1.65!important;
  overflow-wrap:anywhere;
}

.legalArticle>h1:first-child{
  max-width:760px;
  margin:0 0 7px!important;
  color:var(--ink);
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:34px!important;
  line-height:1.08!important;
  font-weight:700!important;
  letter-spacing:-.035em!important;
}

.legalArticle>h1:first-child+p{
  margin:0 0 24px!important;
  color:var(--muted);
  font-size:13px!important;
  line-height:1.5!important;
}

.legalArticle h2{
  margin:32px 0 10px!important;
  padding-top:4px;
  color:var(--ink);
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:19px!important;
  line-height:1.3!important;
  font-weight:700!important;
  letter-spacing:-.018em!important;
}

.legalArticle h3{
  margin:23px 0 8px!important;
  color:var(--ink);
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:700!important;
  letter-spacing:-.01em!important;
}

.legalArticle p{
  margin:8px 0!important;
  font-size:14px!important;
  line-height:1.65!important;
}

.legalArticle ul,
.legalArticle ol{
  margin:9px 0 17px!important;
  padding-left:22px!important;
}

.legalArticle li{
  margin:5px 0!important;
  padding-left:2px;
  font-size:14px!important;
  line-height:1.58!important;
}

.legalArticle strong{
  color:var(--ink);
  font-weight:700!important;
}

.legalArticle a{
  color:#30302e!important;
  text-decoration:underline!important;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

.legalArticle a:hover{
  color:#000!important;
}

.legalArticle .legalHighlight{
  margin:18px 0 22px!important;
  padding:15px 17px!important;
  border:1px solid #deddd7!important;
  border-left:3px solid #8d8c87!important;
  border-radius:11px!important;
  background:#f8f7f3!important;
  box-shadow:none!important;
}

.legalArticle .legalHighlight p{
  margin:5px 0!important;
  font-size:13px!important;
  line-height:1.58!important;
}

.legalArticle .legalHighlight p:first-child{
  margin-top:0!important;
}

.legalArticle .legalHighlight p:last-child{
  margin-bottom:0!important;
}

.legalArticle .legalHighlight p:first-child strong{
  font-size:13px;
}

.legalTableWrap{
  width:100%;
  margin:15px 0 24px;
  overflow-x:auto;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  -webkit-overflow-scrolling:touch;
}

.legalArticle table{
  width:100%!important;
  min-width:680px;
  margin:0!important;
  border:0!important;
  border-collapse:collapse!important;
  border-spacing:0!important;
  border-radius:0!important;
  background:#fff!important;
  overflow:visible!important;
}

.legalArticle th,
.legalArticle td{
  padding:11px 12px!important;
  border-bottom:1px solid var(--line);
  color:#30302e;
  font-size:11px!important;
  line-height:1.48!important;
  font-weight:400!important;
  text-align:left!important;
  vertical-align:top!important;
}

.legalArticle th{
  background:#f6f5f1;
  color:var(--muted);
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.035em;
}

.legalArticle tbody tr:last-child td{
  border-bottom:0;
}

.legalArticle code{
  display:inline;
  padding:2px 5px;
  border:1px solid #e4e3de;
  border-radius:5px;
  background:#f7f6f2;
  color:#4f4f4b;
  font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;
  font-size:.88em;
}

.legalArticle .legalVersion{
  margin:34px 0 0!important;
  padding:14px 0 0!important;
  border-top:1px solid var(--line)!important;
  color:var(--muted)!important;
  font-size:10px!important;
  line-height:1.45!important;
}

.legalArticle .legalVersion strong{
  color:var(--muted)!important;
  font-size:10px!important;
  font-weight:600!important;
}

.legalArticle>*:last-child{
  margin-bottom:0!important;
}

@media(max-width:760px){
  .legalShell{
    width:min(100% - 16px,980px)!important;
    padding:8px 0 28px!important;
  }

  .legalTop{
    min-height:54px;
    padding:8px 4px 12px!important;
  }

  .legalBrand{
    font-size:19px!important;
  }

  .legalAreaLabel{
    font-size:9px;
  }

  .legalBack{
    min-height:36px;
    padding:7px 10px!important;
    font-size:10px!important;
  }

  .legalDocNav{
    margin-top:8px;
    padding:5px;
    gap:4px;
    border-radius:11px;
  }

  .legalDocNav a{
    min-height:32px;
    padding:6px 9px;
    font-size:10px;
  }

  .legalDocumentMeta{
    margin:13px 4px 0;
    font-size:9px;
  }

  .legalArticle{
    margin-top:7px!important;
    padding:24px 17px 26px!important;
    border-radius:14px!important;
    font-size:13px!important;
    line-height:1.62!important;
  }

  .legalArticle>h1:first-child{
    margin-bottom:7px!important;
    font-size:27px!important;
    line-height:1.1!important;
  }

  .legalArticle>h1:first-child+p{
    margin-bottom:19px!important;
    font-size:12px!important;
  }

  .legalArticle h2{
    margin-top:27px!important;
    font-size:17px!important;
  }

  .legalArticle h3{
    margin-top:20px!important;
    font-size:14px!important;
  }

  .legalArticle p{
    font-size:13px!important;
    line-height:1.62!important;
  }

  .legalArticle li{
    font-size:13px!important;
    line-height:1.55!important;
  }

  .legalArticle ul,
  .legalArticle ol{
    padding-left:19px!important;
  }

  .legalArticle .legalHighlight{
    margin:15px 0 19px!important;
    padding:13px 14px!important;
    border-radius:10px!important;
  }

  .legalArticle .legalHighlight p{
    font-size:12px!important;
  }

  /* Tabellen bleiben echte Tabellen und werden horizontal scrollbar,
     damit alle Legal-Seiten dieselbe Struktur behalten. */
  .legalArticle table,
  .legalArticle thead,
  .legalArticle tbody,
  .legalArticle tr,
  .legalArticle th,
  .legalArticle td{
    display:table-cell;
    width:auto;
  }
  .legalArticle table{display:table}
  .legalArticle thead{display:table-header-group}
  .legalArticle tbody{display:table-row-group}
  .legalArticle tr{display:table-row}

  .legalArticle th,
  .legalArticle td{
    padding:10px!important;
    font-size:10px!important;
  }

  .legalArticle .legalVersion{
    margin-top:29px!important;
    font-size:9px!important;
  }
}


/* V4.45 – unabhängige /pay Informationsseite */
.payInfoBody{
  min-height:100svh;
  margin:0;
  display:grid;
  place-items:center;
  padding:24px;
  background:var(--bg);
  color:var(--ink);
  font-family:Arial,Helvetica,sans-serif;
}
.payInfoShell{
  width:min(620px,100%);
}
.payInfoCard{
  padding:32px;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 18px 54px rgba(15,23,42,.06);
}
.payInfoCard h1{
  margin:8px 0 14px;
  font-size:clamp(30px,6vw,44px);
  line-height:1.04;
  letter-spacing:-.04em;
}
.payInfoCard>p:not(.eyebrow){
  margin:10px 0;
  color:var(--muted);
  font-size:14px;
  line-height:1.6;
}
.payInfoNotice{
  display:grid;
  gap:5px;
  margin:20px 0;
  padding:14px 15px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#f8f7f3;
}
.payInfoNotice strong{
  font-size:13px;
}
.payInfoNotice span{
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
}
.payInfoActions{
  display:grid;
  gap:8px;
  margin-top:22px;
}
.payInfoActions a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  text-align:center;
  text-decoration:none;
}
@media(max-width:560px){
  .payInfoBody{padding:12px}
  .payInfoCard{padding:23px 17px;border-radius:16px}
  .payInfoCard h1{font-size:32px}
}


/* V4.46 – Zahlungsabwicklungs-Auswahl auf /pay */
.payChoiceGrid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:22px 0 14px;
}
.payChoice{
  display:grid;
  gap:4px;
  min-height:78px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fff;
  color:var(--ink);
  text-align:left;
}
.payChoice strong{
  font-size:14px;
}
.payChoice span{
  color:var(--muted);
  font-size:11px;
  line-height:1.45;
}
.payChoice.isActive{
  border-color:var(--ink);
  box-shadow:0 0 0 1px var(--ink) inset;
}
.payChoicePanel{
  margin-top:12px;
}
.payChoicePanel h2{
  margin:0 0 8px;
  font-size:18px;
}
.payTransferReference{
  display:grid;
  gap:4px;
  margin:10px 0 0;
  padding:12px 14px;
  border:1px dashed var(--line);
  border-radius:11px;
  background:#fff;
}
.payTransferReference span{
  color:var(--muted);
  font-size:11px;
}
.payTransferReference strong{
  font-size:13px;
}
.payInfoNotice--neutral{
  margin-top:18px;
}
@media(max-width:560px){
  .payChoiceGrid{grid-template-columns:1fr}
}


/* V4.48 – abgestimmte Zahlungsinformationen auf /pay */
.payConfirmedSummary{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin:20px 0 12px;
}
.payConfirmedSummary>div{
  display:grid;
  gap:4px;
  padding:12px 13px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#faf9f6;
}
.payConfirmedSummary span{
  color:var(--muted);
  font-size:10px;
  font-weight:700;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.payConfirmedSummary strong{
  font-size:13px;
  overflow-wrap:anywhere;
}
.payConfirmedSummary .payConfirmedAmount{
  grid-column:1/-1;
  background:#fff;
}
.payConfirmedSummary .payConfirmedAmount strong{
  font-size:24px;
  line-height:1.1;
}
.payChoiceTitle{
  margin:22px 0 8px!important;
  font-size:16px!important;
}
@media(max-width:560px){
  .payConfirmedSummary{grid-template-columns:1fr}
  .payConfirmedSummary .payConfirmedAmount{grid-column:auto}
}


/* V4.49 – vollständiger Anfrage-/Auftragseditor */
.adminInquiryFilterExpanded{
  grid-template-columns:minmax(260px,1.5fr) minmax(170px,.8fr) minmax(190px,.9fr) auto auto!important;
}
.adminInquiryEditor{
  margin:14px 0 18px;
  padding:16px;
  border:1px solid #c9c8c2;
  border-radius:16px;
  background:#f8f7f3;
}
.adminEditorHead{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.adminEditorHead h3{
  margin:5px 0 0;
  font-size:24px;
  letter-spacing:-.025em;
}
.adminEditorHead .muted{margin:5px 0 0;font-size:11px}
.adminEditorHead>a{text-decoration:none}
.adminInquiryEditForm{display:grid;gap:12px}
.adminEditorGrid{
  display:grid;
  grid-template-columns:1.35fr .85fr;
  gap:10px;
}
.adminEditorPanel{
  min-width:0;
  margin:0;
  padding:13px;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fff;
}
.adminEditorPanel legend{
  padding:0 6px;
  color:var(--ink);
  font-size:11px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.adminCustomerGrid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}
.adminCustomerGrid label,
.adminEditorField,
.adminPricingFields label{
  display:grid;
  gap:5px;
}
.adminCustomerGrid label.wide,
.adminPricingFields label.wide{grid-column:1/-1}
.adminCustomerGrid label span,
.adminEditorField span,
.adminPricingFields label span{
  color:var(--muted);
  font-size:9px;
  font-weight:700;
  letter-spacing:.03em;
}
.adminCustomerGrid input,
.adminEditorField input,
.adminEditorField select,
.adminEditorField textarea,
.adminPricingFields input,
.adminPricingFields select,
.adminCartEditorToolbar select{
  width:100%;
  min-width:0;
  padding:9px 10px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fff;
  color:var(--ink);
  font:inherit;
  font-size:12px;
}
.adminEditorField textarea{resize:vertical;line-height:1.5}
.adminFillHelpers{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  margin-top:10px;
  padding-top:9px;
  border-top:1px solid var(--soft);
}
.adminFillHelpers>span{font-size:9px;font-weight:800;color:var(--muted);text-transform:uppercase}
.adminFillHelpers small{font-size:9px;color:var(--muted)}
.adminMiniButton{min-height:30px!important;padding:5px 8px!important;font-size:9px!important}
.adminCartEditor{overflow:hidden}
.adminCartEditorToolbar{
  display:grid;
  grid-template-columns:minmax(260px,1fr) auto auto;
  gap:7px;
  margin-bottom:10px;
}
.adminCartEditTableWrap{
  overflow:auto;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fff;
}
.adminCartEditTable{
  width:100%;
  min-width:910px;
  border-collapse:collapse;
}
.adminCartEditTable th,
.adminCartEditTable td{
  padding:8px;
  border-bottom:1px solid var(--soft);
  text-align:left;
  vertical-align:top;
}
.adminCartEditTable th{
  background:#f8f7f3;
  color:var(--muted);
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.adminCartEditTable tbody tr:last-child td{border-bottom:0}
.adminCartEditTable input{
  width:100%;
  min-width:72px;
  padding:8px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
  font:inherit;
  font-size:11px;
}
.adminCartEditTable td:nth-child(1){width:130px}
.adminCartEditTable td:nth-child(2){min-width:300px}
.adminCartEditTable td:nth-child(3){width:90px}
.adminCartEditTable td:nth-child(4){width:125px}
.adminCartEditTable td:nth-child(5){width:130px;white-space:nowrap}
.adminCartEditTable td:nth-child(6){width:100px}
.adminItemDescription{margin-top:5px;color:var(--muted)}
.adminLineTotal{display:block;padding:9px 2px;font-size:11px;font-weight:800}
.adminRemoveItem{padding:7px 8px!important;font-size:9px!important}
.adminEditorHint{margin:8px 0 0!important;font-size:9px!important}
.adminPricingGrid{grid-template-columns:1fr 1fr}
.adminPricingFields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.adminEditorTotals{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:7px;
}
.adminEditorTotals>div{
  display:grid;
  gap:4px;
  padding:10px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
}
.adminEditorTotals span{
  color:var(--muted);
  font-size:8px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.adminEditorTotals strong{font-size:13px}
.adminEditorGrandTotal{
  border-color:var(--ink)!important;
  background:var(--ink)!important;
  color:#fff;
}
.adminEditorGrandTotal span{color:#ffffffaa}
.adminEditorGrandTotal strong{font-size:18px}
.adminEditorActions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
}
.adminEditorActions button{min-height:40px}
.adminEditorActions .ghost{background:#fff}
.adminActionFeedback{color:var(--muted);font-size:10px}
.adminOrderStatus{
  display:inline-flex;
  align-items:center;
  margin-top:7px;
  padding:4px 7px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#f6f5f1;
  color:#555;
  font-size:9px;
  font-weight:800;
}
.adminOrderStatus.status-bezahlt,
.adminOrderStatus.status-abgeschlossen,
.adminOrderStatus.status-china_abgeschlossen{border-color:#b9dcc2;background:#f1fbf3;color:#246d36}
.adminOrderStatus.status-kontakt,
.adminOrderStatus.status-china_bearbeitung,
.adminOrderStatus.status-versendet{border-color:#c9d6ed;background:#f3f7fd;color:#365f9c}
.adminOrderStatus.status-zahlung_offen,
.adminOrderStatus.status-china_offen{border-color:#ead7ad;background:#fff9ea;color:#876323}
.adminOrderStatus.status-storniert{border-color:#edc9c4;background:#fff4f2;color:#9d3e37}
.adminAddress{margin-top:7px;color:var(--muted);font-size:10px;line-height:1.45}
.adminEditInquiryButton{
  display:inline-flex;
  min-height:34px;
  align-items:center;
  text-decoration:none;
  font-size:10px;
}
.adminInternalNote{
  display:grid;
  gap:3px;
  margin-top:8px;
  padding:7px 8px;
  border-radius:8px;
  background:var(--soft);
  color:var(--muted);
  font-size:9px;
  line-height:1.4;
  white-space:pre-wrap;
}
.adminInternalNote strong{color:var(--ink);font-size:8px;text-transform:uppercase;letter-spacing:.05em}

@media(max-width:1100px){
  .adminInquiryFilterExpanded{grid-template-columns:1fr 1fr!important}
  .adminEditorGrid{grid-template-columns:1fr}
  .adminEditorTotals{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .adminInquiryFilterExpanded{grid-template-columns:1fr!important}
  .adminInquiryEditor{padding:12px;margin-left:-4px;margin-right:-4px}
  .adminEditorHead{flex-direction:column}
  .adminEditorHead>a{width:100%;justify-content:center}
  .adminCustomerGrid,.adminPricingFields{grid-template-columns:1fr}
  .adminCustomerGrid label.wide,.adminPricingFields label.wide{grid-column:auto}
  .adminCustomerGrid input,
  .adminEditorField input,
  .adminEditorField select,
  .adminEditorField textarea,
  .adminPricingFields input,
  .adminPricingFields select,
  .adminCartEditorToolbar select{min-height:46px;font-size:16px}
  .adminCartEditorToolbar{grid-template-columns:1fr}
  .adminCartEditorToolbar button{width:100%}
  .adminEditorTotals{grid-template-columns:1fr 1fr}
  .adminEditorActions{display:grid;grid-template-columns:1fr}
  .adminEditorActions button{width:100%}
  .adminInquiryTable td:nth-child(1)::before{content:'Code / Zeit / Status'!important}
  .adminInquiryTable td:nth-child(2)::before{content:'Kunde / Adresse'!important}
  .adminInquiryTable td:nth-child(3)::before{content:'Kontakt'!important}
  .adminInquiryTable td:nth-child(4)::before{content:'Zugang'!important}
  .adminInquiryTable td:nth-child(5)::before{content:'Warenkorb'!important}
  .adminInquiryTable td:nth-child(6)::before{content:'Wert'!important}
  .adminInquiryTable td:nth-child(7)::before{content:'Aktionen'!important}
}
@media(max-width:420px){
  .adminEditorTotals{grid-template-columns:1fr}
}


/* V4.50 – Anfrage-/Auftragseditor visuell verfeinert */
.adminInquiryEditor{
  padding:0!important;
  border:1px solid #d5d4ce!important;
  border-radius:18px!important;
  background:#f6f5f1!important;
  overflow:hidden;
  box-shadow:0 8px 28px rgba(15,23,42,.035);
}
.adminEditorHead{
  margin:0!important;
  padding:16px 18px!important;
  align-items:center!important;
  border-bottom:1px solid var(--line);
  background:#fff;
}
.adminEditorHead h3{
  margin:3px 0 0!important;
  font-size:21px!important;
}
.adminEditorMetaLine{
  display:flex;
  flex-wrap:wrap;
  gap:5px 12px;
  margin-top:6px!important;
}
.adminEditorMetaLine span{
  display:inline-flex;
  align-items:center;
  gap:4px;
}
.adminEditorMetaLine span+span::before{
  content:'·';
  margin-right:7px;
  color:#aaa9a3;
}
.adminInquiryEditForm{
  padding:14px!important;
  gap:11px!important;
}
.adminEditorPanel{
  padding:14px!important;
  border-color:#ddddd7!important;
  border-radius:12px!important;
  box-shadow:0 1px 2px rgba(15,23,42,.018);
}
.adminEditorPanel legend{
  padding:0 7px!important;
  font-size:9px!important;
  color:#6d6d68!important;
}
.adminCustomerGrid{
  gap:8px 9px!important;
}
.adminCustomerGrid label span,
.adminEditorField span,
.adminPricingFields label span{
  margin-left:1px;
  font-size:9px!important;
}
.adminCustomerGrid input,
.adminEditorField input,
.adminEditorField select,
.adminEditorField textarea,
.adminPricingFields input,
.adminPricingFields select,
.adminCartEditorToolbar select{
  padding:9px 10px!important;
  border-radius:8px!important;
  border-color:#d8d7d1!important;
  background:#fff!important;
}
.adminEditorField textarea{
  min-height:108px;
}
.adminCartEditorToolbar{
  padding:0 0 10px;
  margin:0!important;
  border-bottom:1px solid var(--soft);
}
.adminCartEditTableWrap{
  margin-top:10px;
  border-radius:10px!important;
}
.adminCartEditTable th{
  padding:8px 9px!important;
}
.adminCartEditTable td{
  padding:7px!important;
}
.adminCartEditTable input{
  padding:7px 8px!important;
  border-radius:7px!important;
}
.adminPricingGrid{
  gap:10px!important;
}
.adminEditorTotals{
  gap:6px!important;
}
.adminEditorTotals>div{
  min-height:62px;
  padding:9px 10px!important;
  justify-content:center;
}
.adminEditorTotals strong{
  font-size:14px!important;
}
.adminEditorGrandTotal strong{
  font-size:19px!important;
}
.adminEditorActions{
  position:sticky;
  bottom:0;
  z-index:12;
  margin:2px -14px -14px;
  padding:11px 14px;
  border-top:1px solid var(--line);
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(10px);
  box-shadow:0 -8px 24px rgba(15,23,42,.035);
}
.adminEditorActions .adminSaveInquiry{
  min-width:150px;
}
.adminEditorActions .ghost{
  min-height:38px!important;
  padding:8px 11px!important;
  font-size:10px!important;
}
.adminActionFeedback{
  margin-left:auto;
  max-width:300px;
  text-align:right;
}
@media(max-width:760px){
  .adminEditorHead{
    padding:14px!important;
    align-items:flex-start!important;
  }
  .adminEditorMetaLine{
    gap:4px 8px;
  }
  .adminEditorMetaLine span+span::before{display:none}
  .adminInquiryEditForm{
    padding:10px!important;
  }
  .adminEditorPanel{
    padding:12px!important;
  }
  .adminEditorActions{
    margin:0 -10px -10px;
    padding:10px;
  }
  .adminActionFeedback{
    margin:0;
    max-width:none;
    text-align:left;
  }
}

/* V4.50 – Warenkorb auf signierter /pay Kunden-Linkseite */
.payInfoShell--wide{
  width:min(900px,100%)!important;
}
.payCartCard{
  margin:20px 0;
  padding:17px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
}
.payCartHead{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.payCartHead h2{
  margin:3px 0 0;
  font-size:19px;
}
.payCartHead>strong{
  color:var(--muted);
  font-size:11px;
}
.paySectionKicker{
  color:var(--muted);
  font-size:9px;
  font-weight:800;
  letter-spacing:.09em;
}
.payCartTableWrap{
  overflow-x:auto;
  border:1px solid var(--line);
  border-radius:10px;
}
.payCartTable{
  width:100%;
  min-width:720px;
  border-collapse:collapse;
}
.payCartTable th,
.payCartTable td{
  padding:10px 11px;
  border-bottom:1px solid var(--soft);
  text-align:left;
  vertical-align:top;
}
.payCartTable th{
  background:#f8f7f3;
  color:var(--muted);
  font-size:9px;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.payCartTable td{
  font-size:11px;
  line-height:1.45;
}
.payCartTable tbody tr:last-child td{border-bottom:0}
.payCartTable td:first-child strong,
.payCartTable td:first-child span{
  display:block;
}
.payCartTable td:first-child span{
  margin-top:2px;
  color:var(--muted);
}
.payCartTable td:nth-child(3),
.payCartTable td:nth-child(4),
.payCartTable td:nth-child(5){
  white-space:nowrap;
}
.payCartEmpty{
  padding:24px!important;
  color:var(--muted);
  text-align:center!important;
}
.payCartTotals{
  width:min(420px,100%);
  margin:12px 0 0 auto;
  display:grid;
}
.payCartTotals>div{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:7px 2px;
  border-bottom:1px solid var(--soft);
  font-size:11px;
}
.payCartTotals>div span{color:var(--muted)}
.payCartGrandTotal{
  margin-top:3px;
  padding-top:10px!important;
  border-top:1px solid var(--ink);
  border-bottom:0!important;
  color:var(--ink);
  font-size:16px!important;
}
.payCartGrandTotal span{color:var(--ink)!important;font-weight:700}
@media(max-width:560px){
  .payInfoShell--wide{width:100%!important}
  .payCartCard{padding:12px;margin:16px 0}
  .payCartHead{align-items:flex-start}
  .payCartTotals{width:100%}
}




/* V4.56 – Status-/Vereinbarungsseite */
.statusInfoBody{
  background:#f4f3ef;
}
.statusInfoShell{
  width:min(980px,100%)!important;
}
.statusInfoCard{
  padding:28px!important;
}
.statusHero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 220px;
  gap:24px;
  align-items:start;
}
.statusHero h1{
  margin-top:7px!important;
}
.statusHero>div:first-child>p:last-child{
  max-width:650px;
  margin:12px 0 0;
  color:var(--muted);
  font-size:12px;
  line-height:1.55;
}
.statusBadgeCard{
  display:grid;
  gap:7px;
  padding:15px;
  border:1px solid #c9d6ed;
  border-radius:13px;
  background:#f3f7fd;
}
.statusBadgeCard span,
.statusMetaGrid span,
.statusDataCard>span,
.statusNoteCard>span,
.statusConfirmCard>span{
  color:var(--muted);
  font-size:8px;
  font-weight:800;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.statusBadgeCard strong{
  color:#365f9c;
  font-size:16px;
}
.statusMetaGrid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
  margin:18px 0;
}
.statusMetaGrid>div{
  display:grid;
  gap:4px;
  min-width:0;
  padding:10px 11px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#faf9f6;
}
.statusMetaGrid strong{
  font-size:10px;
  overflow-wrap:anywhere;
}
.statusSection{
  margin:18px 0;
  padding:16px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
}
.statusSectionHead{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:11px;
}
.statusSectionHead h2{
  margin:3px 0 0;
  font-size:18px;
}
.statusCustomerGrid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
}
.statusDataCard{
  display:grid;
  gap:5px;
  min-width:0;
  padding:11px;
  border:1px solid var(--soft);
  border-radius:9px;
  background:#faf9f6;
}
.statusDataCard strong{
  font-size:11px;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.statusAddressCard{
  grid-column:1/-1;
}
.statusAddressCard address{
  display:grid;
  gap:2px;
  font-style:normal;
}
.statusCartCard{
  margin:18px 0!important;
}
.statusNotesGrid{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:8px;
}
.statusNoteCard,
.statusConfirmCard{
  min-width:0;
  padding:11px;
  border:1px solid var(--soft);
  border-radius:9px;
  background:#faf9f6;
}
.statusNoteCard p{
  margin:7px 0 0;
  font-size:11px;
  line-height:1.55;
  overflow-wrap:anywhere;
}
.statusConfirmCard ul{
  display:grid;
  gap:5px;
  margin:8px 0 0;
  padding:0;
  list-style:none;
}
.statusConfirmCard li{
  position:relative;
  padding-left:15px;
  color:var(--muted);
  font-size:10px;
}
.statusConfirmCard li::before{
  content:'–';
  position:absolute;
  left:0;
}
.statusConfirmCard li.isConfirmed{
  color:var(--ok);
  font-weight:700;
}
.statusConfirmCard li.isConfirmed::before{
  content:'✓';
}
.statusConfirmCard small{
  display:block;
  margin-top:8px;
  color:var(--muted);
  font-size:9px;
}
.statusNoPaymentNotice{
  display:grid;
  gap:4px;
  margin:18px 0 0;
  padding:12px 13px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#f8f7f3;
}
.statusNoPaymentNotice strong{
  font-size:11px;
}
.statusNoPaymentNotice span{
  color:var(--muted);
  font-size:10px;
  line-height:1.45;
}
.statusInfoActions{
  margin-top:12px!important;
}
@media(max-width:760px){
  .statusInfoCard{padding:18px!important}
  .statusHero{grid-template-columns:1fr}
  .statusMetaGrid{grid-template-columns:1fr 1fr}
  .statusCustomerGrid{grid-template-columns:1fr}
  .statusAddressCard{grid-column:auto}
  .statusNotesGrid{grid-template-columns:1fr}
}
@media(max-width:480px){
  .statusMetaGrid{grid-template-columns:1fr}
}


/* V4.58 – permanenter Status Warenkorb, Versand & Auftragsbild */
.statusRefreshBar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:14px 0 18px;
  padding:10px 12px;
  border:1px solid #c9d6ed;
  border-radius:11px;
  background:#f3f7fd;
}
.statusRefreshBar>div{
  display:grid;
  gap:2px;
}
.statusRefreshBar strong{
  color:#365f9c;
  font-size:10px;
}
.statusRefreshBar span{
  color:var(--muted);
  font-size:9px;
}
.statusRefreshBar button{
  flex:0 0 auto;
  background:#fff;
  font-size:10px;
}
.statusFulfillmentGrid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.statusTrackingCard,
.statusOrderImageCard{
  min-width:0;
  padding:12px;
  border:1px solid var(--soft);
  border-radius:10px;
  background:#faf9f6;
}
.statusTrackingCard>span,
.statusOrderImageCard>span{
  display:block;
  margin-bottom:8px;
  color:var(--muted);
  font-size:8px;
  font-weight:800;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.statusTrackingCard strong{
  display:block;
  margin-bottom:9px;
  font-size:12px;
  overflow-wrap:anywhere;
}
.statusTrackingCard p,
.statusOrderImageCard p{
  margin:0;
  color:var(--muted);
  font-size:10px;
  line-height:1.5;
}
.statusTrackingButton{
  display:inline-flex!important;
  width:auto!important;
  margin-bottom:8px;
  padding:9px 12px!important;
  text-decoration:none;
  font-size:10px;
}
.statusTrackingCard small{
  display:block;
  color:var(--muted);
  font-size:8px;
  line-height:1.4;
  overflow-wrap:anywhere;
}
.statusOrderImageCard a{
  display:block;
}
.statusOrderImageCard img{
  display:block;
  width:100%;
  max-height:380px;
  object-fit:contain;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fff;
}
.statusOrderImageCard small{
  display:block;
  margin-top:7px;
  color:var(--muted);
  font-size:8px;
}
.adminFulfillmentGrid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.adminFulfillmentColumn{
  display:grid;
  align-content:start;
  gap:9px;
  min-width:0;
}
.adminUploadHint{
  color:var(--muted);
  font-size:9px;
  line-height:1.45;
}
.adminCurrentOrderImage{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:10px;
  align-items:start;
  padding:9px;
  border:1px solid var(--soft);
  border-radius:9px;
  background:#faf9f6;
}
.adminCurrentOrderImage img{
  width:120px;
  height:90px;
  object-fit:contain;
  border:1px solid var(--line);
  border-radius:7px;
  background:#fff;
}
.adminCurrentOrderImage>div{
  display:grid;
  gap:5px;
  min-width:0;
}
.adminCurrentOrderImage strong{
  font-size:10px;
  overflow-wrap:anywhere;
}
.adminCurrentOrderImage small{
  color:var(--muted);
  font-size:9px;
}
.adminRemoveImageCheck{
  display:flex;
  align-items:flex-start;
  gap:6px;
  margin-top:4px;
  color:var(--muted);
  font-size:9px;
}
.adminRemoveImageCheck input{
  width:auto!important;
  min-height:0!important;
  margin:1px 0 0;
}
@media(max-width:760px){
  .statusRefreshBar{
    align-items:stretch;
    flex-direction:column;
  }
  .statusRefreshBar button{width:100%}
  .statusFulfillmentGrid,
  .adminFulfillmentGrid{grid-template-columns:1fr}
  .adminCurrentOrderImage{grid-template-columns:90px 1fr}
  .adminCurrentOrderImage img{width:90px;height:72px}
}


/* V4.60 – Status Warenkorb: Desktop-Lesbarkeit + Mobile-Optimierung */
.statusInfoShell{
  width:min(1180px, calc(100% - 32px))!important;
  margin:24px auto!important;
}
.statusInfoCard{
  padding:34px!important;
}
.statusHero{
  grid-template-columns:minmax(0,1fr) 260px;
  gap:30px;
  align-items:start;
}
.statusHero h1{
  font-size:clamp(34px,4vw,50px)!important;
  line-height:1.04!important;
  letter-spacing:-.035em!important;
}
.statusHero>div:first-child>p:last-child{
  max-width:760px;
  font-size:14px;
  line-height:1.65;
}
.statusBadgeCard{
  padding:18px;
}
.statusBadgeCard span{
  font-size:9px;
}
.statusBadgeCard strong{
  font-size:18px;
  line-height:1.25;
}
.statusMetaGrid{
  gap:10px;
  margin:24px 0;
}
.statusMetaGrid>div{
  padding:13px 14px;
}
.statusMetaGrid span{
  font-size:9px;
}
.statusMetaGrid strong{
  font-size:12px;
  line-height:1.4;
}
.statusSection,
.statusCartCard{
  margin:22px 0!important;
  padding:20px!important;
  border-radius:16px!important;
}
.statusSectionHead{
  margin-bottom:15px;
}
.statusSectionHead h2,
.statusCartCard h2{
  font-size:22px!important;
  line-height:1.2;
}
.statusCustomerGrid,
.statusNotesGrid,
.statusFulfillmentGrid{
  gap:11px;
}
.statusDataCard,
.statusNoteCard,
.statusConfirmCard,
.statusTrackingCard,
.statusOrderImageCard{
  padding:14px;
}
.statusDataCard>span,
.statusNoteCard>span,
.statusConfirmCard>span,
.statusTrackingCard>span,
.statusOrderImageCard>span{
  font-size:9px;
}
.statusDataCard strong{
  font-size:13px;
  line-height:1.55;
}
.statusNoteCard p,
.statusTrackingCard p,
.statusOrderImageCard p{
  font-size:12px;
}
.statusCartTableWrap{
  overflow:visible;
}
.statusCartTable{
  width:100%;
  table-layout:fixed;
}
.statusCartTable th{
  padding:11px 12px!important;
  font-size:10px!important;
}
.statusCartTable td{
  padding:13px 12px!important;
  font-size:12px!important;
  line-height:1.5;
  vertical-align:top;
}
.statusCartTable th:nth-child(1){width:27%}
.statusCartTable th:nth-child(2){width:31%}
.statusCartTable th:nth-child(3){width:9%}
.statusCartTable th:nth-child(4){width:15%}
.statusCartTable th:nth-child(5){width:18%}
.statusCartTable td:first-child strong{
  display:block;
  margin-bottom:3px;
  font-size:12px;
}
.statusCartTable td:first-child span{
  font-size:12px;
  line-height:1.45;
}
.statusCartTotals{
  width:min(520px,100%);
  margin-left:auto;
  margin-top:16px;
}
.statusCartTotals>div{
  padding:9px 0;
  font-size:12px;
}
.statusCartGrandTotal{
  margin-top:3px;
  padding-top:13px!important;
}
.statusCartGrandTotal strong{
  font-size:18px;
}
.statusTrackingButton{
  font-size:11px!important;
}
.statusOrderImageCard img{
  max-height:460px;
}
.statusRefreshBar--bottom{
  margin:24px 0 0;
  padding:13px 14px;
}
.statusRefreshBar--bottom strong{
  font-size:11px;
}
.statusRefreshBar--bottom span{
  font-size:10px;
  line-height:1.45;
}
.statusRefreshBar--bottom button{
  min-height:40px;
  padding:8px 14px;
}
.statusInfoActions{
  margin-top:10px!important;
}

/* Tablet */
@media(max-width:900px){
  .statusInfoShell{
    width:min(100% - 22px, 860px)!important;
    margin:14px auto!important;
  }
  .statusInfoCard{
    padding:24px!important;
  }
  .statusHero{
    grid-template-columns:1fr;
    gap:16px;
  }
  .statusBadgeCard{
    width:100%;
  }
  .statusMetaGrid{
    grid-template-columns:1fr 1fr;
  }
  .statusCartTable th:nth-child(1){width:28%}
  .statusCartTable th:nth-child(2){width:28%}
  .statusCartTable th:nth-child(3){width:10%}
  .statusCartTable th:nth-child(4){width:16%}
  .statusCartTable th:nth-child(5){width:18%}
}

/* Mobile: Warenkorb als Karten */
@media(max-width:640px){
  .statusInfoBody{
    padding:0!important;
  }
  .statusInfoShell{
    width:100%!important;
    margin:0!important;
  }
  .statusInfoCard{
    padding:16px 13px 24px!important;
    border-radius:0!important;
    border-left:0!important;
    border-right:0!important;
  }
  .statusHero{
    gap:13px;
  }
  .statusHero h1{
    font-size:34px!important;
    line-height:1.02!important;
  }
  .statusHero>div:first-child>p:last-child{
    font-size:12px;
    line-height:1.55;
  }
  .statusBadgeCard{
    padding:13px;
  }
  .statusBadgeCard strong{
    font-size:16px;
  }
  .statusMetaGrid{
    grid-template-columns:1fr 1fr;
    gap:6px;
    margin:14px 0;
  }
  .statusMetaGrid>div{
    padding:10px;
  }
  .statusMetaGrid strong{
    font-size:10px;
  }
  .statusSection,
  .statusCartCard{
    margin:13px 0!important;
    padding:13px!important;
    border-radius:12px!important;
  }
  .statusSectionHead{
    margin-bottom:10px;
  }
  .statusSectionHead h2,
  .statusCartCard h2{
    font-size:18px!important;
  }
  .statusCustomerGrid,
  .statusNotesGrid,
  .statusFulfillmentGrid{
    grid-template-columns:1fr;
    gap:7px;
  }
  .statusDataCard,
  .statusNoteCard,
  .statusConfirmCard,
  .statusTrackingCard,
  .statusOrderImageCard{
    padding:11px;
  }
  .statusDataCard strong{
    font-size:11px;
  }

  .statusCartTableWrap{
    overflow:visible!important;
  }
  .statusCartTable,
  .statusCartTable thead,
  .statusCartTable tbody,
  .statusCartTable tr,
  .statusCartTable td{
    display:block;
    width:100%;
  }
  .statusCartTable thead{
    display:none;
  }
  .statusCartTable{
    table-layout:auto;
  }
  .statusCartTable tbody{
    display:grid;
    gap:9px;
  }
  .statusCartTable tbody tr{
    padding:11px 11px 8px;
    border:1px solid var(--line);
    border-radius:11px;
    background:#fff;
  }
  .statusCartTable td{
    display:grid;
    grid-template-columns:104px minmax(0,1fr);
    gap:8px;
    align-items:start;
    padding:7px 0!important;
    border:0!important;
    border-bottom:1px solid var(--soft)!important;
    text-align:right!important;
    font-size:11px!important;
  }
  .statusCartTable td:last-child{
    border-bottom:0!important;
  }
  .statusCartTable td::before{
    content:attr(data-label);
    color:var(--muted);
    font-size:8px;
    font-weight:800;
    letter-spacing:.045em;
    text-align:left;
    text-transform:uppercase;
  }
  .statusCartTable td:first-child>strong,
  .statusCartTable td:first-child>span{
    grid-column:2;
    text-align:right;
  }
  .statusCartTable td:first-child>strong{
    margin:0;
  }
  .statusCartTable td:first-child::before{
    grid-column:1;
    grid-row:1/3;
  }
  .statusCartTable .payCartEmpty{
    display:block;
    text-align:center!important;
    padding:14px!important;
  }
  .statusCartTable .payCartEmpty::before{
    content:none;
  }

  .statusCartTotals{
    width:100%;
    margin-top:12px;
  }
  .statusCartTotals>div{
    gap:10px;
    padding:7px 0;
    font-size:11px;
  }
  .statusCartGrandTotal strong{
    font-size:16px;
  }
  .statusOrderImageCard img{
    max-height:300px;
  }
  .statusRefreshBar--bottom{
    align-items:stretch;
    flex-direction:column;
    margin-top:15px;
    padding:11px;
  }
  .statusRefreshBar--bottom button{
    width:100%;
  }
  .statusInfoActions{
    display:grid!important;
    grid-template-columns:1fr;
    gap:7px!important;
    margin-top:8px!important;
  }
  .statusInfoActions a{
    width:100%!important;
    justify-content:center;
  }
}

/* Kleine Smartphones */
@media(max-width:390px){
  .statusInfoCard{
    padding-left:10px!important;
    padding-right:10px!important;
  }
  .statusHero h1{
    font-size:30px!important;
  }
  .statusMetaGrid{
    grid-template-columns:1fr;
  }
  .statusCartTable td{
    grid-template-columns:88px minmax(0,1fr);
  }
}


/* V4.61 – Status-Link direkt nach gespeicherter Anfrage */
.inquiryStatusLinkBox{
  display:grid;
  gap:7px;
  margin:15px 0 12px;
  padding:14px;
  border:1px solid #c9d6ed;
  border-radius:12px;
  background:#f3f7fd;
}
.inquiryStatusLinkBox.hidden{
  display:none!important;
}
.inquiryStatusLinkLabel{
  color:#61708a;
  font-size:9px;
  font-weight:800;
  letter-spacing:.065em;
}
.inquiryStatusLinkBox>strong{
  color:#244d87;
  font-size:14px;
}
.inquiryStatusDirectLink{
  display:block;
  color:#244d87;
  font-size:10px;
  font-weight:700;
  line-height:1.5;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.inquiryStatusLinkActions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:2px;
}
.inquiryStatusLinkActions button{
  min-height:38px;
}
.inquiryStatusLinkBox>p{
  margin:2px 0 0;
  color:var(--muted);
  font-size:10px;
  line-height:1.5;
}
@media(max-width:560px){
  .inquiryStatusLinkActions{
    display:grid;
    grid-template-columns:1fr;
  }
  .inquiryStatusLinkActions button{
    width:100%;
  }
  .inquiryStatusDirectLink{
    font-size:9px;
  }
}


/* V4.62 – logisch aufgebaute Abschlussseite nach Anfrage */
.inquirySuccessDone{
  max-width:760px;
  margin:0 auto;
  padding:24px 0 10px;
  text-align:left;
}
.inquirySuccessHead{
  max-width:650px;
  margin:0 auto 18px;
  text-align:center;
}
.inquirySuccessHead .eyebrow{
  margin-bottom:7px;
}
.inquirySuccessHead h2{
  margin:0;
  font-size:clamp(26px,4vw,36px);
  line-height:1.08;
  letter-spacing:-.025em;
}
.inquirySuccessHead>p:last-child{
  margin:10px auto 0;
  max-width:560px;
  color:var(--muted);
  font-size:13px;
  line-height:1.55;
}
.inquirySuccessSteps{
  display:grid;
  gap:10px;
}
.inquirySuccessStep{
  padding:16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--card);
  text-align:left;
}
.inquirySuccessStepHead{
  display:flex;
  align-items:flex-start;
  gap:11px;
}
.inquirySuccessStepNumber{
  display:grid;
  flex:0 0 30px;
  width:30px;
  height:30px;
  place-items:center;
  border-radius:9px;
  background:var(--ink);
  color:#fff;
  font-size:12px;
  font-weight:800;
}
.inquirySuccessStepHead>div{
  min-width:0;
}
.inquirySuccessStepKicker{
  display:block;
  color:var(--muted);
  font-size:9px;
  font-weight:800;
  letter-spacing:.065em;
}
.inquirySuccessStep h3{
  margin:3px 0 0;
  font-size:17px;
  line-height:1.25;
}
.inquirySuccessCodeStep .inquiryCode{
  margin:14px 0 10px;
  padding:15px;
  border:1px solid var(--soft);
  border-radius:12px;
  background:var(--soft);
  color:var(--ok);
  font-size:clamp(20px,4vw,30px);
  text-align:center;
}
.inquirySuccessStep>p{
  margin:10px 0 0;
  color:var(--muted);
  font-size:11px;
  line-height:1.55;
}
.inquirySuccessFullButton{
  width:100%;
  min-height:42px;
  margin-top:12px;
}
.inquiryStatusLinkBox{
  margin:0;
  padding:16px;
  border:1px solid #c9d6ed;
  border-radius:16px;
  background:#f3f7fd;
}
.inquiryStatusLinkBox.hidden{
  display:none!important;
}
.inquiryStatusLead{
  margin-top:11px!important;
}
.inquiryStatusDirectLink{
  display:block;
  margin-top:10px;
  padding:10px 11px;
  border:1px solid #d9e2f0;
  border-radius:10px;
  background:#fff;
  color:#244d87;
  font-size:10px;
  font-weight:700;
  line-height:1.45;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.inquiryStatusLinkActions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:10px;
}
.inquiryStatusLinkActions button{
  min-height:44px;
}
.inquiryStatusLinkBox small{
  display:block;
  margin-top:9px;
  color:#61708a;
  font-size:9px;
  line-height:1.5;
}
.inquirySuccessEmailStep{
  background:#faf9f6;
}
.inquirySuccessEmailStep .inquirySuccessStepNumber{
  background:#fff;
  border:1px solid var(--line);
  color:var(--ink);
}
.inquirySuccessNext{
  display:grid;
  gap:5px;
  margin-top:12px;
  padding:14px 16px;
  border-radius:14px;
  text-align:left;
}
.inquirySuccessNext strong{
  font-size:12px;
  line-height:1.5;
}
.inquirySuccessNext>span:last-child{
  font-size:10px;
  line-height:1.5;
}

/* V4.62 – Status Warenkorb Mobile im bestehenden Shop-Mobile-Design */
.statusMobileTopbar{
  display:none;
}

@media(max-width:640px){
  .statusInfoBody{
    min-height:100svh;
    padding:0!important;
    background:var(--bg)!important;
    font-size:15px;
  }
  .statusInfoShell{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0 12px calc(28px + var(--safe-bottom))!important;
  }
  .statusInfoCard{
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  /* entspricht der mobilen Shop-Topbar */
  .statusMobileTopbar{
    position:sticky;
    top:0;
    z-index:70;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin:0 -12px 14px;
    padding:calc(10px + var(--safe-top)) 12px 10px;
    min-height:60px;
    border-bottom:1px solid var(--line);
    background:rgba(244,243,239,.98);
    backdrop-filter:blur(12px);
  }
  .statusMobileBrand{
    display:grid;
    min-width:0;
    gap:2px;
  }
  .statusMobileBrand strong{
    font-size:21px;
    line-height:1;
    letter-spacing:-.045em;
  }
  .statusMobileBrand span{
    color:var(--muted);
    font-size:10px;
  }
  .statusMobileState{
    max-width:48%;
    padding:7px 9px;
    border:1px solid var(--line);
    border-radius:999px;
    background:#fff;
    font-size:9px;
    font-weight:800;
    line-height:1.2;
    text-align:right;
  }

  .statusHero{
    display:grid;
    gap:10px;
    padding:7px 0 2px;
  }
  .statusDesktopEyebrow{
    display:none;
  }
  .statusHero h1{
    margin:0!important;
    font-size:32px!important;
    line-height:1!important;
    letter-spacing:-.04em!important;
  }
  .statusHero>div:first-child>p:last-child{
    margin:9px 0 0;
    font-size:12px;
    line-height:1.5;
  }
  .statusBadgeCard{
    padding:12px 13px;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--card);
    box-shadow:0 2px 8px #00000008;
  }
  .statusBadgeCard span{
    font-size:9px;
  }
  .statusBadgeCard strong{
    color:var(--ink);
    font-size:15px;
  }

  /* gleiche Kartenwirkung wie mobile Produktkarten */
  .statusMetaGrid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin:12px 0;
  }
  .statusMetaGrid>div,
  .statusSection,
  .statusCartCard{
    border:1px solid var(--line)!important;
    background:var(--card)!important;
    box-shadow:0 2px 8px #00000008;
  }
  .statusMetaGrid>div{
    padding:11px;
    border-radius:14px;
  }
  .statusMetaGrid span{
    font-size:8px;
  }
  .statusMetaGrid strong{
    margin-top:2px;
    font-size:10px;
    line-height:1.4;
  }

  .statusSection,
  .statusCartCard{
    margin:10px 0!important;
    padding:14px!important;
    border-radius:16px!important;
  }
  .statusSectionHead{
    margin-bottom:11px;
  }
  .statusSectionHead h2,
  .statusCartCard h2{
    margin-top:3px!important;
    font-size:19px!important;
    line-height:1.15;
  }
  .paySectionKicker{
    font-size:9px!important;
    letter-spacing:.07em;
  }
  .payCartHead{
    align-items:flex-start;
    gap:10px;
  }
  .payCartHead>strong{
    padding:6px 8px;
    border-radius:8px;
    background:var(--soft);
    font-size:9px;
  }

  .statusCustomerGrid,
  .statusNotesGrid,
  .statusFulfillmentGrid{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
  }
  .statusDataCard,
  .statusNoteCard,
  .statusConfirmCard,
  .statusTrackingCard,
  .statusOrderImageCard{
    padding:12px;
    border:1px solid var(--soft);
    border-radius:14px;
    background:#faf9f6;
  }

  /* Warenkorbpositionen wie mobile Shop-Produktkarten */
  .statusCartTableWrap{
    overflow:visible!important;
  }
  .statusCartTable,
  .statusCartTable thead,
  .statusCartTable tbody,
  .statusCartTable tr,
  .statusCartTable td{
    display:block;
    width:100%;
  }
  .statusCartTable thead{
    display:none;
  }
  .statusCartTable tbody{
    display:grid;
    gap:10px;
  }
  .statusCartTable tbody tr{
    display:grid;
    gap:0;
    padding:14px;
    border:1px solid var(--line);
    border-radius:16px;
    background:var(--card);
    box-shadow:0 2px 8px #00000008;
  }
  .statusCartTable td{
    display:grid;
    grid-template-columns:96px minmax(0,1fr);
    gap:10px;
    align-items:start;
    padding:8px 0!important;
    border:0!important;
    border-bottom:1px solid var(--soft)!important;
    font-size:12px!important;
    line-height:1.45;
    text-align:right!important;
  }
  .statusCartTable td:last-child{
    border-bottom:0!important;
    padding-bottom:2px!important;
  }
  .statusCartTable td::before{
    content:attr(data-label);
    color:var(--muted);
    font-size:9px;
    font-weight:800;
    letter-spacing:.06em;
    text-align:left;
    text-transform:uppercase;
  }
  .statusCartTable td:first-child>strong,
  .statusCartTable td:first-child>span{
    grid-column:2;
    text-align:right;
  }
  .statusCartTable td:first-child::before{
    grid-column:1;
    grid-row:1/3;
  }
  .statusCartTable td:first-child strong{
    margin:0;
    padding:0;
    background:transparent;
    font-size:12px;
  }
  .statusCartTable td:first-child span{
    font-size:13px;
    font-weight:700;
    line-height:1.3;
  }

  .statusCartTotals{
    width:100%;
    margin-top:12px;
    padding-top:2px;
  }
  .statusCartTotals>div{
    padding:8px 1px;
    font-size:12px;
  }
  .statusCartGrandTotal{
    margin-top:4px;
    padding-top:12px!important;
    border-top:1px solid var(--line);
  }
  .statusCartGrandTotal strong{
    font-size:18px;
  }

  .statusTrackingButton,
  .statusInfoActions .primaryButton{
    min-height:48px!important;
    border-radius:12px!important;
    font-size:13px!important;
  }
  .statusOrderImageCard img{
    max-height:320px;
    border-radius:12px;
  }

  .statusNoPaymentNotice{
    margin:10px 0 0;
    padding:12px 13px;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--card);
  }
  .statusRefreshBar--bottom{
    display:grid;
    gap:10px;
    margin:10px 0 0;
    padding:13px;
    border:1px solid var(--line);
    border-radius:16px;
    background:var(--card);
    box-shadow:0 2px 8px #00000008;
  }
  .statusRefreshBar--bottom button{
    width:100%;
    min-height:48px;
    border-radius:12px;
    background:#fff;
    font-size:12px;
  }
  .statusInfoActions{
    display:grid!important;
    grid-template-columns:1fr;
    gap:8px!important;
    margin:10px 0 0!important;
  }
  .statusInfoActions a{
    width:100%!important;
    min-height:48px;
    border-radius:12px!important;
    justify-content:center;
  }

  /* Abschlussseite im selben mobilen Shop-Stil */
  .inquirySuccessDone{
    padding:22px 0 calc(10px + var(--safe-bottom));
  }
  .inquirySuccessHead{
    margin-bottom:14px;
    text-align:left;
  }
  .inquirySuccessHead h2{
    font-size:28px;
    line-height:1.04;
  }
  .inquirySuccessHead>p:last-child{
    margin-left:0;
    font-size:12px;
  }
  .inquirySuccessSteps{
    gap:10px;
  }
  .inquirySuccessStep,
  .inquiryStatusLinkBox{
    padding:14px;
    border-radius:16px;
    box-shadow:0 2px 8px #00000008;
  }
  .inquirySuccessStep h3{
    font-size:16px;
  }
  .inquirySuccessCodeStep .inquiryCode{
    margin:12px 0 8px;
    padding:14px 10px;
    font-size:22px;
  }
  .inquiryStatusLinkActions{
    grid-template-columns:1fr;
  }
  .inquiryStatusLinkActions button,
  .inquirySuccessFullButton{
    width:100%;
    min-height:48px;
    border-radius:12px;
  }
  .inquirySuccessNext{
    margin-top:10px;
    padding:13px 14px;
    border-radius:14px;
  }
}

@media(max-width:380px){
  .statusInfoShell{
    padding-left:9px!important;
    padding-right:9px!important;
  }
  .statusMobileTopbar{
    margin-left:-9px;
    margin-right:-9px;
    padding-left:9px;
    padding-right:9px;
  }
  .statusMobileBrand strong{
    font-size:19px;
  }
  .statusMobileState{
    max-width:52%;
    font-size:8px;
  }
  .statusHero h1{
    font-size:29px!important;
  }
  .statusMetaGrid{
    grid-template-columns:1fr;
  }
  .statusCartTable tbody tr{
    padding:12px;
  }
  .statusCartTable td{
    grid-template-columns:82px minmax(0,1fr);
    gap:8px;
  }
}


/* V4.64 – vereinheitlichte Typografie für Anfrageabschluss + Status Warenkorb */

/*
  Typografie-Skala:
  28px = Seitentitel mobil
  18px = Abschnittstitel
  14px = wichtige Werte / Buttons / Produktname
  13px = normaler Inhalt
  11px = Labels / Zusatzinformationen
*/

/* Anfrage gespeichert – Desktop & Basis */
.inquirySuccessDone{
  max-width:760px;
  padding:26px 0 12px;
}
.inquirySuccessHead{
  margin-bottom:18px;
}
.inquirySuccessHead .eyebrow,
.inquirySuccessStepKicker{
  font-size:11px!important;
  line-height:1.35;
  letter-spacing:.055em;
}
.inquirySuccessHead h2{
  font-size:32px!important;
  line-height:1.08!important;
}
.inquirySuccessHead>p:last-child,
.inquirySuccessStep>p,
.inquiryStatusLead,
.inquirySuccessEmailStep>p{
  font-size:13px!important;
  line-height:1.55!important;
}
.inquirySuccessStep{
  padding:17px;
}
.inquirySuccessStepNumber{
  width:32px;
  height:32px;
  flex-basis:32px;
  border-radius:10px;
  font-size:13px!important;
}
.inquirySuccessStep h3{
  font-size:18px!important;
  line-height:1.25!important;
}
.inquirySuccessCodeStep .inquiryCode{
  font-size:26px!important;
  line-height:1.2;
}
.inquiryStatusDirectLink{
  font-size:12px!important;
  line-height:1.5!important;
}
.inquiryStatusLinkBox small,
.inquirySuccessNext>span:last-child{
  font-size:11px!important;
  line-height:1.5!important;
}
.inquirySuccessNext strong{
  font-size:13px!important;
  line-height:1.5!important;
}
.inquirySuccessFullButton,
.inquiryStatusLinkActions button{
  font-size:13px!important;
}

/* Status Warenkorb – Desktop & Basis */
.statusHero h1{
  font-size:42px!important;
  line-height:1.05!important;
}
.statusHero>div:first-child>p:last-child{
  font-size:14px!important;
  line-height:1.6!important;
}
.statusBadgeCard span,
.statusMetaGrid span,
.statusDataCard>span,
.statusNoteCard>span,
.statusConfirmCard>span,
.statusTrackingCard>span,
.statusOrderImageCard>span,
.paySectionKicker{
  font-size:11px!important;
  line-height:1.35;
  letter-spacing:.05em;
}
.statusBadgeCard strong{
  font-size:18px!important;
}
.statusMetaGrid strong,
.statusDataCard strong{
  font-size:13px!important;
  line-height:1.5!important;
}
.statusSectionHead h2,
.statusCartCard h2{
  font-size:20px!important;
  line-height:1.2!important;
}
.statusNoteCard p,
.statusTrackingCard p,
.statusOrderImageCard p,
.statusConfirmCard li,
.statusTrackingCard small,
.statusOrderImageCard small{
  font-size:12px!important;
  line-height:1.5!important;
}
.statusCartTable th{
  font-size:11px!important;
}
.statusCartTable td,
.statusCartTable td:first-child strong,
.statusCartTable td:first-child span{
  font-size:13px!important;
}
.statusCartTotals>div{
  font-size:13px!important;
}
.statusCartGrandTotal strong{
  font-size:18px!important;
}
.statusRefreshBar--bottom strong{
  font-size:13px!important;
}
.statusRefreshBar--bottom span,
.statusNoPaymentNotice strong,
.statusNoPaymentNotice span{
  font-size:12px!important;
  line-height:1.5!important;
}

/* Mobiltelefone: identische Grundlogik wie Shop-Mobile (Breakpoint 760px) */
@media(max-width:760px){
  /* Status-Seite */
  .statusInfoBody{
    min-height:100svh;
    padding:0!important;
    background:var(--bg)!important;
    font-size:13px!important;
  }
  .statusInfoShell{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0 12px calc(28px + var(--safe-bottom))!important;
  }
  .statusInfoCard{
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  .statusMobileTopbar{
    position:sticky;
    top:0;
    z-index:70;
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin:0 -12px 14px;
    padding:calc(10px + var(--safe-top)) 12px 10px;
    min-height:60px;
    border-bottom:1px solid var(--line);
    background:rgba(244,243,239,.98);
    backdrop-filter:blur(12px);
  }
  .statusMobileBrand{
    display:grid;
    gap:3px;
    min-width:0;
  }
  .statusMobileBrand strong{
    font-size:20px!important;
    line-height:1!important;
    letter-spacing:-.04em;
  }
  .statusMobileBrand span{
    color:var(--muted);
    font-size:11px!important;
    line-height:1.3;
  }
  .statusMobileState{
    max-width:50%;
    padding:7px 10px;
    border:1px solid var(--line);
    border-radius:999px;
    background:#fff;
    font-size:11px!important;
    font-weight:800;
    line-height:1.25;
    text-align:right;
  }

  .statusDesktopEyebrow{
    display:none!important;
  }
  .statusHero{
    gap:10px;
    padding:7px 0 2px;
  }
  .statusHero h1{
    margin:0!important;
    font-size:28px!important;
    line-height:1.04!important;
    letter-spacing:-.035em!important;
  }
  .statusHero>div:first-child>p:last-child{
    margin:9px 0 0!important;
    font-size:13px!important;
    line-height:1.55!important;
  }

  .statusBadgeCard{
    padding:13px;
    border:1px solid var(--line);
    border-radius:16px;
    background:var(--card);
    box-shadow:0 2px 8px #00000008;
  }
  .statusBadgeCard span,
  .statusMetaGrid span,
  .statusDataCard>span,
  .statusNoteCard>span,
  .statusConfirmCard>span,
  .statusTrackingCard>span,
  .statusOrderImageCard>span,
  .paySectionKicker{
    font-size:11px!important;
  }
  .statusBadgeCard strong{
    font-size:14px!important;
    line-height:1.35;
  }

  .statusMetaGrid{
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin:12px 0;
  }
  .statusMetaGrid>div{
    padding:12px;
    border:1px solid var(--line)!important;
    border-radius:16px;
    background:var(--card)!important;
    box-shadow:0 2px 8px #00000008;
  }
  .statusMetaGrid strong{
    font-size:13px!important;
    line-height:1.45!important;
  }

  .statusSection,
  .statusCartCard{
    margin:10px 0!important;
    padding:14px!important;
    border:1px solid var(--line)!important;
    border-radius:16px!important;
    background:var(--card)!important;
    box-shadow:0 2px 8px #00000008;
  }
  .statusSectionHead{
    margin-bottom:11px;
  }
  .statusSectionHead h2,
  .statusCartCard h2{
    margin-top:3px!important;
    font-size:18px!important;
    line-height:1.2!important;
  }

  .payCartHead{
    align-items:flex-start;
    gap:10px;
  }
  .payCartHead>strong{
    padding:6px 8px;
    border-radius:9px;
    background:var(--soft);
    font-size:11px!important;
    line-height:1.3;
  }

  .statusCustomerGrid,
  .statusNotesGrid,
  .statusFulfillmentGrid{
    grid-template-columns:1fr!important;
    gap:8px;
  }
  .statusDataCard,
  .statusNoteCard,
  .statusConfirmCard,
  .statusTrackingCard,
  .statusOrderImageCard{
    padding:12px;
    border:1px solid var(--soft);
    border-radius:14px;
    background:#faf9f6;
  }
  .statusDataCard strong{
    font-size:13px!important;
    line-height:1.5!important;
  }
  .statusNoteCard p,
  .statusTrackingCard p,
  .statusOrderImageCard p,
  .statusConfirmCard li{
    font-size:13px!important;
    line-height:1.5!important;
  }
  .statusTrackingCard small,
  .statusOrderImageCard small,
  .statusConfirmCard small{
    font-size:11px!important;
    line-height:1.45!important;
  }

  /* Warenkorb wie mobile Shop-Karten */
  .statusCartTableWrap{
    overflow:visible!important;
  }
  .statusCartTable,
  .statusCartTable thead,
  .statusCartTable tbody,
  .statusCartTable tr,
  .statusCartTable td{
    display:block;
    width:100%;
  }
  .statusCartTable thead{
    display:none!important;
  }
  .statusCartTable tbody{
    display:grid;
    gap:10px;
  }
  .statusCartTable tbody tr{
    display:grid;
    gap:0;
    padding:14px;
    border:1px solid var(--line);
    border-radius:16px;
    background:var(--card);
    box-shadow:0 2px 8px #00000008;
  }
  .statusCartTable td{
    display:grid;
    grid-template-columns:100px minmax(0,1fr);
    gap:10px;
    align-items:start;
    padding:9px 0!important;
    border:0!important;
    border-bottom:1px solid var(--soft)!important;
    font-size:13px!important;
    line-height:1.45!important;
    text-align:right!important;
  }
  .statusCartTable td:last-child{
    border-bottom:0!important;
    padding-bottom:1px!important;
  }
  .statusCartTable td::before{
    content:attr(data-label);
    color:var(--muted);
    font-size:11px!important;
    font-weight:800;
    letter-spacing:.04em;
    line-height:1.35;
    text-align:left;
    text-transform:uppercase;
  }
  .statusCartTable td:first-child>strong,
  .statusCartTable td:first-child>span{
    grid-column:2;
    text-align:right;
  }
  .statusCartTable td:first-child::before{
    grid-column:1;
    grid-row:1/3;
  }
  .statusCartTable td:first-child strong{
    margin:0;
    font-size:13px!important;
  }
  .statusCartTable td:first-child span{
    font-size:14px!important;
    font-weight:700;
    line-height:1.35;
  }

  .statusCartTotals{
    width:100%;
    margin-top:12px;
  }
  .statusCartTotals>div{
    padding:9px 1px;
    font-size:13px!important;
    line-height:1.4;
  }
  .statusCartGrandTotal{
    margin-top:4px;
    padding-top:12px!important;
  }
  .statusCartGrandTotal strong{
    font-size:18px!important;
  }

  .statusTrackingButton,
  .statusInfoActions .primaryButton,
  .statusInfoActions .ghost,
  .statusRefreshBar--bottom button{
    width:100%!important;
    min-height:50px!important;
    border-radius:12px!important;
    font-size:14px!important;
  }
  .statusOrderImageCard img{
    max-height:320px;
    border-radius:12px;
  }

  .statusNoPaymentNotice{
    margin:10px 0 0;
    padding:13px;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--card);
  }
  .statusNoPaymentNotice strong,
  .statusNoPaymentNotice span{
    font-size:12px!important;
  }

  .statusRefreshBar--bottom{
    display:grid;
    gap:10px;
    margin:10px 0 0;
    padding:13px;
    border:1px solid var(--line);
    border-radius:16px;
    background:var(--card);
    box-shadow:0 2px 8px #00000008;
  }
  .statusRefreshBar--bottom strong{
    font-size:13px!important;
  }
  .statusRefreshBar--bottom span{
    font-size:12px!important;
    line-height:1.45!important;
  }
  .statusInfoActions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin:10px 0 0!important;
  }

  /* Anfrage gespeichert – Mobil */
  .inquirySuccessDone{
    max-width:none;
    padding:22px 0 calc(12px + var(--safe-bottom));
  }
  .inquirySuccessHead{
    margin-bottom:14px;
    text-align:left;
  }
  .inquirySuccessHead .eyebrow,
  .inquirySuccessStepKicker{
    font-size:11px!important;
  }
  .inquirySuccessHead h2{
    font-size:28px!important;
    line-height:1.06!important;
  }
  .inquirySuccessHead>p:last-child{
    margin:9px 0 0!important;
    font-size:13px!important;
    line-height:1.5!important;
  }
  .inquirySuccessSteps{
    gap:10px;
  }
  .inquirySuccessStep,
  .inquiryStatusLinkBox{
    padding:14px;
    border-radius:16px;
    box-shadow:0 2px 8px #00000008;
  }
  .inquirySuccessStepHead{
    gap:10px;
  }
  .inquirySuccessStepNumber{
    width:32px;
    height:32px;
    flex-basis:32px;
    font-size:13px!important;
  }
  .inquirySuccessStep h3{
    font-size:18px!important;
    line-height:1.25!important;
  }
  .inquirySuccessStep>p,
  .inquiryStatusLead,
  .inquirySuccessEmailStep>p{
    font-size:13px!important;
    line-height:1.5!important;
  }
  .inquirySuccessCodeStep .inquiryCode{
    margin:12px 0 8px;
    padding:14px 10px;
    font-size:22px!important;
    line-height:1.25;
  }
  .inquiryStatusDirectLink{
    font-size:12px!important;
    line-height:1.5!important;
  }
  .inquiryStatusLinkActions{
    grid-template-columns:1fr!important;
  }
  .inquiryStatusLinkActions button,
  .inquirySuccessFullButton{
    width:100%;
    min-height:50px!important;
    border-radius:12px;
    font-size:14px!important;
  }
  .inquiryStatusLinkBox small{
    font-size:11px!important;
    line-height:1.45!important;
  }
  .inquirySuccessNext{
    margin-top:10px;
    padding:13px 14px;
    border-radius:14px;
  }
  .inquirySuccessNext strong{
    font-size:13px!important;
  }
  .inquirySuccessNext>span:last-child{
    font-size:12px!important;
  }
}

/* Sehr kleine Mobiltelefone: Layout enger, Typografie bleibt lesbar */
@media(max-width:380px){
  .statusInfoShell{
    padding-left:9px!important;
    padding-right:9px!important;
  }
  .statusMobileTopbar{
    margin-left:-9px;
    margin-right:-9px;
    padding-left:9px;
    padding-right:9px;
  }
  .statusMobileBrand strong{
    font-size:19px!important;
  }
  .statusMobileState{
    max-width:54%;
    font-size:10px!important;
  }
  .statusHero h1{
    font-size:27px!important;
  }
  .statusMetaGrid{
    grid-template-columns:1fr!important;
  }
  .statusCartTable tbody tr{
    padding:12px;
  }
  .statusCartTable td{
    grid-template-columns:86px minmax(0,1fr);
    gap:8px;
  }
  .statusCartTable td::before{
    font-size:10px!important;
  }
  .inquirySuccessHead h2{
    font-size:26px!important;
  }
}


/* V4.65 – Anfrage gespeichert weiter reduziert */
.inquirySuccessCodeStep{
  padding-top:14px;
}
.inquirySuccessCodeStep .inquiryCode{
  margin-top:0!important;
}
.inquirySuccessHead h2{
  margin-bottom:0!important;
}
@media(max-width:760px){
  .inquirySuccessCodeStep{
    padding-top:12px;
  }
}


/* V4.66 – Anfrage gespeichert: reduziert, klarer, Support direkt erreichbar */
.inquirySuccessDone{
  max-width:700px;
  margin:0 auto;
  padding:30px 0 14px;
}
.inquirySuccessHead{
  max-width:610px;
  margin:0 auto 20px;
}
.inquirySuccessHead h2{
  max-width:580px;
  margin:0 auto!important;
  font-size:30px!important;
  line-height:1.08!important;
}
.inquirySuccessHead>p:last-child{
  max-width:560px;
  margin:10px auto 0!important;
  font-size:13px!important;
  line-height:1.55!important;
}
.inquirySuccessSteps{
  gap:12px;
}
.inquirySuccessStep{
  padding:18px;
  border-radius:16px;
}
.inquiryStatusLinkBox{
  border-color:#c7d4e8;
  background:#f5f8fc;
}
.inquirySuccessStepHead{
  align-items:center;
}
.inquirySuccessStepNumber{
  flex:0 0 32px;
  width:32px;
  height:32px;
}
.inquirySuccessStep h3{
  font-size:18px!important;
}
.inquiryStatusLead,
.inquirySuccessEmailStep>p{
  margin-top:12px!important;
  font-size:13px!important;
  line-height:1.55!important;
}
.inquiryStatusDirectLink{
  margin-top:12px;
  padding:11px 12px;
  font-size:12px!important;
}
.inquiryStatusLinkActions{
  margin-top:10px;
}
.inquiryStatusLinkActions button{
  min-height:46px;
  font-size:13px!important;
}
.inquiryStatusLinkBox small{
  margin-top:10px;
  font-size:11px!important;
}
.inquirySuccessEmailStep{
  background:#fff;
}
.inquirySuccessNext{
  gap:6px;
  margin-top:12px;
  padding:16px 18px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#faf9f6;
}
.inquirySuccessNext strong{
  font-size:13px!important;
  line-height:1.5!important;
}
.inquirySuccessNext>span:last-of-type{
  font-size:12px!important;
  line-height:1.5!important;
}
.inquirySuccessSupportActions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:8px;
}
.inquirySuccessSupportActions a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  text-align:center;
  text-decoration:none;
  font-size:13px;
}

@media(max-width:760px){
  .inquirySuccessDone{
    padding:22px 0 calc(12px + var(--safe-bottom));
  }
  .inquirySuccessHead{
    margin-bottom:14px;
    text-align:left;
  }
  .inquirySuccessHead h2{
    margin:0!important;
    font-size:27px!important;
    line-height:1.06!important;
  }
  .inquirySuccessHead>p:last-child{
    margin:9px 0 0!important;
    font-size:13px!important;
  }
  .inquirySuccessStep,
  .inquirySuccessNext{
    padding:14px;
    border-radius:16px;
    box-shadow:0 2px 8px #00000008;
  }
  .inquirySuccessStepHead{
    align-items:flex-start;
  }
  .inquirySuccessStep h3{
    font-size:17px!important;
  }
  .inquiryStatusLead,
  .inquirySuccessEmailStep>p{
    font-size:13px!important;
  }
  .inquiryStatusDirectLink{
    font-size:11px!important;
  }
  .inquiryStatusLinkActions{
    grid-template-columns:1fr;
  }
  .inquiryStatusLinkActions button{
    width:100%;
    min-height:50px;
    font-size:14px!important;
  }
  .inquirySuccessSupportActions{
    grid-template-columns:1fr;
  }
  .inquirySuccessSupportActions a{
    width:100%;
    min-height:50px;
    border-radius:12px;
    font-size:14px;
  }
}


/* V4.67 – Mobile Status Warenkorb kompakter + Anfrageabschluss springt nach oben */

@media(max-width:760px){
  /* Anfrage gespeichert: oben sichtbar und kompakter */
  .modalCard{
    scroll-behavior:auto!important;
  }
  .inquirySuccessDone{
    padding:14px 0 calc(10px + var(--safe-bottom))!important;
  }
  .inquirySuccessHead{
    margin-bottom:10px!important;
  }
  .inquirySuccessHead .eyebrow{
    margin-bottom:4px!important;
    font-size:10px!important;
  }
  .inquirySuccessHead h2{
    font-size:24px!important;
    line-height:1.08!important;
  }
  .inquirySuccessHead>p:last-child{
    margin-top:7px!important;
    font-size:12px!important;
    line-height:1.45!important;
  }
  .inquirySuccessSteps{
    gap:8px!important;
  }
  .inquirySuccessStep,
  .inquirySuccessNext{
    padding:12px!important;
    border-radius:13px!important;
  }
  .inquirySuccessStepNumber{
    width:28px!important;
    height:28px!important;
    flex-basis:28px!important;
    font-size:12px!important;
  }
  .inquirySuccessStepKicker{
    font-size:10px!important;
  }
  .inquirySuccessStep h3{
    font-size:16px!important;
  }
  .inquiryStatusLead,
  .inquirySuccessEmailStep>p{
    margin-top:8px!important;
    font-size:12px!important;
    line-height:1.45!important;
  }
  .inquiryStatusDirectLink{
    margin-top:8px!important;
    padding:9px 10px!important;
    font-size:10px!important;
  }
  .inquiryStatusLinkActions{
    gap:6px!important;
    margin-top:8px!important;
  }
  .inquiryStatusLinkActions button,
  .inquirySuccessSupportActions a{
    min-height:44px!important;
    font-size:13px!important;
  }
  .inquiryStatusLinkBox small{
    margin-top:7px!important;
    font-size:10px!important;
  }
  .inquirySuccessNext{
    margin-top:8px!important;
  }
  .inquirySuccessNext strong{
    font-size:12px!important;
  }
  .inquirySuccessNext>span:last-of-type{
    font-size:11px!important;
  }

  /* Status Warenkorb: deutlich kleiner als V4.66 */
  .statusInfoBody{
    font-size:12px!important;
  }
  .statusInfoShell{
    padding:0 9px calc(18px + var(--safe-bottom))!important;
  }

  .statusMobileTopbar{
    min-height:50px!important;
    margin:0 -9px 9px!important;
    padding:calc(7px + var(--safe-top)) 9px 7px!important;
    gap:7px!important;
  }
  .statusMobileBrand{
    gap:1px!important;
  }
  .statusMobileBrand strong{
    font-size:17px!important;
    letter-spacing:-.035em!important;
  }
  .statusMobileBrand span{
    font-size:9px!important;
  }
  .statusMobileState{
    max-width:48%!important;
    padding:5px 7px!important;
    font-size:9px!important;
    line-height:1.15!important;
  }

  .statusHero{
    gap:7px!important;
    padding:4px 0 0!important;
  }
  .statusHero h1{
    font-size:23px!important;
    line-height:1.05!important;
    letter-spacing:-.03em!important;
  }
  .statusHero>div:first-child>p:last-child{
    margin-top:6px!important;
    font-size:11px!important;
    line-height:1.45!important;
  }
  .statusBadgeCard{
    padding:9px 10px!important;
    border-radius:12px!important;
  }
  .statusBadgeCard span{
    font-size:9px!important;
  }
  .statusBadgeCard strong{
    font-size:12px!important;
  }

  .statusMetaGrid{
    gap:6px!important;
    margin:8px 0!important;
  }
  .statusMetaGrid>div{
    padding:8px!important;
    border-radius:12px!important;
  }
  .statusMetaGrid span{
    font-size:9px!important;
  }
  .statusMetaGrid strong{
    font-size:11px!important;
    line-height:1.35!important;
  }

  .statusSection,
  .statusCartCard{
    margin:7px 0!important;
    padding:10px!important;
    border-radius:13px!important;
  }
  .statusSectionHead{
    margin-bottom:8px!important;
  }
  .statusSectionHead h2,
  .statusCartCard h2{
    margin-top:2px!important;
    font-size:16px!important;
    line-height:1.15!important;
  }
  .paySectionKicker{
    font-size:9px!important;
  }
  .payCartHead{
    gap:7px!important;
  }
  .payCartHead>strong{
    padding:4px 6px!important;
    border-radius:7px!important;
    font-size:9px!important;
  }

  .statusCustomerGrid,
  .statusNotesGrid,
  .statusFulfillmentGrid{
    gap:6px!important;
  }
  .statusDataCard,
  .statusNoteCard,
  .statusConfirmCard,
  .statusTrackingCard,
  .statusOrderImageCard{
    padding:9px!important;
    border-radius:11px!important;
  }
  .statusDataCard>span,
  .statusNoteCard>span,
  .statusConfirmCard>span,
  .statusTrackingCard>span,
  .statusOrderImageCard>span{
    font-size:9px!important;
  }
  .statusDataCard strong,
  .statusNoteCard p,
  .statusTrackingCard p,
  .statusOrderImageCard p,
  .statusConfirmCard li{
    font-size:11px!important;
    line-height:1.4!important;
  }
  .statusTrackingCard small,
  .statusOrderImageCard small,
  .statusConfirmCard small{
    font-size:9px!important;
  }

  .statusCartTable tbody{
    gap:7px!important;
  }
  .statusCartTable tbody tr{
    padding:10px!important;
    border-radius:12px!important;
  }
  .statusCartTable td{
    grid-template-columns:78px minmax(0,1fr)!important;
    gap:7px!important;
    padding:6px 0!important;
    font-size:11px!important;
    line-height:1.35!important;
  }
  .statusCartTable td::before{
    font-size:9px!important;
    letter-spacing:.03em!important;
  }
  .statusCartTable td:first-child strong{
    font-size:10px!important;
  }
  .statusCartTable td:first-child span{
    font-size:12px!important;
    line-height:1.3!important;
  }

  .statusCartTotals{
    margin-top:8px!important;
  }
  .statusCartTotals>div{
    padding:6px 0!important;
    font-size:11px!important;
  }
  .statusCartGrandTotal{
    margin-top:2px!important;
    padding-top:9px!important;
  }
  .statusCartGrandTotal strong{
    font-size:15px!important;
  }

  .statusTrackingButton,
  .statusInfoActions .primaryButton,
  .statusInfoActions .ghost,
  .statusRefreshBar--bottom button{
    min-height:44px!important;
    border-radius:10px!important;
    font-size:12px!important;
  }
  .statusOrderImageCard img{
    max-height:240px!important;
    border-radius:10px!important;
  }

  .statusNoPaymentNotice{
    margin-top:7px!important;
    padding:9px 10px!important;
    border-radius:12px!important;
  }
  .statusNoPaymentNotice strong,
  .statusNoPaymentNotice span{
    font-size:10px!important;
    line-height:1.4!important;
  }

  .statusRefreshBar--bottom{
    gap:7px!important;
    margin-top:7px!important;
    padding:9px 10px!important;
    border-radius:12px!important;
  }
  .statusRefreshBar--bottom strong{
    font-size:11px!important;
  }
  .statusRefreshBar--bottom span{
    font-size:10px!important;
    line-height:1.4!important;
  }
  .statusInfoActions{
    gap:6px!important;
    margin-top:7px!important;
  }
}

@media(max-width:430px){
  .statusMetaGrid{
    grid-template-columns:1fr!important;
  }
  .statusHero h1{
    font-size:22px!important;
  }
  .statusMobileBrand strong{
    font-size:16px!important;
  }
  .statusMobileState{
    max-width:52%!important;
    font-size:8px!important;
  }
}

@media(max-width:360px){
  .statusInfoShell{
    padding-left:7px!important;
    padding-right:7px!important;
  }
  .statusMobileTopbar{
    margin-left:-7px!important;
    margin-right:-7px!important;
    padding-left:7px!important;
    padding-right:7px!important;
  }
  .statusCartTable td{
    grid-template-columns:70px minmax(0,1fr)!important;
    gap:6px!important;
  }
}


/* V4.68 – Anfragefenster: Bestätigungen neu sortiert + Kundenprüfungs-Hinweis größer */
.inquiryConfirmations{
  display:grid;
  gap:0;
}
.inquiryRoleNote{
  margin:14px 0 16px!important;
  padding:16px 17px!important;
  border:1px solid #d8d3c9!important;
  border-radius:14px!important;
  background:#faf8f3!important;
  color:var(--ink)!important;
  font-size:13px!important;
  line-height:1.65!important;
}
.inquiryRoleNote::first-line{
  font-weight:800;
}
.inquiryConfirmations .contactCheck{
  margin-top:4px!important;
  padding-top:14px;
  border-top:1px solid var(--soft);
}
@media(max-width:760px){
  .inquiryRoleNote{
    margin:12px 0 14px!important;
    padding:15px!important;
    border-radius:13px!important;
    font-size:13px!important;
    line-height:1.6!important;
  }
  .inquiryConfirmations .contactCheck{
    margin-top:2px!important;
    padding-top:13px;
  }
  .inquirySuccessHead h2{
    font-size:24px!important;
    line-height:1.1!important;
  }
}


/* V4.70 – Anfrageformular neu geordnet, Erfolg oben, Status Mobil komplett neu */

/* ---------------- Anfragefenster: konsistente Typografie ---------------- */
#inquiryModal .modalCard{
  --iq-title:22px;
  --iq-section:16px;
  --iq-body:13px;
  --iq-label:12px;
  --iq-small:11px;
}
#inquiryModal .modalHeader{
  align-items:center;
}
#inquiryModalHeading .eyebrow{
  margin:0 0 4px;
  font-size:10px!important;
  line-height:1.3;
  letter-spacing:.06em;
}
#inquiryModalHeading h2{
  margin:0;
  font-size:var(--iq-title)!important;
  line-height:1.15;
}
.inquiryForm{
  display:grid;
  gap:16px;
  margin-top:18px;
}
.inquiryFormSection{
  display:grid;
  gap:12px;
}
.inquiryFormSectionHead{
  display:grid;
  gap:4px;
}
.inquiryFormSectionHead h3{
  margin:0;
  font-size:var(--iq-section);
  line-height:1.25;
}
.inquiryFormSectionHead p{
  margin:0;
  color:var(--muted);
  font-size:var(--iq-body);
  line-height:1.5;
}
.inquiryContactGrid{
  gap:12px;
}
.inquiryContactGrid label{
  gap:6px;
}
.inquiryContactGrid label>span{
  font-size:var(--iq-label);
  font-weight:700;
  line-height:1.35;
}
.inquiryContactGrid label>span small{
  color:var(--muted);
  font-size:var(--iq-small);
  font-weight:500;
}
.inquiryContactGrid :is(input,select),
.inquiryContactGrid textarea{
  min-height:48px;
  padding:12px 13px;
  border-radius:11px;
  font-size:14px;
  line-height:1.35;
}
.inquiryContactGrid textarea{
  min-height:92px;
}
.inquiryRoleNote{
  display:grid;
  gap:7px;
  margin:0!important;
  padding:16px!important;
  border:1px solid #d7d2c8!important;
  border-radius:14px!important;
  background:#faf8f3!important;
}
.inquiryRoleNote strong{
  font-size:var(--iq-section);
  line-height:1.3;
}
.inquiryRoleNote span{
  color:#55514b;
  font-size:var(--iq-body);
  line-height:1.65;
}
.inquiryConfirmationsSection{
  padding-top:2px;
}
.inquiryConfirmations{
  gap:0!important;
}
.inquiryConfirmations .checkRow{
  margin:0!important;
  padding:12px 0;
  border-bottom:1px solid var(--soft);
  gap:10px;
}
.inquiryConfirmations .checkRow:last-child{
  border-bottom:0;
}
.inquiryConfirmations .checkRow input{
  flex:0 0 20px;
  width:20px!important;
  height:20px;
  margin:0!important;
}
.inquiryConfirmations .checkRow span{
  font-size:var(--iq-body)!important;
  line-height:1.5!important;
}
.inquiryConfirmations .contactCheck{
  margin:0!important;
  padding-top:12px!important;
  border-top:0!important;
}
.inquiryPrivacyNote{
  margin:0!important;
  padding:11px 12px;
  border-radius:11px;
  background:var(--soft);
  font-size:var(--iq-small)!important;
  line-height:1.5!important;
}
.inquirySubmitButton{
  min-height:50px;
  border-radius:12px;
  font-size:14px;
}

/* ---------------- Erfolg: immer am sichtbaren Anfang ---------------- */
.modalCard.inquirySuccessMode{
  scroll-padding-top:0!important;
}
.modalCard.inquirySuccessMode .modalHeader{
  position:absolute!important;
  top:10px;
  right:10px;
  z-index:8;
  width:auto;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  backdrop-filter:none!important;
}
.modalCard.inquirySuccessMode .modalHeader #inquiryModalHeading{
  display:none!important;
}
.modalCard.inquirySuccessMode .modalHeader .iconButton{
  background:rgba(255,255,255,.94);
  box-shadow:0 2px 10px #00000010;
}
.inquirySuccessDone{
  width:100%;
  max-width:700px;
  margin:0 auto;
  padding:18px 0 12px!important;
}
.inquirySuccessHead{
  max-width:620px;
  margin:0 auto 14px!important;
  padding-right:46px;
}
.inquirySuccessHead .eyebrow{
  margin:0 0 5px!important;
  font-size:10px!important;
  line-height:1.3;
}
.inquirySuccessHead h2{
  margin:0!important;
  font-size:28px!important;
  line-height:1.1!important;
  letter-spacing:-.025em;
}
.inquirySuccessSteps{
  gap:10px!important;
}
.inquirySuccessStep,
.inquirySuccessNext{
  padding:14px!important;
  border-radius:14px!important;
}
.inquirySuccessStepKicker{
  font-size:10px!important;
}
.inquirySuccessStep h3{
  font-size:17px!important;
}
.inquiryStatusLead,
.inquirySuccessEmailStep>p{
  font-size:13px!important;
  line-height:1.5!important;
}

/* ---------------- Status: dedicated mobile UI ---------------- */
.statusMobileOverview{
  display:none;
}

@media(max-width:760px){
  /* Anfragefenster */
  #inquiryModal .modalCard{
    --iq-title:20px;
    --iq-section:15px;
    --iq-body:13px;
    --iq-label:12px;
    --iq-small:11px;
    padding:0 13px calc(18px + var(--safe-bottom))!important;
  }
  #inquiryModal .modalHeader{
    margin:0 -13px!important;
    padding:calc(11px + var(--safe-top)) 13px 10px!important;
  }
  #inquiryModalHeading h2{
    font-size:20px!important;
  }
  .inquiryForm{
    gap:14px;
    margin-top:14px;
  }
  .inquiryFormSection{
    gap:10px;
  }
  .inquiryFormSectionHead{
    gap:3px;
  }
  .inquiryContactGrid{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .inquiryContactGrid .wide{
    grid-column:auto!important;
  }
  .inquiryContactGrid :is(input,select),
  .inquiryContactGrid textarea{
    min-height:48px!important;
    padding:11px 12px!important;
    border-radius:10px!important;
    font-size:16px!important;
  }
  .inquiryContactGrid textarea{
    min-height:84px!important;
  }
  .inquiryRoleNote{
    gap:6px;
    padding:14px!important;
    border-radius:12px!important;
  }
  .inquiryRoleNote span{
    line-height:1.58;
  }
  .inquiryConfirmations .checkRow{
    padding:11px 0;
  }
  .inquiryConfirmations .checkRow input{
    flex-basis:22px;
    width:22px!important;
    height:22px;
  }
  .inquiryPrivacyNote{
    padding:10px 11px;
  }
  .inquirySubmitButton{
    width:100%;
    min-height:50px;
  }

  /* Erfolg wirklich ab Bildschirmoberkante */
  .modalCard.inquirySuccessMode{
    padding-top:0!important;
  }
  .modalCard.inquirySuccessMode .modalHeader{
    top:calc(8px + var(--safe-top));
    right:8px;
  }
  .inquirySuccessDone{
    padding:calc(12px + var(--safe-top)) 0 calc(12px + var(--safe-bottom))!important;
  }
  .inquirySuccessHead{
    margin:0 0 11px!important;
    padding-right:44px;
    text-align:left!important;
  }
  .inquirySuccessHead h2{
    font-size:23px!important;
    line-height:1.1!important;
  }
  .inquirySuccessStep,
  .inquirySuccessNext{
    padding:12px!important;
    border-radius:12px!important;
  }

  /* Status Mobil: Desktop-Ansicht komplett ausblenden */
  .statusInfoBody{
    background:#f4f3ef!important;
    font-size:13px!important;
  }
  .statusInfoShell{
    width:100%!important;
    margin:0!important;
    padding:0 10px calc(18px + var(--safe-bottom))!important;
  }
  .statusInfoCard{
    display:flex!important;
    flex-direction:column;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .statusMobileTopbar{
    order:0;
    min-height:48px!important;
    margin:0 -10px 10px!important;
    padding:calc(7px + var(--safe-top)) 10px 7px!important;
    border-bottom:1px solid var(--line);
    background:rgba(244,243,239,.98)!important;
  }
  .statusMobileBrand strong{
    font-size:17px!important;
  }
  .statusMobileBrand span{
    display:none!important;
  }
  .statusMobileState{
    display:none!important;
  }

  .statusHero,
  .statusMetaGrid{
    display:none!important;
  }

  .statusMobileOverview{
    order:1;
    display:grid;
    gap:10px;
    margin:0 0 9px;
    padding:14px;
    border:1px solid var(--line);
    border-radius:16px;
    background:#fff;
    box-shadow:0 2px 8px #00000008;
  }
  .statusMobileOverviewHead{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:4px 8px;
    align-items:center;
  }
  .statusMobileOverline{
    grid-column:1/-1;
    color:var(--muted);
    font-size:9px;
    font-weight:800;
    letter-spacing:.06em;
  }
  .statusMobileOverviewHead h1{
    margin:0;
    font-size:22px;
    line-height:1.08;
    letter-spacing:-.035em;
  }
  .statusMobileStatusChip{
    max-width:150px;
    padding:6px 9px;
    border-radius:999px;
    background:var(--ink);
    color:#fff;
    font-size:10px;
    font-weight:800;
    line-height:1.2;
    text-align:center;
  }
  .statusMobileFacts{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1px;
    overflow:hidden;
    border:1px solid var(--soft);
    border-radius:12px;
    background:var(--soft);
  }
  .statusMobileFacts>div{
    display:grid;
    gap:3px;
    min-width:0;
    padding:9px 10px;
    background:#faf9f6;
  }
  .statusMobileFacts span{
    color:var(--muted);
    font-size:9px;
    font-weight:700;
  }
  .statusMobileFacts strong{
    overflow-wrap:anywhere;
    font-size:11px;
    line-height:1.35;
  }

  /* Reihenfolge: Warenkorb > Versand > Kundendaten > Vereinbarungen */
  .statusCartCard{order:2}
  .statusFulfillmentSection{order:3}
  .statusCustomerSection{order:4}
  .statusAgreementSection{order:5}
  .statusNoPaymentNotice{order:6}
  .statusRefreshBar--bottom{order:7}
  .statusInfoActions{order:8}

  .statusSection,
  .statusCartCard{
    margin:0 0 9px!important;
    padding:12px!important;
    border:1px solid var(--line)!important;
    border-radius:15px!important;
    background:#fff!important;
    box-shadow:0 2px 8px #00000008;
  }
  .statusSectionHead,
  .payCartHead{
    margin-bottom:9px!important;
  }
  .paySectionKicker{
    font-size:9px!important;
    letter-spacing:.055em!important;
  }
  .statusSectionHead h2,
  .statusCartCard h2{
    margin:2px 0 0!important;
    font-size:16px!important;
    line-height:1.2!important;
  }
  .payCartHead>strong{
    padding:5px 7px!important;
    border-radius:8px!important;
    background:var(--soft)!important;
    font-size:9px!important;
  }

  /* Warenkorb: jedes Produkt als kompakte Shop-Karte */
  .statusCartTableWrap{
    overflow:visible!important;
  }
  .statusCartTable,
  .statusCartTable thead,
  .statusCartTable tbody,
  .statusCartTable tr,
  .statusCartTable td{
    display:block;
    width:100%;
  }
  .statusCartTable thead{
    display:none!important;
  }
  .statusCartTable tbody{
    display:grid;
    gap:7px!important;
  }
  .statusCartTable tbody tr{
    display:grid;
    gap:0;
    padding:10px!important;
    border:1px solid var(--soft)!important;
    border-radius:12px!important;
    background:#faf9f6!important;
    box-shadow:none!important;
  }
  .statusCartTable td{
    display:grid;
    grid-template-columns:80px minmax(0,1fr)!important;
    gap:8px!important;
    align-items:start;
    padding:6px 0!important;
    border:0!important;
    border-bottom:1px solid #ebe8e1!important;
    font-size:11px!important;
    line-height:1.35!important;
    text-align:right!important;
  }
  .statusCartTable td:last-child{
    border-bottom:0!important;
  }
  .statusCartTable td::before{
    content:attr(data-label);
    color:var(--muted);
    font-size:9px!important;
    font-weight:800;
    letter-spacing:.035em;
    text-align:left;
    text-transform:uppercase;
  }
  .statusCartTable td:first-child>strong,
  .statusCartTable td:first-child>span{
    grid-column:2;
    text-align:right;
  }
  .statusCartTable td:first-child::before{
    grid-column:1;
    grid-row:1/3;
  }
  .statusCartTable td:first-child strong{
    font-size:10px!important;
  }
  .statusCartTable td:first-child span{
    font-size:12px!important;
    font-weight:800;
    line-height:1.25;
  }
  .statusCartTotals{
    width:100%;
    margin-top:9px!important;
  }
  .statusCartTotals>div{
    padding:6px 0!important;
    font-size:11px!important;
  }
  .statusCartGrandTotal{
    margin-top:2px!important;
    padding-top:9px!important;
  }
  .statusCartGrandTotal strong{
    font-size:15px!important;
  }

  /* Daten nicht als viele große Karten, sondern kompakte Zeilen */
  .statusCustomerGrid,
  .statusNotesGrid,
  .statusFulfillmentGrid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:1px!important;
    overflow:hidden;
    border:1px solid var(--soft);
    border-radius:11px;
    background:var(--soft);
  }
  .statusDataCard,
  .statusNoteCard,
  .statusConfirmCard,
  .statusTrackingCard,
  .statusOrderImageCard{
    padding:9px 10px!important;
    border:0!important;
    border-radius:0!important;
    background:#faf9f6!important;
  }
  .statusDataCard>span,
  .statusNoteCard>span,
  .statusConfirmCard>span,
  .statusTrackingCard>span,
  .statusOrderImageCard>span{
    font-size:9px!important;
  }
  .statusDataCard strong,
  .statusNoteCard p,
  .statusTrackingCard p,
  .statusOrderImageCard p,
  .statusConfirmCard li{
    font-size:11px!important;
    line-height:1.4!important;
  }
  .statusAddressCard address{
    margin-top:4px;
  }
  .statusTrackingButton{
    min-height:40px!important;
    margin-top:7px!important;
    border-radius:9px!important;
    font-size:11px!important;
  }
  .statusTrackingCard small,
  .statusOrderImageCard small,
  .statusConfirmCard small{
    font-size:9px!important;
    line-height:1.4!important;
  }
  .statusOrderImageCard img{
    max-height:210px!important;
    margin-top:7px;
    border-radius:9px!important;
  }

  .statusNoPaymentNotice,
  .statusRefreshBar--bottom{
    margin:0 0 9px!important;
    padding:10px 11px!important;
    border:1px solid var(--line)!important;
    border-radius:13px!important;
    background:#fff!important;
    box-shadow:0 2px 8px #00000008;
  }
  .statusNoPaymentNotice strong,
  .statusNoPaymentNotice span{
    font-size:10px!important;
    line-height:1.4!important;
  }
  .statusRefreshBar--bottom{
    display:grid!important;
    gap:7px!important;
  }
  .statusRefreshBar--bottom strong{
    font-size:11px!important;
  }
  .statusRefreshBar--bottom span{
    font-size:10px!important;
    line-height:1.4!important;
  }
  .statusRefreshBar--bottom button{
    width:100%!important;
    min-height:40px!important;
    border-radius:9px!important;
    font-size:11px!important;
  }
  .statusInfoActions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    margin:0!important;
  }
  .statusInfoActions a{
    width:100%!important;
    min-height:42px!important;
    padding:9px!important;
    border-radius:10px!important;
    font-size:10px!important;
    text-align:center;
    justify-content:center;
  }
}

@media(max-width:430px){
  .statusMobileFacts{
    grid-template-columns:1fr 1fr!important;
  }
  .statusMobileOverviewHead{
    grid-template-columns:1fr;
  }
  .statusMobileStatusChip{
    justify-self:start;
    max-width:none;
  }
  .statusCartTable td{
    grid-template-columns:72px minmax(0,1fr)!important;
  }
  .statusInfoActions{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:360px){
  .statusInfoShell{
    padding-left:7px!important;
    padding-right:7px!important;
  }
  .statusMobileTopbar{
    margin-left:-7px!important;
    margin-right:-7px!important;
    padding-left:7px!important;
    padding-right:7px!important;
  }
  .statusMobileOverview,
  .statusSection,
  .statusCartCard{
    padding:10px!important;
    border-radius:13px!important;
  }
  .statusMobileOverviewHead h1{
    font-size:20px;
  }
  .statusMobileFacts>div{
    padding:8px;
  }
  .statusCartTable td{
    grid-template-columns:66px minmax(0,1fr)!important;
    gap:6px!important;
  }
}


/* V4.71 – Bestätigungen optisch bereinigt + Supportkontakt grün hervorgehoben */
.inquiryConfirmationsSection{
  display:grid;
  gap:10px;
}
.inquiryConfirmationsSection .inquiryFormSectionHead{
  gap:4px;
  margin-bottom:1px;
}
.inquiryConfirmationsSection .inquiryFormSectionHead h3{
  margin:0;
  font-size:16px!important;
  line-height:1.25;
}
.inquiryConfirmationsSection .inquiryFormSectionHead p{
  margin:0;
  color:var(--muted);
  font-size:12px!important;
  line-height:1.45;
}

.inquiryConfirmations{
  display:grid!important;
  gap:8px!important;
}
.inquiryConfirmations .checkRow{
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr);
  gap:10px!important;
  align-items:start!important;
  margin:0!important;
  padding:12px 13px!important;
  border:1px solid var(--line)!important;
  border-radius:12px!important;
  background:#fff!important;
}
.inquiryConfirmations .checkRow input{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  margin:1px 0 0!important;
  accent-color:var(--ink);
}
.inquiryConfirmations .checkRow span{
  display:block;
  min-width:0;
  color:var(--ink);
  font-size:13px!important;
  line-height:1.5!important;
  font-weight:500!important;
}
.inquiryConfirmations .checkRow a{
  color:var(--ink);
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:2px;
}

/* Supportkontakt bewusst als positiv hervorgehobene Bestätigung */
.inquiryConfirmations .contactCheck{
  margin:0!important;
  padding:13px!important;
  border:1px solid #b8ddc0!important;
  border-radius:12px!important;
  background:#edf8ef!important;
  box-shadow:0 1px 0 rgba(35,110,52,.04);
}
.inquiryConfirmations .contactCheck input{
  accent-color:#2f7d3c;
}
.inquiryConfirmations .contactCheck span{
  color:#245b2e!important;
  font-weight:650!important;
}

@media(max-width:760px){
  .inquiryConfirmationsSection{
    gap:9px;
  }
  .inquiryConfirmations{
    gap:7px!important;
  }
  .inquiryConfirmations .checkRow{
    grid-template-columns:22px minmax(0,1fr);
    gap:9px!important;
    padding:11px 12px!important;
    border-radius:11px!important;
  }
  .inquiryConfirmations .checkRow input{
    width:21px!important;
    height:21px!important;
    min-width:21px!important;
    margin-top:0!important;
  }
  .inquiryConfirmations .checkRow span{
    font-size:12px!important;
    line-height:1.5!important;
  }
  .inquiryConfirmations .contactCheck{
    padding:12px!important;
  }
}

@media(max-width:380px){
  .inquiryConfirmations .checkRow{
    grid-template-columns:21px minmax(0,1fr);
    gap:8px!important;
    padding:10px!important;
  }
  .inquiryConfirmations .checkRow span{
    font-size:11.5px!important;
  }
}


/* V4.72 – Bestätigungen kompakter + mobil senkrecht zentriert */
.inquiryConfirmationsSection{
  gap:6px!important;
}
.inquiryConfirmationsSection .inquiryFormSectionHead{
  gap:2px!important;
  margin-bottom:0!important;
}
.inquiryConfirmationsSection .inquiryFormSectionHead h3{
  margin:0!important;
}
.inquiryConfirmationsSection .inquiryFormSectionHead p{
  margin:0!important;
  line-height:1.4!important;
}
.inquiryConfirmations{
  gap:6px!important;
}
.inquiryConfirmations .checkRow{
  padding:9px 11px!important;
  gap:9px!important;
}
.inquiryConfirmations .contactCheck{
  padding:10px 11px!important;
}

@media(max-width:760px){
  .inquiryConfirmationsSection{
    gap:5px!important;
  }
  .inquiryConfirmationsSection .inquiryFormSectionHead{
    gap:1px!important;
    margin-bottom:0!important;
  }
  .inquiryConfirmations{
    gap:5px!important;
  }
  .inquiryConfirmations .checkRow{
    grid-template-columns:22px minmax(0,1fr)!important;
    align-items:center!important;
    min-height:52px;
    padding:8px 10px!important;
    gap:8px!important;
  }
  .inquiryConfirmations .checkRow input{
    align-self:center!important;
    margin:0!important;
  }
  .inquiryConfirmations .checkRow span{
    align-self:center!important;
  }
  .inquiryConfirmations .contactCheck{
    padding:9px 10px!important;
  }
}

@media(max-width:380px){
  .inquiryConfirmations .checkRow{
    min-height:50px;
    padding:8px 9px!important;
  }
}


/* V4.74 – Status Ihrer Warenkorbanfrage für 320px optimiert */
@media(max-width:340px){
  .statusInfoBody{
    overflow-x:hidden!important;
  }
  .statusInfoShell{
    width:100%!important;
    max-width:100%!important;
    padding-left:5px!important;
    padding-right:5px!important;
  }
  .statusInfoCard,
  .statusMobileOverview,
  .statusSection,
  .statusCartCard,
  .statusNoPaymentNotice,
  .statusRefreshBar--bottom{
    min-width:0!important;
    max-width:100%!important;
  }

  .statusMobileTopbar{
    min-height:44px!important;
    margin-left:-5px!important;
    margin-right:-5px!important;
    margin-bottom:6px!important;
    padding-left:7px!important;
    padding-right:7px!important;
    padding-top:calc(6px + var(--safe-top))!important;
    padding-bottom:6px!important;
  }
  .statusMobileBrand{
    min-width:0!important;
  }
  .statusMobileBrand strong{
    font-size:15px!important;
    line-height:1!important;
  }

  .statusMobileOverview{
    gap:7px!important;
    margin-bottom:6px!important;
    padding:9px!important;
    border-radius:11px!important;
  }
  .statusMobileOverviewHead{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:4px!important;
    min-width:0!important;
  }
  .statusMobileOverline{
    display:block!important;
    max-width:100%!important;
    font-size:8px!important;
    line-height:1.25!important;
    letter-spacing:.025em!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  .statusMobileOverviewHead h1{
    margin:0!important;
    font-size:18px!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
    overflow-wrap:anywhere!important;
  }
  .statusMobileStatusChip{
    justify-self:start!important;
    max-width:100%!important;
    padding:5px 7px!important;
    font-size:9px!important;
    line-height:1.2!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }

  .statusMobileFacts{
    grid-template-columns:1fr 1fr!important;
    min-width:0!important;
    border-radius:9px!important;
  }
  .statusMobileFacts>div{
    min-width:0!important;
    padding:7px!important;
  }
  .statusMobileFacts span{
    font-size:8px!important;
  }
  .statusMobileFacts strong{
    min-width:0!important;
    font-size:10px!important;
    line-height:1.25!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
  }

  .statusSection,
  .statusCartCard{
    margin-bottom:6px!important;
    padding:9px!important;
    border-radius:11px!important;
  }
  .statusSectionHead,
  .payCartHead{
    gap:6px!important;
    margin-bottom:7px!important;
  }
  .paySectionKicker{
    font-size:8px!important;
  }
  .statusSectionHead h2,
  .statusCartCard h2{
    font-size:14px!important;
    line-height:1.15!important;
  }
  .payCartHead>strong{
    flex:0 0 auto;
    padding:4px 5px!important;
    font-size:8px!important;
    white-space:nowrap!important;
  }

  .statusCartTable tbody{
    gap:5px!important;
  }
  .statusCartTable tbody tr{
    min-width:0!important;
    padding:8px!important;
    border-radius:9px!important;
  }
  .statusCartTable td{
    grid-template-columns:58px minmax(0,1fr)!important;
    gap:5px!important;
    min-width:0!important;
    padding:5px 0!important;
    font-size:10px!important;
    line-height:1.3!important;
    text-align:right!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
  }
  .statusCartTable td::before{
    min-width:0!important;
    font-size:8px!important;
    line-height:1.25!important;
    overflow-wrap:anywhere!important;
  }
  .statusCartTable td:first-child strong{
    font-size:9px!important;
  }
  .statusCartTable td:first-child span{
    font-size:11px!important;
    line-height:1.25!important;
  }

  .statusCartTotals{
    margin-top:6px!important;
  }
  .statusCartTotals>div{
    gap:8px!important;
    padding:5px 0!important;
    font-size:10px!important;
    line-height:1.3!important;
  }
  .statusCartTotals>div span{
    min-width:0!important;
  }
  .statusCartTotals>div strong{
    flex:0 0 auto;
    white-space:nowrap!important;
  }
  .statusCartGrandTotal{
    padding-top:7px!important;
  }
  .statusCartGrandTotal strong{
    font-size:13px!important;
  }

  .statusCustomerGrid,
  .statusNotesGrid,
  .statusFulfillmentGrid{
    border-radius:9px!important;
  }
  .statusDataCard,
  .statusNoteCard,
  .statusConfirmCard,
  .statusTrackingCard,
  .statusOrderImageCard{
    min-width:0!important;
    padding:8px!important;
  }
  .statusDataCard>span,
  .statusNoteCard>span,
  .statusConfirmCard>span,
  .statusTrackingCard>span,
  .statusOrderImageCard>span{
    font-size:8px!important;
  }
  .statusDataCard strong,
  .statusDataCard address,
  .statusDataCard address strong,
  .statusNoteCard p,
  .statusTrackingCard p,
  .statusOrderImageCard p,
  .statusConfirmCard li,
  .statusTrackingCard small,
  .statusOrderImageCard small,
  .statusConfirmCard small{
    max-width:100%!important;
    font-size:10px!important;
    line-height:1.35!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
  }

  .statusTrackingButton{
    width:100%!important;
    min-height:38px!important;
    padding:8px!important;
    font-size:10px!important;
  }
  .statusOrderImageCard img{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:180px!important;
    object-fit:contain!important;
  }

  .statusNoPaymentNotice,
  .statusRefreshBar--bottom{
    margin-bottom:6px!important;
    padding:8px!important;
    border-radius:10px!important;
  }
  .statusNoPaymentNotice strong,
  .statusNoPaymentNotice span,
  .statusRefreshBar--bottom strong,
  .statusRefreshBar--bottom span{
    font-size:9px!important;
    line-height:1.35!important;
  }
  .statusRefreshBar--bottom button{
    min-height:38px!important;
    padding:8px!important;
    font-size:10px!important;
  }

  .statusInfoActions{
    grid-template-columns:1fr!important;
    gap:5px!important;
  }
  .statusInfoActions a{
    min-width:0!important;
    min-height:40px!important;
    padding:8px!important;
    font-size:10px!important;
    line-height:1.2!important;
    overflow-wrap:anywhere!important;
  }
}

@media(max-width:320px){
  .statusInfoShell{
    padding-left:4px!important;
    padding-right:4px!important;
  }
  .statusMobileTopbar{
    margin-left:-4px!important;
    margin-right:-4px!important;
    padding-left:6px!important;
    padding-right:6px!important;
  }
  .statusMobileOverview,
  .statusSection,
  .statusCartCard{
    padding:8px!important;
  }
  .statusMobileOverviewHead h1{
    font-size:17px!important;
  }
  .statusMobileFacts>div{
    padding:6px!important;
  }
  .statusCartTable td{
    grid-template-columns:54px minmax(0,1fr)!important;
    gap:4px!important;
  }
  .statusCartTotals>div{
    gap:6px!important;
  }
}


/* V4.75 – Status Mobil: zentrierter 320px-Inhalt + optisch ausgezoomte Darstellung */
@media(max-width:760px){
  .statusInfoBody{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    overflow-x:hidden!important;
    background:#eceae5!important;
  }

  /* Gesamter Status-Inhalt bleibt auf Mobilgeräten maximal 320px breit */
  .statusInfoShell{
    width:min(320px,100vw)!important;
    max-width:320px!important;
    min-width:0!important;
    margin:0 auto!important;
    padding:0 5px calc(14px + var(--safe-bottom))!important;
    box-sizing:border-box!important;
  }

  .statusInfoCard{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  /* Topbar gehört jetzt ebenfalls zum 320px-Inhalt und läuft nicht mehr Bildschirm-breit */
  .statusMobileTopbar{
    width:100%!important;
    max-width:100%!important;
    min-height:42px!important;
    margin:0 0 6px!important;
    padding:calc(5px + var(--safe-top)) 6px 5px!important;
    border:1px solid var(--line)!important;
    border-top:0!important;
    border-radius:0 0 10px 10px!important;
    box-sizing:border-box!important;
  }
  .statusMobileBrand strong{
    font-size:14px!important;
    line-height:1!important;
  }

  /* Hauptübersicht bewusst kleiner / ausgezoomter */
  .statusMobileOverview{
    gap:6px!important;
    margin:0 0 6px!important;
    padding:8px!important;
    border-radius:10px!important;
  }
  .statusMobileOverviewHead{
    gap:3px!important;
  }
  .statusMobileOverline{
    font-size:7.5px!important;
    line-height:1.2!important;
    letter-spacing:.02em!important;
  }
  .statusMobileOverviewHead h1{
    font-size:16px!important;
    line-height:1.08!important;
    letter-spacing:-.02em!important;
  }
  .statusMobileStatusChip{
    padding:4px 6px!important;
    font-size:8px!important;
    line-height:1.15!important;
  }

  .statusMobileFacts{
    border-radius:8px!important;
  }
  .statusMobileFacts>div{
    padding:6px!important;
  }
  .statusMobileFacts span{
    font-size:7.5px!important;
  }
  .statusMobileFacts strong{
    font-size:9px!important;
    line-height:1.25!important;
  }

  /* Alle Statuskarten kompakter */
  .statusSection,
  .statusCartCard{
    margin:0 0 6px!important;
    padding:8px!important;
    border-radius:10px!important;
  }
  .statusSectionHead,
  .payCartHead{
    margin-bottom:6px!important;
    gap:5px!important;
  }
  .paySectionKicker{
    font-size:7.5px!important;
    letter-spacing:.035em!important;
  }
  .statusSectionHead h2,
  .statusCartCard h2{
    font-size:13px!important;
    line-height:1.15!important;
  }
  .payCartHead>strong{
    padding:3px 5px!important;
    font-size:7.5px!important;
    border-radius:6px!important;
  }

  /* Produktkarten schmal und auf 320px abgestimmt */
  .statusCartTable tbody{
    gap:5px!important;
  }
  .statusCartTable tbody tr{
    padding:7px!important;
    border-radius:8px!important;
  }
  .statusCartTable td{
    grid-template-columns:52px minmax(0,1fr)!important;
    gap:5px!important;
    padding:4px 0!important;
    font-size:9px!important;
    line-height:1.25!important;
  }
  .statusCartTable td::before{
    font-size:7.5px!important;
    line-height:1.2!important;
  }
  .statusCartTable td:first-child strong{
    font-size:8px!important;
  }
  .statusCartTable td:first-child span{
    font-size:10px!important;
    line-height:1.2!important;
  }

  .statusCartTotals{
    margin-top:5px!important;
  }
  .statusCartTotals>div{
    gap:5px!important;
    padding:4px 0!important;
    font-size:9px!important;
    line-height:1.25!important;
  }
  .statusCartGrandTotal{
    padding-top:6px!important;
  }
  .statusCartGrandTotal strong{
    font-size:12px!important;
  }

  /* Kunden-, Versand- und Vereinbarungsdaten kompakter */
  .statusCustomerGrid,
  .statusNotesGrid,
  .statusFulfillmentGrid{
    border-radius:8px!important;
  }
  .statusDataCard,
  .statusNoteCard,
  .statusConfirmCard,
  .statusTrackingCard,
  .statusOrderImageCard{
    padding:7px!important;
  }
  .statusDataCard>span,
  .statusNoteCard>span,
  .statusConfirmCard>span,
  .statusTrackingCard>span,
  .statusOrderImageCard>span{
    font-size:7.5px!important;
  }
  .statusDataCard strong,
  .statusDataCard address,
  .statusDataCard address strong,
  .statusNoteCard p,
  .statusTrackingCard p,
  .statusOrderImageCard p,
  .statusConfirmCard li{
    font-size:9px!important;
    line-height:1.3!important;
  }
  .statusTrackingCard small,
  .statusOrderImageCard small,
  .statusConfirmCard small{
    font-size:7.5px!important;
    line-height:1.3!important;
  }

  .statusTrackingButton{
    min-height:34px!important;
    padding:6px!important;
    border-radius:8px!important;
    font-size:9px!important;
  }
  .statusOrderImageCard img{
    max-height:160px!important;
    border-radius:8px!important;
  }

  .statusNoPaymentNotice,
  .statusRefreshBar--bottom{
    margin:0 0 6px!important;
    padding:7px!important;
    border-radius:9px!important;
  }
  .statusNoPaymentNotice strong,
  .statusNoPaymentNotice span,
  .statusRefreshBar--bottom strong,
  .statusRefreshBar--bottom span{
    font-size:8px!important;
    line-height:1.3!important;
  }
  .statusRefreshBar--bottom{
    gap:5px!important;
  }
  .statusRefreshBar--bottom button{
    min-height:34px!important;
    padding:6px!important;
    border-radius:8px!important;
    font-size:9px!important;
  }

  .statusInfoActions{
    grid-template-columns:1fr!important;
    gap:5px!important;
  }
  .statusInfoActions a{
    min-height:36px!important;
    padding:6px!important;
    border-radius:8px!important;
    font-size:9px!important;
    line-height:1.15!important;
  }
}

/* Auf Geräten unter 320px passt sich der 320px-Rahmen automatisch der echten Breite an */
@media(max-width:320px){
  .statusInfoShell{
    width:100vw!important;
    max-width:100vw!important;
    padding-left:4px!important;
    padding-right:4px!important;
  }
  .statusMobileOverviewHead h1{
    font-size:15px!important;
  }
  .statusCartTable td{
    grid-template-columns:48px minmax(0,1fr)!important;
    gap:4px!important;
  }
}


/* V4.76 – Vereinbarter Warenkorb mobil vollständig ohne horizontales Scrollen */
@media(max-width:760px){
  .statusCartCard{
    overflow:hidden!important;
  }

  .statusCartTableWrap{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:auto!important;
  }

  .statusCartTable{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    table-layout:fixed!important;
  }

  .statusCartTable tbody,
  .statusCartTable tbody tr,
  .statusCartTable td{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  /* Jede Position als kompakte Karte innerhalb der verfügbaren Breite */
  .statusCartTable tbody tr{
    width:100%!important;
    overflow:hidden!important;
  }

  .statusCartTable td{
    display:grid!important;
    grid-template-columns:minmax(0,72px) minmax(0,1fr)!important;
    width:100%!important;
    column-gap:7px!important;
    row-gap:2px!important;
    white-space:normal!important;
    overflow:hidden!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
  }

  .statusCartTable td::before{
    min-width:0!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
  }

  .statusCartTable td > *{
    min-width:0!important;
    max-width:100%!important;
  }

  .statusCartTable td:first-child strong,
  .statusCartTable td:first-child span{
    min-width:0!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
  }

  /* Preise und Mengen bleiben kompakt, ohne die Karte breiter zu drücken */
  .statusCartTable td[data-label="Menge"],
  .statusCartTable td[data-label="Packpreis"],
  .statusCartTable td[data-label="Summe"]{
    align-items:center!important;
  }

  .statusCartTotals{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }

  .statusCartTotals>div{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
    width:100%!important;
    min-width:0!important;
  }

  .statusCartTotals>div span{
    min-width:0!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }

  .statusCartTotals>div strong{
    min-width:0!important;
    max-width:120px!important;
    text-align:right!important;
    white-space:nowrap!important;
  }
}

@media(max-width:340px){
  .statusCartTable td{
    grid-template-columns:minmax(0,56px) minmax(0,1fr)!important;
    column-gap:5px!important;
  }

  .statusCartTable td::before{
    font-size:7.5px!important;
  }

  .statusCartTotals>div{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:5px!important;
  }

  .statusCartTotals>div strong{
    max-width:104px!important;
  }
}

@media(max-width:320px){
  .statusCartCard{
    padding:7px!important;
  }

  .statusCartTable tbody tr{
    padding:7px!important;
  }

  .statusCartTable td{
    grid-template-columns:minmax(0,52px) minmax(0,1fr)!important;
    column-gap:4px!important;
    padding:4px 0!important;
  }

  .statusCartTable td:first-child span{
    font-size:9.5px!important;
  }

  .statusCartTotals>div{
    font-size:8.5px!important;
  }

  .statusCartTotals>div strong{
    max-width:96px!important;
    font-size:9px!important;
  }

  .statusCartGrandTotal strong{
    font-size:11px!important;
  }
}


/* V4.78 – Status Ihrer Warenkorbanfrage: mobiler Gesamtinhalt maximal 480px */
@media(max-width:760px){
  .statusInfoShell{
    width:min(480px,100vw)!important;
    max-width:480px!important;
    min-width:0!important;
    margin:0 auto!important;
    padding-left:8px!important;
    padding-right:8px!important;
    box-sizing:border-box!important;
  }

  .statusInfoCard{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .statusMobileTopbar{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}

/* Kleine Geräte bleiben weiterhin sauber innerhalb ihrer echten Displaybreite */
@media(max-width:480px){
  .statusInfoShell{
    width:100vw!important;
    max-width:100vw!important;
  }
}

@media(max-width:340px){
  .statusInfoShell{
    padding-left:5px!important;
    padding-right:5px!important;
  }
}

@media(max-width:320px){
  .statusInfoShell{
    padding-left:4px!important;
    padding-right:4px!important;
  }
}


/* V4.79 – Status-Aktualisierung nur noch als Symbol, Polling alle 8 Sekunden */
.statusRefreshIconBar{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  width:100%!important;
  min-height:0!important;
  margin:8px 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.statusRefreshIconButton{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  min-width:38px;
  min-height:38px;
  padding:0;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:var(--ink);
  cursor:pointer;
  box-shadow:0 2px 8px #0000000a;
}
.statusRefreshIconButton svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  transform-origin:50% 50%;
}
.statusRefreshIconButton:hover{
  background:var(--soft);
}
.statusRefreshIconButton:focus-visible{
  outline:2px solid currentColor;
  outline-offset:2px;
}
.statusRefreshIconButton.isChecking svg{
  animation:pdStatusRefreshSpin .7s linear infinite;
}
@keyframes pdStatusRefreshSpin{
  to{transform:rotate(360deg);}
}

@media(max-width:760px){
  .statusRefreshIconBar{
    margin:2px 0 7px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .statusRefreshIconButton{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
  }
  .statusRefreshIconButton svg{
    width:15px!important;
    height:15px!important;
  }
}


/* V4.80 – Aktualisieren-Symbol stärker sichtbar */
.statusRefreshIconBar{
  margin:10px 0!important;
}
.statusRefreshIconButton{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  border:2px solid #111!important;
  background:#111!important;
  color:#fff!important;
  box-shadow:0 4px 14px rgba(0,0,0,.18)!important;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease!important;
}
.statusRefreshIconButton svg{
  width:20px!important;
  height:20px!important;
  stroke-width:2.3!important;
}
.statusRefreshIconButton:hover{
  background:#2a2a2a!important;
  transform:translateY(-1px);
  box-shadow:0 6px 16px rgba(0,0,0,.22)!important;
}
.statusRefreshIconButton:active{
  transform:scale(.96);
}
.statusRefreshIconButton:focus-visible{
  outline:3px solid rgba(17,17,17,.22)!important;
  outline-offset:3px!important;
}

@media(max-width:760px){
  .statusRefreshIconBar{
    margin:4px 0 9px!important;
  }
  .statusRefreshIconButton{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    box-shadow:0 4px 12px rgba(0,0,0,.2)!important;
  }
  .statusRefreshIconButton svg{
    width:19px!important;
    height:19px!important;
  }
}


/* V4.81 – Aktualisieren-Symbol Desktop oben rechts */
@media(min-width:761px){
  .statusInfoCard{
    position:relative!important;
  }

  .statusRefreshIconBar{
    position:absolute!important;
    top:22px!important;
    right:22px!important;
    z-index:20!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
  }

  .statusHero{
    padding-right:66px!important;
  }
}

/* Mobil bleibt das Symbol an seiner bisherigen Position im Dokumentfluss */
@media(max-width:760px){
  .statusRefreshIconBar{
    position:static!important;
    top:auto!important;
    right:auto!important;
    width:100%!important;
  }
}


/* V4.82 – Refresh in Statuskarte integriert + mobil hellblau */
@media(min-width:761px){
  /* alten schwebenden Desktop-Refresh ausblenden */
  .statusRefreshIconBar{
    display:none!important;
  }

  .statusHero{
    padding-right:0!important;
  }

  .statusBadgeCard{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:14px!important;
    min-height:82px;
    padding:16px 16px 16px 18px!important;
    border:1px solid #c9d6ed!important;
    border-radius:14px!important;
    background:#f3f7fd!important;
  }

  .statusBadgeText{
    display:grid;
    gap:7px;
    min-width:0;
  }

  .statusBadgeText span{
    color:var(--muted)!important;
    font-size:9px!important;
    font-weight:800!important;
    letter-spacing:.055em!important;
    text-transform:uppercase!important;
  }

  .statusBadgeText strong{
    color:#365f9c!important;
    font-size:18px!important;
    line-height:1.2!important;
  }

  .statusRefreshDesktopButton{
    position:static!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    border:1px solid #b8cae8!important;
    background:#e7effb!important;
    color:#365f9c!important;
    box-shadow:none!important;
  }

  .statusRefreshDesktopButton svg{
    width:18px!important;
    height:18px!important;
    stroke-width:2.2!important;
  }

  .statusRefreshDesktopButton:hover{
    background:#dce8f8!important;
    border-color:#9fb8df!important;
    color:#284f88!important;
    box-shadow:none!important;
  }

  .statusRefreshDesktopButton:focus-visible{
    outline:3px solid rgba(54,95,156,.18)!important;
    outline-offset:2px!important;
  }
}

@media(max-width:760px){
  .statusRefreshDesktopButton{
    display:none!important;
  }

  .statusRefreshIconBar{
    display:flex!important;
  }

  /* Mobile Refresh bewusst hellblau */
  .statusRefreshMobileButton{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    border:1px solid #a9c6ec!important;
    background:#dfeeff!important;
    color:#2f609f!important;
    box-shadow:0 3px 10px rgba(47,96,159,.14)!important;
  }

  .statusRefreshMobileButton svg{
    width:19px!important;
    height:19px!important;
    stroke-width:2.25!important;
  }

  .statusRefreshMobileButton:hover{
    background:#d2e7ff!important;
    border-color:#8eb3e5!important;
    color:#244f88!important;
  }

  .statusRefreshMobileButton:active{
    background:#c8e0fb!important;
  }

  .statusRefreshMobileButton:focus-visible{
    outline:3px solid rgba(47,96,159,.18)!important;
    outline-offset:2px!important;
  }
}


/* V4.83 – erste Bestätigung mobil mit mehr Abstand zur Checkbox */
@media(max-width:760px){
  .inquiryConfirmations .checkRow:first-child{
    column-gap:13px!important;
  }
}

@media(max-width:380px){
  .inquiryConfirmations .checkRow:first-child{
    column-gap:12px!important;
  }
}


/* V4.84 – einheitlicher Abstand zwischen Checkbox und Text im Anfragefenster */
@media(max-width:760px){
  #inquiryModal .checkRow{
    column-gap:13px!important;
  }
}

@media(max-width:380px){
  #inquiryModal .checkRow{
    column-gap:12px!important;
  }
}


/* V4.85 – Mobile: „Dein aktueller Stand“ + Status in einer Zeile */
@media(max-width:760px){
  .statusMobileOverviewHead{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    column-gap:10px!important;
    row-gap:4px!important;
    align-items:center!important;
  }

  .statusMobileOverline{
    grid-column:1 / -1!important;
  }

  .statusMobileOverviewHead h1{
    grid-column:1!important;
    min-width:0!important;
    margin:0!important;
  }

  .statusMobileStatusChip{
    grid-column:2!important;
    justify-self:end!important;
    align-self:center!important;
    max-width:none!important;
    padding:6px 10px!important;
    font-size:11px!important;
    line-height:1.15!important;
    font-weight:800!important;
    white-space:nowrap!important;
  }
}

@media(max-width:340px){
  .statusMobileOverviewHead{
    column-gap:7px!important;
  }

  .statusMobileOverviewHead h1{
    font-size:15px!important;
  }

  .statusMobileStatusChip{
    padding:5px 8px!important;
    font-size:10px!important;
  }
}

@media(max-width:320px){
  .statusMobileOverviewHead{
    column-gap:6px!important;
  }

  .statusMobileOverviewHead h1{
    font-size:14px!important;
  }

  .statusMobileStatusChip{
    padding:5px 7px!important;
    font-size:10px!important;
  }
}


/* V4.86 – Admin: einheitliches Button-Design und einheitliche Größen */
.adminShell button,
.adminShell a.ghost,
.adminShell a.primaryButton,
.adminSectionNav a,
.adminLogin button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:42px!important;
  height:42px!important;
  padding:0 14px!important;
  border-radius:11px!important;
  box-sizing:border-box!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:750!important;
  letter-spacing:0!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  vertical-align:middle!important;
  cursor:pointer;
  transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease!important;
}

/* Primäre Admin-Aktionen */
.adminShell .primaryButton,
.adminLogin button{
  border:1px solid var(--ink)!important;
  background:var(--ink)!important;
  color:#fff!important;
  box-shadow:0 2px 6px rgba(0,0,0,.08)!important;
}

/* Neutrale Admin-Aktionen */
.adminShell .ghost,
.adminSectionNav a{
  border:1px solid var(--line)!important;
  background:#fff!important;
  color:var(--ink)!important;
  box-shadow:none!important;
}

/* Navigation nutzt dieselbe Buttonform, bleibt aber etwas kompakter in der Breite */
.adminSectionNav a{
  min-width:auto!important;
}

/* Alte Mini-/Editor-Sondergrößen vollständig angleichen */
.adminShell .adminMiniButton,
.adminShell .adminRemoveItem,
.adminShell .adminEditInquiryButton,
.adminShell .adminAccessSubmit,
.adminShell .adminAccessSave,
.adminShell .adminSaveInquiry,
.adminShell .adminEditorActions .ghost,
.adminTop .ghost{
  min-height:42px!important;
  height:42px!important;
  padding:0 14px!important;
  border-radius:11px!important;
  font-size:12px!important;
  line-height:1!important;
}

/* Entfernen bleibt als kritische Aktion erkennbar, aber mit gleicher Form/Größe */
.adminShell .adminRemoveItem{
  border-color:#e7c9c9!important;
  background:#fff!important;
  color:#9a3939!important;
}

/* Einheitliche Interaktionszustände */
.adminShell button:hover:not(:disabled),
.adminShell a.ghost:hover,
.adminShell a.primaryButton:hover,
.adminSectionNav a:hover,
.adminLogin button:hover:not(:disabled){
  transform:translateY(-1px);
}

.adminShell .primaryButton:hover:not(:disabled),
.adminLogin button:hover:not(:disabled){
  background:#292929!important;
  border-color:#292929!important;
}

.adminShell .ghost:hover,
.adminSectionNav a:hover{
  background:var(--soft)!important;
  border-color:#cfcfc9!important;
}

.adminShell .adminRemoveItem:hover{
  background:#fff5f5!important;
  border-color:#d9aaaa!important;
  color:#842f2f!important;
}

.adminShell button:focus-visible,
.adminShell a.ghost:focus-visible,
.adminShell a.primaryButton:focus-visible,
.adminSectionNav a:focus-visible,
.adminLogin button:focus-visible{
  outline:3px solid rgba(17,17,17,.14)!important;
  outline-offset:2px!important;
}

.adminShell button:disabled,
.adminLogin button:disabled{
  opacity:.45!important;
  cursor:not-allowed!important;
  transform:none!important;
}

/* Mobil: weiterhin überall exakt dieselbe Bedienhöhe */
@media(max-width:760px){
  .adminShell button,
  .adminShell a.ghost,
  .adminShell a.primaryButton,
  .adminSectionNav a,
  .adminLogin button,
  .adminShell .adminMiniButton,
  .adminShell .adminRemoveItem,
  .adminShell .adminEditInquiryButton,
  .adminShell .adminAccessSubmit,
  .adminShell .adminAccessSave,
  .adminShell .adminSaveInquiry,
  .adminShell .adminEditorActions .ghost,
  .adminTop .ghost{
    min-height:44px!important;
    height:44px!important;
    padding:0 13px!important;
    border-radius:11px!important;
    font-size:12px!important;
  }
}


/* V4.88 – E-Mail Support auf Statusseite deutlich sichtbarer */
.statusInfoActions .statusEmailSupportButton,
.payInfoActions .statusEmailSupportButton{
  min-height:48px!important;
  border:2px solid #8fb6e7!important;
  border-radius:12px!important;
  background:#e8f3ff!important;
  color:#245b99!important;
  font-weight:800!important;
  box-shadow:0 3px 10px rgba(36,91,153,.12)!important;
  text-decoration:none!important;
}

.statusInfoActions .statusEmailSupportButton:hover,
.payInfoActions .statusEmailSupportButton:hover{
  background:#dcecff!important;
  border-color:#6e9fdc!important;
  color:#184d8c!important;
  box-shadow:0 5px 14px rgba(36,91,153,.17)!important;
}

.statusInfoActions .statusEmailSupportButton:focus-visible,
.payInfoActions .statusEmailSupportButton:focus-visible{
  outline:3px solid rgba(36,91,153,.18)!important;
  outline-offset:2px!important;
}

@media(max-width:760px){
  .statusInfoActions .statusEmailSupportButton,
  .payInfoActions .statusEmailSupportButton{
    min-height:48px!important;
    border-radius:11px!important;
    font-size:12px!important;
    background:#dfeeff!important;
    border-color:#8eb3e5!important;
    color:#245b99!important;
    box-shadow:0 3px 10px rgba(36,91,153,.14)!important;
  }
}


/* V4.89 – Admin: Status & Notizen sauber getrennt, keine Überlappungen */
.adminStatusNotesPanel{
  min-width:0!important;
  overflow:visible!important;
}

.adminStatusNotesFields{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:16px!important;
  align-items:start!important;
  align-content:start!important;
  min-width:0!important;
  width:100%!important;
  padding-top:3px!important;
}

.adminStatusNotesFields .adminEditorField{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:7px!important;
  min-width:0!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  align-self:start!important;
}

.adminStatusNotesFields .adminEditorField>span{
  display:block!important;
  min-width:0!important;
  margin:0 0 1px!important;
  line-height:1.35!important;
  overflow-wrap:anywhere!important;
}

.adminStatusNotesFields select,
.adminStatusNotesFields textarea{
  display:block!important;
  position:static!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  box-sizing:border-box!important;
}

.adminStatusNotesFields select{
  min-height:42px!important;
  height:42px!important;
}

.adminStatusNotesFields textarea{
  height:auto!important;
  resize:vertical!important;
  line-height:1.5!important;
  overflow:auto!important;
}

.adminStatusNotesFields .adminCustomerNoteField textarea{
  min-height:126px!important;
}

.adminStatusNotesFields .adminInternalNotesField textarea{
  min-height:148px!important;
}

@media(max-width:1100px){
  .adminStatusNotesFields{
    gap:14px!important;
  }
}

@media(max-width:760px){
  .adminStatusNotesPanel{
    padding:12px!important;
  }

  .adminStatusNotesFields{
    gap:13px!important;
    padding-top:2px!important;
  }

  .adminStatusNotesFields .adminEditorField{
    gap:6px!important;
  }

  .adminStatusNotesFields select{
    min-height:46px!important;
    height:46px!important;
    font-size:16px!important;
  }

  .adminStatusNotesFields textarea{
    font-size:16px!important;
  }

  .adminStatusNotesFields .adminCustomerNoteField textarea{
    min-height:132px!important;
  }

  .adminStatusNotesFields .adminInternalNotesField textarea{
    min-height:154px!important;
  }
}


/* V4.91 – WhatsApp Clipboard Template */
.adminWhatsappTemplateEditor{
  margin-top:10px;
  padding:0;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}

.adminWhatsappTemplateEditor>summary{
  padding:12px 14px;
  cursor:pointer;
  font-size:11px;
  font-weight:800;
  color:var(--ink);
  user-select:none;
}

.adminWhatsappTemplateEditor[open]>summary{
  border-bottom:1px solid var(--line);
  background:#faf9f6;
}

.adminWhatsappTemplateBody{
  display:grid;
  gap:10px;
  padding:13px 14px 14px;
}

.adminWhatsappTemplateBody textarea{
  width:100%;
  min-height:210px;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  color:var(--ink);
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:12px;
  line-height:1.55;
  resize:vertical;
  box-sizing:border-box;
}

.adminWhatsappTemplateActions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}

.adminWhatsappTemplateActions small{
  flex:1 1 420px;
  color:var(--muted);
  font-size:10px;
  line-height:1.5;
}

@media(max-width:760px){
  .adminWhatsappTemplateEditor>summary{
    padding:11px 12px;
  }
  .adminWhatsappTemplateBody{
    padding:12px;
  }
  .adminWhatsappTemplateBody textarea{
    min-height:240px;
    font-size:16px;
  }
  .adminWhatsappTemplateActions{
    display:grid;
    grid-template-columns:1fr;
  }
  .adminWhatsappTemplateActions button{
    width:100%;
  }
}


/* V4.94 – Statusseite Mobile + Desktop: einheitliche Hauptreihenfolge
   Kundendaten → Warenkorb → Auftrag & Versand → Vereinbarungen */
@media(max-width:760px){
  .statusCustomerSection{order:2!important;}
  .statusCartCard{order:3!important;}
  .statusFulfillmentSection{order:4!important;}
  .statusAgreementSection{order:5!important;}
  .statusNoPaymentNotice{order:6!important;}
  .statusRefreshBar--bottom{order:7!important;}
  .statusInfoActions{order:8!important;}
}


/* V4.95 – Auftrag & Versand: aktuellen Status direkt anzeigen */
.statusFulfillmentCurrent{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 0 12px;
  padding:12px 14px;
  border:1px solid #c9d6ed;
  border-radius:12px;
  background:#f3f7fd;
}

.statusFulfillmentCurrent span{
  color:var(--muted);
  font-size:10px;
  font-weight:800;
  letter-spacing:.045em;
  text-transform:uppercase;
}

.statusFulfillmentCurrent strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:6px 12px;
  border:1px solid #b8cae8;
  border-radius:999px;
  background:#e7effb;
  color:#365f9c;
  font-size:14px;
  line-height:1.15;
  font-weight:800;
  white-space:nowrap;
}

@media(max-width:760px){
  .statusFulfillmentCurrent{
    gap:10px;
    margin-bottom:10px;
    padding:10px 11px;
    border-radius:11px;
  }

  .statusFulfillmentCurrent span{
    font-size:9px;
  }

  .statusFulfillmentCurrent strong{
    min-height:30px;
    padding:5px 10px;
    font-size:13px;
  }
}

@media(max-width:340px){
  .statusFulfillmentCurrent{
    padding:9px 10px;
  }

  .statusFulfillmentCurrent strong{
    font-size:12px;
    padding:5px 9px;
  }
}


/* V4.96 – Mobile Refresh optisch wie Desktop */
@media(max-width:760px){
  .statusRefreshMobileButton{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    border:1px solid #b8cae8!important;
    background:#e7effb!important;
    color:#365f9c!important;
    box-shadow:none!important;
  }

  .statusRefreshMobileButton svg{
    width:18px!important;
    height:18px!important;
    stroke-width:2.2!important;
  }

  .statusRefreshMobileButton:hover{
    background:#dce8f8!important;
    border-color:#9fb8df!important;
    color:#284f88!important;
    box-shadow:none!important;
  }

  .statusRefreshMobileButton:active{
    background:#dce8f8!important;
  }

  .statusRefreshMobileButton:focus-visible{
    outline:3px solid rgba(54,95,156,.18)!important;
    outline-offset:2px!important;
  }
}

/* V4.96 – alle E-Mail-Support-Buttons einheitlich dunkelgrau */
.emailSupportButton,
.statusInfoActions .emailSupportButton,
.payInfoActions .emailSupportButton,
.successSupportActions .emailSupportButton{
  border:1px solid #2f2f2f!important;
  background:#3a3a3a!important;
  color:#fff!important;
  font-weight:800!important;
  box-shadow:0 3px 9px rgba(0,0,0,.14)!important;
  text-decoration:none!important;
}

.emailSupportButton:hover,
.statusInfoActions .emailSupportButton:hover,
.payInfoActions .emailSupportButton:hover,
.successSupportActions .emailSupportButton:hover{
  border-color:#202020!important;
  background:#2b2b2b!important;
  color:#fff!important;
  box-shadow:0 4px 12px rgba(0,0,0,.18)!important;
}

.emailSupportButton:active,
.statusInfoActions .emailSupportButton:active,
.payInfoActions .emailSupportButton:active,
.successSupportActions .emailSupportButton:active{
  background:#242424!important;
}

.emailSupportButton:focus-visible,
.statusInfoActions .emailSupportButton:focus-visible,
.payInfoActions .emailSupportButton:focus-visible,
.successSupportActions .emailSupportButton:focus-visible{
  outline:3px solid rgba(47,47,47,.20)!important;
  outline-offset:2px!important;
}

@media(max-width:760px){
  .emailSupportButton,
  .statusInfoActions .emailSupportButton,
  .payInfoActions .emailSupportButton,
  .successSupportActions .emailSupportButton{
    background:#3a3a3a!important;
    border-color:#2f2f2f!important;
    color:#fff!important;
  }
}


/* V4.97 – Hinweis zu internen / kundensichtbaren Status */
.adminStatusVisibilityHint{
  display:block;
  margin:1px 0 0;
  color:var(--muted);
  font-size:9px;
  line-height:1.45;
}
@media(max-width:760px){
  .adminStatusVisibilityHint{
    font-size:10px;
  }
}


/* V4.98 – Versand-Timer am Ende von AUFTRAG & VERSAND */
.statusShippingElapsed{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:5px 14px;
  margin:14px 0 0;
  padding:12px 14px;
  border:1px solid #d4d8df;
  border-radius:12px;
  background:#f8f9fb;
}

.statusShippingElapsed>span{
  color:var(--muted);
  font-size:10px;
  font-weight:800;
  letter-spacing:.045em;
  text-transform:uppercase;
}

.statusShippingElapsed>strong{
  color:#343a43;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:17px;
  line-height:1;
  font-weight:800;
  letter-spacing:.03em;
  white-space:nowrap;
}

.statusShippingElapsed>small{
  grid-column:1 / -1;
  color:var(--muted);
  font-size:9px;
  line-height:1.35;
}

@media(max-width:760px){
  .statusShippingElapsed{
    gap:5px 10px;
    margin-top:10px;
    padding:10px 11px;
    border-radius:11px;
  }

  .statusShippingElapsed>span{
    font-size:9px;
  }

  .statusShippingElapsed>strong{
    font-size:15px;
  }

  .statusShippingElapsed>small{
    font-size:8px;
  }
}

/* V4.98 – WhatsApp- und E-Mail-Support überall gleiche Typografie/Größe */
.supportActionButton{
  min-height:48px!important;
  padding:10px 16px!important;
  border-radius:12px!important;
  font-family:inherit!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-decoration:none!important;
}

@media(max-width:760px){
  .supportActionButton{
    min-height:48px!important;
    padding:10px 14px!important;
    border-radius:12px!important;
    font-size:13px!important;
    line-height:1.2!important;
  }
}


/* V4.99 – Statusfarben nach neuer Admin-/Kundenlogik */
.adminOrderStatus.status-offen,
.adminStatusSelect.status-offen{
  border-color:#9fb8df!important;
  background:#e7effb!important;
  color:#365f9c!important;
}

.adminOrderStatus.status-klaerung,
.adminOrderStatus.status-warenbestand_pruefung,
.adminStatusSelect.status-klaerung,
.adminStatusSelect.status-warenbestand_pruefung{
  border-color:#edc68d!important;
  background:#fff2df!important;
  color:#9a5a0b!important;
}

.adminOrderStatus.status-kontaktieren,
.adminStatusSelect.status-kontaktieren{
  border-color:#d4b9f2!important;
  background:#f3eafd!important;
  color:#7041a3!important;
}

.adminOrderStatus.status-rueckmeldung_erforderlich,
.adminStatusSelect.status-rueckmeldung_erforderlich{
  border-color:#efb9b4!important;
  background:#fff0ef!important;
  color:#a62e2a!important;
}

.adminOrderStatus.status-bezahlt,
.adminOrderStatus.status-china_aufgegeben,
.adminOrderStatus.status-china_bezahlt,
.adminStatusSelect.status-bezahlt,
.adminStatusSelect.status-china_aufgegeben,
.adminStatusSelect.status-china_bezahlt{
  border-color:#acd9b7!important;
  background:#eaf8ee!important;
  color:#23713a!important;
}

.adminOrderStatus.status-versendet,
.adminStatusSelect.status-versendet{
  border-color:#e8d36f!important;
  background:#fff8cf!important;
  color:#806900!important;
}

.adminOrderStatus.status-abgeschlossen,
.adminStatusSelect.status-abgeschlossen{
  border-color:#8eb69a!important;
  background:#e5f1e8!important;
  color:#1c5330!important;
}

.adminOrderStatus.status-storniert,
.adminStatusSelect.status-storniert{
  border-color:#c99090!important;
  background:#f4e6e6!important;
  color:#6f2020!important;
}

.adminStatusSelect{
  font-weight:800!important;
  transition:background .15s ease,border-color .15s ease,color .15s ease!important;
}

.adminStatusSelect option{
  background:#fff;
  color:#222;
  font-weight:700;
}

/* Kundenseite: dieselben Farben nur für kundensichtbare Hauptstatus */
.status-tone-offen{
  --pd-status-bg:#e7effb;
  --pd-status-border:#9fb8df;
  --pd-status-color:#365f9c;
}
.status-tone-klaerung{
  --pd-status-bg:#fff2df;
  --pd-status-border:#edc68d;
  --pd-status-color:#9a5a0b;
}
.status-tone-kontaktieren{
  --pd-status-bg:#f3eafd;
  --pd-status-border:#d4b9f2;
  --pd-status-color:#7041a3;
}
.status-tone-rueckmeldung_erforderlich{
  --pd-status-bg:#fff0ef;
  --pd-status-border:#efb9b4;
  --pd-status-color:#a62e2a;
}
.status-tone-bezahlt{
  --pd-status-bg:#eaf8ee;
  --pd-status-border:#acd9b7;
  --pd-status-color:#23713a;
}
.status-tone-versendet{
  --pd-status-bg:#fff8cf;
  --pd-status-border:#e8d36f;
  --pd-status-color:#806900;
}
.status-tone-abgeschlossen{
  --pd-status-bg:#e5f1e8;
  --pd-status-border:#8eb69a;
  --pd-status-color:#1c5330;
}
.status-tone-storniert{
  --pd-status-bg:#f4e6e6;
  --pd-status-border:#c99090;
  --pd-status-color:#6f2020;
}

.statusMobileState[class*="status-tone-"],
.statusMobileStatusChip[class*="status-tone-"]{
  border-color:var(--pd-status-border)!important;
  background:var(--pd-status-bg)!important;
  color:var(--pd-status-color)!important;
}

.statusBadgeCard[class*="status-tone-"]{
  border-color:var(--pd-status-border)!important;
  background:var(--pd-status-bg)!important;
}

.statusBadgeCard[class*="status-tone-"] .statusBadgeText strong{
  color:var(--pd-status-color)!important;
}

.statusFulfillmentCurrent[class*="status-tone-"]{
  border-color:var(--pd-status-border)!important;
  background:var(--pd-status-bg)!important;
}

.statusFulfillmentCurrent[class*="status-tone-"] strong{
  border-color:var(--pd-status-border)!important;
  background:#fff!important;
  color:var(--pd-status-color)!important;
}


/* V5.00 – Versand-Timer auffälliger / TT:SS:MM:SS */
.statusShippingElapsed{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px 18px!important;
  margin:18px 0 0!important;
  padding:16px 18px!important;
  border:2px solid #d5b53c!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#fffbea 0%,#fff3bd 100%)!important;
  box-shadow:0 8px 22px rgba(128,105,0,.16)!important;
  overflow:hidden!important;
}

.statusShippingElapsed::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.6) 45%,transparent 62%);
  transform:translateX(-120%);
  animation:pdShippingTimerShine 4.8s ease-in-out infinite;
}

.statusShippingElapsed>span{
  position:relative;
  z-index:1;
  color:#705700!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
}

.statusShippingElapsed>strong{
  position:relative;
  z-index:1;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:170px!important;
  padding:10px 13px!important;
  border:1px solid #caa829!important;
  border-radius:11px!important;
  background:#2f2b19!important;
  color:#ffe46f!important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;
  font-size:22px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-shadow:0 0 10px rgba(255,228,111,.28)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 4px 12px rgba(47,43,25,.18)!important;
  white-space:nowrap!important;
}

.statusShippingElapsed>small{
  display:none!important;
}

@keyframes pdShippingTimerShine{
  0%,72%{transform:translateX(-120%);}
  100%{transform:translateX(120%);}
}

@media(max-width:760px){
  .statusShippingElapsed{
    grid-template-columns:1fr!important;
    gap:9px!important;
    margin-top:13px!important;
    padding:14px!important;
    border-radius:13px!important;
  }

  .statusShippingElapsed>span{
    font-size:11px!important;
  }

  .statusShippingElapsed>strong{
    width:100%!important;
    min-width:0!important;
    padding:11px 10px!important;
    font-size:21px!important;
    letter-spacing:.045em!important;
    box-sizing:border-box!important;
  }
}

@media(max-width:340px){
  .statusShippingElapsed{
    padding:12px!important;
  }

  .statusShippingElapsed>strong{
    font-size:18px!important;
    letter-spacing:.035em!important;
  }
}


/* V5.01 – DHL Tracking Button sauber im DHL-Gelb */
.statusTrackingButton{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  height:auto!important;
  width:auto!important;
  max-width:100%!important;
  margin:10px 0 0!important;
  padding:11px 18px!important;
  border:1px solid #e0b800!important;
  border-radius:10px!important;
  background:#ffcc00!important;
  color:#1f1f1f!important;
  font-family:inherit!important;
  font-size:13px!important;
  line-height:1.15!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  text-align:center!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
  box-shadow:0 3px 9px rgba(132,104,0,.16)!important;
  transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease!important;
}

.statusTrackingButton:hover{
  border-color:#cda800!important;
  background:#f4c300!important;
  color:#111!important;
  box-shadow:0 5px 13px rgba(132,104,0,.22)!important;
  transform:translateY(-1px)!important;
}

.statusTrackingButton:active{
  background:#e9ba00!important;
  border-color:#bd9a00!important;
  transform:translateY(0)!important;
  box-shadow:0 2px 6px rgba(132,104,0,.16)!important;
}

.statusTrackingButton:focus-visible{
  outline:3px solid rgba(255,204,0,.34)!important;
  outline-offset:3px!important;
}

@media(max-width:760px){
  .statusTrackingButton{
    width:100%!important;
    min-height:48px!important;
    margin-top:9px!important;
    padding:12px 14px!important;
    border-radius:11px!important;
    font-size:13px!important;
    white-space:normal!important;
  }
}


/* V5.02 – DHL Button / Tracking-URL sauber trennen */
.statusTrackingCard .statusTrackingButton{
  margin-bottom:0!important;
}

.statusTrackingCard>small{
  display:block!important;
  margin-top:15px!important;
  padding-top:11px!important;
  border-top:1px solid #ece8da!important;
  color:var(--muted)!important;
  font-size:9px!important;
  line-height:1.45!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}

@media(max-width:760px){
  .statusTrackingCard>small{
    margin-top:16px!important;
    padding-top:12px!important;
    font-size:9px!important;
  }
}

/* V5.02 – Versand-Prüfhinweis ab Tag 14, danach alle 4 Tage */
.statusShippingCheckAlert{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:8px 12px;
  margin:10px 0 0;
  padding:13px 15px;
  border:2px solid #d95f4b;
  border-radius:13px;
  background:#fff1ed;
  color:#7b251c;
  box-shadow:0 6px 18px rgba(123,37,28,.14);
  animation:pdShippingCheckPulse 1.8s ease-in-out infinite;
}

.statusShippingCheckAlert[hidden]{
  display:none!important;
}

.statusShippingCheckAlert>strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:6px 10px;
  border-radius:999px;
  background:#9f3026;
  color:#fff;
  font-size:11px;
  line-height:1;
  font-weight:900;
  letter-spacing:.035em;
  text-transform:uppercase;
  white-space:nowrap;
}

.statusShippingCheckAlert>span{
  font-size:11px;
  line-height:1.4;
  font-weight:800;
}

@keyframes pdShippingCheckPulse{
  0%,100%{box-shadow:0 6px 18px rgba(123,37,28,.12);}
  50%{box-shadow:0 7px 24px rgba(123,37,28,.24);}
}

/* Abgeschlossen: Timer bleibt sichtbar, aber ohne laufenden Glanz. */
.statusShippingElapsed.isStopped::before{
  animation:none!important;
  display:none!important;
}

.statusShippingElapsed.isStopped{
  border-color:#a8b5aa!important;
  background:linear-gradient(135deg,#f1f5f1 0%,#e8efe9 100%)!important;
  box-shadow:0 5px 15px rgba(45,83,55,.10)!important;
}

.statusShippingElapsed.isStopped>span{
  color:#31563a!important;
}

.statusShippingElapsed.isStopped>strong{
  border-color:#6f8d76!important;
  background:#26342a!important;
  color:#bde5c5!important;
  text-shadow:none!important;
}

@media(max-width:760px){
  .statusShippingCheckAlert{
    grid-template-columns:1fr;
    gap:8px;
    padding:12px;
  }

  .statusShippingCheckAlert>strong{
    justify-self:start;
  }
}


/* V5.06 – Beschriftung unter dem Versand-Timer */
.statusShippingElapsed>.statusShippingElapsedLegend{
  position:relative!important;
  z-index:1!important;
  display:block!important;
  grid-column:1 / -1!important;
  margin:1px 0 0!important;
  padding:0!important;
  border:0!important;
  color:#806900!important;
  font-family:inherit!important;
  font-size:9px!important;
  line-height:1.3!important;
  font-weight:900!important;
  letter-spacing:.075em!important;
  text-align:right!important;
  text-transform:uppercase!important;
}

.statusShippingElapsed.isStopped>.statusShippingElapsedLegend{
  color:#45634c!important;
}

@media(max-width:760px){
  .statusShippingElapsed>.statusShippingElapsedLegend{
    margin-top:0!important;
    font-size:8px!important;
    letter-spacing:.055em!important;
    text-align:center!important;
  }
}

@media(max-width:340px){
  .statusShippingElapsed>.statusShippingElapsedLegend{
    font-size:7px!important;
    letter-spacing:.035em!important;
  }
}


/* V5.07 – Admin-Hauptbereiche standardmäßig einklappbar */
.adminMainCollapsible{
  margin:18px 0 0;
  border:1px solid var(--line);
  border-radius:15px;
  background:#fff;
  overflow:hidden;
}

.adminMainCollapsible>summary{
  position:relative;
  display:flex;
  align-items:center;
  min-height:54px;
  padding:15px 48px 15px 18px;
  cursor:pointer;
  color:var(--ink);
  font-size:12px;
  line-height:1.25;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  list-style:none;
  user-select:none;
}

.adminMainCollapsible>summary::-webkit-details-marker{
  display:none;
}

.adminMainCollapsible>summary::after{
  content:"+";
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  display:grid;
  place-items:center;
  width:27px;
  height:27px;
  border:1px solid #d7d3ca;
  border-radius:50%;
  background:#f7f5f0;
  color:#555;
  font-size:18px;
  line-height:1;
  font-weight:700;
}

.adminMainCollapsible[open]>summary{
  border-bottom:1px solid var(--line);
  background:#faf9f6;
}

.adminMainCollapsible[open]>summary::after{
  content:"−";
}

.adminMainCollapsibleBody{
  padding:0;
}

.adminMainCollapsibleBody>section{
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

@media(max-width:760px){
  .adminMainCollapsible{
    margin-top:14px;
    border-radius:13px;
  }

  .adminMainCollapsible>summary{
    min-height:52px;
    padding:14px 44px 14px 14px;
    font-size:11px;
  }

  .adminMainCollapsible>summary::after{
    right:13px;
    width:26px;
    height:26px;
  }
}


/* V5.08 – Systemstatus direkt in der Übersicht, ohne leeren Zielbereich */
.adminSystemStatusCard{
  cursor:default!important;
}

.adminSystemStatusCard.isOk{
  border-color:#a8d7b3!important;
  background:#eaf8ee!important;
  box-shadow:0 5px 14px rgba(35,113,58,.08)!important;
}

.adminSystemStatusCard.isOk>span,
.adminSystemStatusCard.isOk>strong,
.adminSystemStatusCard.isOk>small{
  color:#23713a!important;
}

.adminSystemStatusCard.isOk>strong{
  font-size:24px!important;
  font-weight:900!important;
}

.adminSystemStatusCard.hasIssue{
  border-color:#e7c28f!important;
  background:#fff5e7!important;
}

.adminSystemStatusCard.hasIssue>span,
.adminSystemStatusCard.hasIssue>strong,
.adminSystemStatusCard.hasIssue>small{
  color:#915816!important;
}


/* V5.10 – Hauptstatus im Administrations-Dashboard */
.adminDashboardStatusCard{
  cursor:default!important;
}

.adminDashboardStatusCard>span{
  font-weight:900!important;
}

.adminDashboardStatusCard>small{
  font-size:11px!important;
  line-height:1.3!important;
  font-weight:800!important;
}

.adminDashboardStatusCard.status-offen{
  border-color:#9fb8df!important;
  background:#e7effb!important;
}
.adminDashboardStatusCard.status-offen>span,
.adminDashboardStatusCard.status-offen>strong,
.adminDashboardStatusCard.status-offen>small{
  color:#365f9c!important;
}

.adminDashboardStatusCard.status-klaerung{
  border-color:#edc68d!important;
  background:#fff2df!important;
}
.adminDashboardStatusCard.status-klaerung>span,
.adminDashboardStatusCard.status-klaerung>strong,
.adminDashboardStatusCard.status-klaerung>small{
  color:#9a5a0b!important;
}

.adminDashboardStatusCard.status-kontaktieren{
  border-color:#d4b9f2!important;
  background:#f3eafd!important;
}
.adminDashboardStatusCard.status-kontaktieren>span,
.adminDashboardStatusCard.status-kontaktieren>strong,
.adminDashboardStatusCard.status-kontaktieren>small{
  color:#7041a3!important;
}

.adminDashboardStatusCard.status-rueckmeldung_erforderlich{
  border-color:#efb9b4!important;
  background:#fff0ef!important;
}
.adminDashboardStatusCard.status-rueckmeldung_erforderlich>span,
.adminDashboardStatusCard.status-rueckmeldung_erforderlich>strong,
.adminDashboardStatusCard.status-rueckmeldung_erforderlich>small{
  color:#a62e2a!important;
}

.adminDashboardStatusCard.status-bezahlt{
  border-color:#acd9b7!important;
  background:#eaf8ee!important;
}
.adminDashboardStatusCard.status-bezahlt>span,
.adminDashboardStatusCard.status-bezahlt>strong,
.adminDashboardStatusCard.status-bezahlt>small{
  color:#23713a!important;
}

.adminDashboardStatusCard.status-versendet{
  border-color:#e8d36f!important;
  background:#fff8cf!important;
}
.adminDashboardStatusCard.status-versendet>span,
.adminDashboardStatusCard.status-versendet>strong,
.adminDashboardStatusCard.status-versendet>small{
  color:#806900!important;
}

.adminDashboardStatusCard.status-abgeschlossen{
  border-color:#8eb69a!important;
  background:#e5f1e8!important;
}
.adminDashboardStatusCard.status-abgeschlossen>span,
.adminDashboardStatusCard.status-abgeschlossen>strong,
.adminDashboardStatusCard.status-abgeschlossen>small{
  color:#1c5330!important;
}

.adminDashboardStatusCard.status-storniert{
  border-color:#c99090!important;
  background:#f4e6e6!important;
}
.adminDashboardStatusCard.status-storniert>span,
.adminDashboardStatusCard.status-storniert>strong,
.adminDashboardStatusCard.status-storniert>small{
  color:#6f2020!important;
}


/* V5.11 – Administrations-Dashboard kompakter */
.adminDashboard{
  padding:15px!important;
}

.adminDashboardHead{
  margin-bottom:10px!important;
}

.adminDashboardHead h2{
  margin-bottom:2px!important;
}

.adminDashboardCards{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:7px!important;
}

.adminDashboardCard{
  min-height:82px!important;
  gap:3px!important;
  padding:10px 11px!important;
  border-radius:11px!important;
}

a.adminDashboardCard{
  transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease!important;
}

a.adminDashboardCard:hover{
  transform:translateY(-1px);
}

.adminDashboardCard>span{
  font-size:8px!important;
  line-height:1.2!important;
}

.adminDashboardCard>strong{
  font-size:19px!important;
  line-height:1!important;
}

.adminDashboardCard>small{
  font-size:9px!important;
  line-height:1.25!important;
}

.adminDashboardStatusCard>small{
  font-size:9px!important;
  line-height:1.25!important;
}

.adminDashboardCardStatic>strong{
  font-size:14px!important;
  line-height:1.15!important;
}

.adminSystemStatusCard>strong{
  font-size:19px!important;
}

@media(max-width:1100px){
  .adminDashboardCards{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:760px){
  .adminDashboard{
    padding:12px!important;
  }

  .adminDashboardCards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }

  .adminDashboardCard{
    min-height:78px!important;
    padding:10px!important;
  }

  .adminDashboardCard>strong{
    font-size:18px!important;
  }
}

@media(max-width:360px){
  .adminDashboardCards{
    grid-template-columns:1fr!important;
  }
}


/* V5.12 – Hero mit 10er-Pack Visual */
.hero{
  display:grid!important;
  grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr)!important;
  align-items:stretch!important;
  gap:18px!important;
}

.heroMain{
  display:flex;
  flex-direction:column;
  gap:14px;
  min-width:0;
}

.heroTextWrap{
  min-width:0;
}

.heroTextWrap h1{
  margin-bottom:10px;
}

.heroPackCard{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:14px;
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(93,123,210,.18);
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,248,255,.96));
  box-shadow:0 20px 36px rgba(15,23,42,.08);
  min-width:0;
}

.heroPackMedia{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:8px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(239,245,255,.95), rgba(255,255,255,.85));
  border:1px solid rgba(148,163,184,.16);
  overflow:hidden;
}

.heroPackMedia img{
  display:block;
  width:100%;
  max-width:400px;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 18px 26px rgba(15,23,42,.12));
}

.heroPackContent{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.heroPackEyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:flex-start;
  min-height:28px;
  padding:6px 12px;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(34,197,94,.14), rgba(59,130,246,.12));
  border:1px solid rgba(34,197,94,.18);
  color:#215f46;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.heroPackContent h2{
  margin:0;
  color:#0f172a;
  font-size:22px;
  line-height:1.2;
  font-weight:700;
}

.heroPackContent p{
  margin:0;
  color:#475569;
  font-size:15px;
  line-height:1.6;
}

@media (max-width: 980px){
  .hero{
    grid-template-columns:1fr!important;
  }

  .heroPackCard{
    order:3;
  }
}

@media (max-width: 640px){
  .hero{
    gap:14px!important;
  }

  .heroMain{
    gap:12px;
  }

  .heroPackCard{
    padding:14px;
    border-radius:18px;
    gap:12px;
  }

  .heroPackMedia{
    padding:6px;
    border-radius:16px;
  }

  .heroPackMedia img{
    max-width:100%;
  }

  .heroPackEyebrow{
    min-height:26px;
    padding:5px 11px;
    font-size:11px;
  }

  .heroPackContent h2{
    font-size:19px;
  }

  .heroPackContent p{
    font-size:14px;
    line-height:1.5;
  }
}


/* V5.13 – 10er-Pack als integriertes Hero-Visual ohne Zusatztext */
.hero{
  position:relative!important;
  grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)!important;
  align-items:center!important;
  gap:26px!important;
  padding-bottom:30px!important;
}

.heroMain{
  position:relative;
  z-index:2;
  justify-content:center;
  gap:16px!important;
}

.heroPackVisual{
  position:relative;
  align-self:stretch;
  min-height:310px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px 12px 8px 26px;
  overflow:hidden;
  isolation:isolate;
}

.heroPackVisual::before{
  content:"";
  position:absolute;
  inset:16px 0 12px 14px;
  z-index:-2;
  border:1px solid rgba(63,93,155,.12);
  border-radius:28px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.93),rgba(245,248,253,.9)),
    repeating-linear-gradient(90deg,rgba(70,105,170,.045) 0 1px,transparent 1px 34px),
    repeating-linear-gradient(0deg,rgba(70,105,170,.035) 0 1px,transparent 1px 34px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    0 20px 45px rgba(15,23,42,.07);
}

.heroPackVisual::after{
  content:"";
  position:absolute;
  z-index:-1;
  width:260px;
  height:260px;
  right:8%;
  top:50%;
  transform:translateY(-50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(37,99,235,.12) 0,rgba(37,99,235,.055) 44%,rgba(37,99,235,0) 72%);
  filter:blur(2px);
}

.heroPackBadge{
  position:absolute;
  top:29px;
  left:29px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:6px 12px;
  border:1px solid rgba(54,95,156,.2);
  border-radius:999px;
  background:rgba(255,255,255,.92);
  box-shadow:0 5px 16px rgba(15,23,42,.07);
  color:#365f9c;
  font-size:11px;
  line-height:1;
  font-weight:900;
  letter-spacing:.075em;
  text-transform:uppercase;
  backdrop-filter:blur(8px);
}

.heroPackBadge::before{
  content:"";
  width:7px;
  height:7px;
  margin-right:7px;
  border-radius:50%;
  background:#3976c9;
  box-shadow:0 0 0 4px rgba(57,118,201,.1);
}

.heroPackImageStage{
  width:100%;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  transform:translate(7px,8px);
}

.heroPackImageStage img{
  display:block;
  width:min(100%,445px);
  height:auto;
  margin:0;
  object-fit:contain;
  filter:drop-shadow(0 24px 25px rgba(15,23,42,.16));
  transform:rotate(-1deg);
}

.heroPackCard,
.heroPackMedia,
.heroPackContent,
.heroPackEyebrow{
  display:none!important;
}

@media(max-width:980px){
  .hero{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .heroPackVisual{
    min-height:250px;
    padding:12px 10px 2px;
  }

  .heroPackVisual::before{
    inset:8px 0 0;
  }

  .heroPackBadge{
    top:20px;
    left:18px;
  }

  .heroPackImageStage{
    transform:none;
  }

  .heroPackImageStage img{
    width:min(82vw,390px);
  }
}

@media(max-width:640px){
  .hero{
    padding-bottom:22px!important;
  }

  .heroPackVisual{
    min-height:215px;
    padding:8px 5px 0;
  }

  .heroPackVisual::before{
    border-radius:20px;
  }

  .heroPackVisual::after{
    width:190px;
    height:190px;
    right:14%;
  }

  .heroPackBadge{
    top:17px;
    left:14px;
    min-height:27px;
    padding:5px 10px;
    font-size:10px;
  }

  .heroPackBadge::before{
    width:6px;
    height:6px;
    margin-right:6px;
  }

  .heroPackImageStage img{
    width:min(88vw,330px);
    filter:drop-shadow(0 18px 20px rgba(15,23,42,.14));
  }
}


/* V5.14 – 10er-Pack rechts neben STAFFELVORTEILE, mobil darunter */

/* Hero wieder kompakt ohne rechte Bildspalte */
.hero{
  display:block!important;
  padding-bottom:24px!important;
}

.heroMain{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:22px!important;
}

.heroTextWrap{
  min-width:0;
}

.heroMain .benefitHighlight{
  min-width:220px;
  align-self:center;
}

/* Staffelvorteile Kopfbereich */
.benefitTopRow{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
  align-items:center;
  gap:24px;
  margin-bottom:18px;
}

.benefitTopRow .benefitIntro{
  margin:0!important;
  min-width:0;
}

.benefitPackVisual{
  position:relative;
  min-height:245px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px 16px 10px 24px;
  overflow:hidden;
  isolation:isolate;
}

.benefitPackVisual::before{
  content:"";
  position:absolute;
  inset:8px 0 8px 10px;
  z-index:-2;
  border:1px solid rgba(63,93,155,.12);
  border-radius:24px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.95),rgba(245,248,253,.92)),
    repeating-linear-gradient(90deg,rgba(70,105,170,.04) 0 1px,transparent 1px 32px),
    repeating-linear-gradient(0deg,rgba(70,105,170,.03) 0 1px,transparent 1px 32px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.92),
    0 16px 34px rgba(15,23,42,.065);
}

.benefitPackVisual::after{
  content:"";
  position:absolute;
  z-index:-1;
  width:220px;
  height:220px;
  right:7%;
  top:50%;
  transform:translateY(-50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(37,99,235,.11) 0,rgba(37,99,235,.05) 45%,rgba(37,99,235,0) 72%);
}

.benefitPackBadge{
  position:absolute;
  top:20px;
  left:22px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:29px;
  padding:6px 12px;
  border:1px solid rgba(54,95,156,.2);
  border-radius:999px;
  background:rgba(255,255,255,.94);
  box-shadow:0 5px 14px rgba(15,23,42,.065);
  color:#365f9c;
  font-size:10px;
  line-height:1;
  font-weight:900;
  letter-spacing:.075em;
  text-transform:uppercase;
}

.benefitPackBadge::before{
  content:"";
  width:7px;
  height:7px;
  margin-right:7px;
  border-radius:50%;
  background:#3976c9;
  box-shadow:0 0 0 4px rgba(57,118,201,.1);
}

.benefitPackImageStage{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  transform:translate(6px,7px);
}

.benefitPackImageStage img{
  display:block;
  width:min(100%,360px);
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 20px 22px rgba(15,23,42,.15));
  transform:rotate(-1deg);
}

/* Alte Hero-Pack-Regeln neutralisieren */
.heroPackVisual,
.heroPackBadge,
.heroPackImageStage{
  display:none!important;
}

@media(max-width:980px){
  .heroMain{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .heroMain .benefitHighlight{
    min-width:0;
    width:100%;
  }

  .benefitTopRow{
    grid-template-columns:1fr;
    gap:14px;
  }

  .benefitPackVisual{
    order:2;
    min-height:220px;
    padding:14px 10px 4px;
  }

  .benefitPackVisual::before{
    inset:4px 0 0;
  }

  .benefitPackBadge{
    top:16px;
    left:16px;
  }

  .benefitPackImageStage{
    transform:none;
  }

  .benefitPackImageStage img{
    width:min(82vw,350px);
  }
}

@media(max-width:640px){
  .benefitTopRow{
    margin-bottom:14px;
  }

  .benefitPackVisual{
    min-height:195px;
    padding:8px 4px 0;
  }

  .benefitPackVisual::before{
    border-radius:18px;
  }

  .benefitPackVisual::after{
    width:175px;
    height:175px;
    right:13%;
  }

  .benefitPackBadge{
    top:13px;
    left:12px;
    min-height:26px;
    padding:5px 10px;
    font-size:9px;
  }

  .benefitPackBadge::before{
    width:6px;
    height:6px;
    margin-right:6px;
  }

  .benefitPackImageStage img{
    width:min(88vw,310px);
    filter:drop-shadow(0 16px 18px rgba(15,23,42,.13));
  }
}


/* V5.15 – 10er-Pack oben entfernt, stattdessen 150×150 Produktbild bei jedem Produkt */
.benefitTopRow,
.benefitPackVisual,
.benefitPackBadge,
.benefitPackImageStage{
  display:none!important;
}

.productGroupToggle{
  min-height:178px!important;
}

.productGroupImage{
  display:flex;
  align-items:center;
  justify-content:center;
  width:150px;
  height:150px;
  min-width:150px;
  min-height:150px;
  overflow:hidden;
  border:1px solid rgba(63,93,155,.12);
  border-radius:15px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(245,248,253,.96));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.92),
    0 8px 18px rgba(15,23,42,.055);
}

.productGroupImage img{
  display:block;
  width:150px;
  height:150px;
  max-width:150px;
  max-height:150px;
  padding:7px;
  object-fit:contain;
  box-sizing:border-box;
  filter:drop-shadow(0 9px 10px rgba(15,23,42,.12));
}

@media(min-width:761px){
  .productGroupToggle{
    grid-template-columns:150px minmax(0,1fr) auto 40px!important;
    gap:18px!important;
    padding:13px 18px!important;
  }

  .productGroupImage{
    grid-column:1;
    grid-row:1;
  }

  .productGroupName{
    grid-column:2;
    grid-row:1;
    align-self:center;
  }

  .productGroupMeta{
    grid-column:3;
    grid-row:1;
    align-self:center;
  }

  .productGroupChevron{
    grid-column:4;
    grid-row:1;
    align-self:center;
  }
}

@media(max-width:760px){
  .productGroupToggle{
    grid-template-columns:150px minmax(0,1fr) 34px!important;
    grid-template-rows:auto auto!important;
    min-height:174px!important;
    gap:8px 11px!important;
    padding:12px!important;
  }

  .productGroupImage{
    grid-column:1;
    grid-row:1 / 3;
    width:150px;
    height:150px;
    min-width:150px;
    min-height:150px;
    border-radius:14px;
  }

  .productGroupImage img{
    width:150px;
    height:150px;
    max-width:150px;
    max-height:150px;
    padding:6px;
  }

  .productGroupName{
    grid-column:2;
    grid-row:1;
    align-self:end;
    font-size:16px!important;
  }

  .productGroupMeta{
    grid-column:2;
    grid-row:2;
    align-self:start;
    font-size:10px!important;
  }

  .productGroupChevron{
    grid-column:3;
    grid-row:1 / 3;
    align-self:center;
  }
}

@media(max-width:420px){
  .productGroupToggle{
    grid-template-columns:1fr 34px!important;
    grid-template-rows:150px auto auto!important;
    min-height:0!important;
  }

  .productGroupImage{
    grid-column:1 / 3;
    grid-row:1;
    justify-self:center;
  }

  .productGroupName{
    grid-column:1;
    grid-row:2;
    align-self:center;
    font-size:17px!important;
  }

  .productGroupMeta{
    grid-column:1;
    grid-row:3;
  }

  .productGroupChevron{
    grid-column:2;
    grid-row:2 / 4;
  }
}


/* V5.16 – Produktbilder ohne Rahmen */
.productGroupImage{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}

.productGroupImage img{
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}






/* V5.37 – Angaben zur Anfrage: sauberer, geschlossener Formularblock */
#inquiryModal .inquiryContactSection{
  display:block!important;
  margin:0!important;
  padding:18px!important;
  border:1px solid #e4e2dc!important;
  border-radius:14px!important;
  background:#fbfbfa!important;
  box-sizing:border-box!important;
}

#inquiryModal .inquiryContactSection .inquiryFormSectionHead{
  display:block!important;
  margin:0 0 18px!important;
  padding:0 0 12px!important;
  border-bottom:1px solid #eceae5!important;
}

#inquiryModal .inquiryContactSection .inquiryFormSectionHead h3{
  margin:0!important;
  padding:0!important;
  font-size:16px!important;
  line-height:1.25!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
  color:var(--ink)!important;
}

#inquiryModal .inquiryContactGrid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  column-gap:16px!important;
  row-gap:16px!important;
  margin:0!important;
  padding:0!important;
}

#inquiryModal .inquiryContactGrid .wide{
  grid-column:1 / -1!important;
}

#inquiryModal .inquiryContactGrid label{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}

#inquiryModal .inquiryContactGrid label>span{
  display:block!important;
  min-height:17px!important;
  margin:0!important;
  padding:0!important;
  font-size:11px!important;
  font-weight:750!important;
  line-height:1.35!important;
  color:#242424!important;
}

#inquiryModal .inquiryContactGrid label>span small{
  display:inline!important;
  margin-left:4px!important;
  color:#7a7a76!important;
  font-size:10px!important;
  font-weight:500!important;
}

#inquiryModal .inquiryContactGrid :is(input,select),
#inquiryModal .inquiryContactGrid textarea{
  width:100%!important;
  margin:0!important;
  box-sizing:border-box!important;
  border:1px solid #d9d6cf!important;
  background:#fff!important;
  box-shadow:none!important;
}

#inquiryModal .inquiryContactGrid :is(input,select){
  height:44px!important;
  min-height:44px!important;
  padding:10px 12px!important;
  border-radius:10px!important;
}

#inquiryModal .inquiryContactGrid textarea{
  min-height:96px!important;
  padding:11px 12px!important;
  border-radius:10px!important;
  line-height:1.45!important;
}

#inquiryModal .inquiryContactGrid :is(input,select):focus,
#inquiryModal .inquiryContactGrid textarea:focus{
  border-color:#9daec2!important;
  outline:3px solid rgba(75,102,138,.10)!important;
  outline-offset:0!important;
}

#inquiryModal .inquiryContactSection + .inquiryConfirmationsSection{
  margin-top:4px!important;
}

@media(max-width:760px){
  #inquiryModal .inquiryContactSection{
    padding:15px!important;
    border-radius:13px!important;
  }

  #inquiryModal .inquiryContactSection .inquiryFormSectionHead{
    margin-bottom:15px!important;
    padding-bottom:10px!important;
  }

  #inquiryModal .inquiryContactSection .inquiryFormSectionHead h3{
    font-size:15px!important;
  }

  #inquiryModal .inquiryContactGrid{
    grid-template-columns:1fr!important;
    row-gap:14px!important;
    column-gap:0!important;
  }

  #inquiryModal .inquiryContactGrid .wide{
    grid-column:1!important;
  }

  #inquiryModal .inquiryContactGrid label{
    gap:6px!important;
  }

  #inquiryModal .inquiryContactGrid :is(input,select){
    height:46px!important;
    min-height:46px!important;
    padding:11px 12px!important;
    font-size:16px!important;
  }

  #inquiryModal .inquiryContactGrid textarea{
    min-height:100px!important;
    padding:11px 12px!important;
    font-size:16px!important;
  }

  #inquiryModal .inquiryContactSection + .inquiryConfirmationsSection{
    margin-top:2px!important;
  }
}

@media(max-width:380px){
  #inquiryModal .inquiryContactSection{
    padding:13px!important;
  }

  #inquiryModal .inquiryContactGrid{
    row-gap:13px!important;
  }
}




/* V5.39 – Bestätigungen: kompakte Abstände ohne doppelte Grid-Gaps */
#inquiryModal .inquiryConfirmationsSection{
  display:grid!important;
  gap:5px!important;
  margin:0!important;
  padding-top:0!important;
}

#inquiryModal .inquiryConfirmationsSection .inquiryFormSectionHead{
  display:grid!important;
  gap:2px!important;
  margin:0!important;
  padding:0!important;
}

#inquiryModal .inquiryConfirmationsSection .inquiryFormSectionHead h3{
  margin:0!important;
}

#inquiryModal .inquiryConfirmationsSection .inquiryFormSectionHead p{
  margin:0!important;
  line-height:1.35!important;
}

#inquiryModal .inquiryConfirmations{
  display:grid!important;
  gap:5px!important;
  margin:0!important;
  padding:0!important;
}

#inquiryModal .inquiryConfirmations .checkRow,
#inquiryModal .inquiryConfirmations .legalCheck,
#inquiryModal .inquiryConfirmations .contactCheck{
  margin:0!important;
}

#inquiryModal .inquiryPrivacyNote{
  margin:3px 0 0!important;
  padding:9px 10px!important;
}

@media(max-width:760px){
  #inquiryModal .inquiryConfirmationsSection{
    gap:4px!important;
  }

  #inquiryModal .inquiryConfirmationsSection .inquiryFormSectionHead{
    gap:1px!important;
  }

  #inquiryModal .inquiryConfirmations{
    gap:4px!important;
  }

  #inquiryModal .inquiryPrivacyNote{
    margin-top:2px!important;
    padding:8px 9px!important;
  }
}




/* V5.43 – Warenkorb: nur "Nächste Vorteile" als orange Info-Box */
#cartPanel #thresholdNotice{
  display:block!important;
  margin:10px 0 0!important;
  padding:12px 14px!important;
  border:1px solid #e89a35!important;
  border-radius:11px!important;
  background:#fff0dc!important;
  box-shadow:0 4px 12px rgba(200,112,22,.08)!important;
  color:#7a430d!important;
  font-size:12px!important;
  font-weight:750!important;
  line-height:1.45!important;
}

#cartPanel #thresholdNotice::before{
  content:attr(data-heading);
  display:block!important;
  margin:0 0 4px!important;
  font-size:9px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  color:#c56b12!important;
}

@media(max-width:760px){
  #cartPanel #thresholdNotice{
    margin-top:8px!important;
    padding:11px 12px!important;
    font-size:12px!important;
  }
}





/* V5.46 – WARENKORB: komplette vertikale Abstandsüberarbeitung */
#cartPanel{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  padding-top:18px!important;
  padding-bottom:18px!important;
}

/* Kopf / Überschrift */
#cartPanel .cartHeader,
#cartPanel .cartHead,
#cartPanel .cartPanelHead{
  margin:0 0 16px!important;
  padding:0 0 12px!important;
  border-bottom:1px solid #ece8df!important;
}

#cartPanel .cartHeader h2,
#cartPanel .cartHeader h3,
#cartPanel .cartHead h2,
#cartPanel .cartHead h3,
#cartPanel .cartPanelHead h2,
#cartPanel .cartPanelHead h3,
#cartPanel>h2,
#cartPanel>h3{
  margin:0!important;
  line-height:1.25!important;
}

#cartPanel .cartHeader p,
#cartPanel .cartHead p,
#cartPanel .cartPanelHead p{
  margin:5px 0 0!important;
  line-height:1.4!important;
}

/* Warenkorbpositionen */
#cartPanel #cartItems{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  margin:0 0 16px!important;
  padding:0!important;
}

#cartPanel .cartItem{
  margin:0!important;
}

#cartPanel .cartItem + .cartItem{
  margin-top:0!important;
}

/* Zusammenfassung / Summen */
#cartPanel .cartSummary,
#cartPanel .summaryBox,
#cartPanel .cartTotals{
  margin:0 0 16px!important;
  padding-top:13px!important;
  padding-bottom:13px!important;
}

#cartPanel .cartSummary>div,
#cartPanel .summaryBox>div,
#cartPanel .cartTotals>div{
  margin:0!important;
  padding:5px 0!important;
}

#cartPanel .cartSummary>div:first-child,
#cartPanel .summaryBox>div:first-child,
#cartPanel .cartTotals>div:first-child{
  padding-top:0!important;
}

#cartPanel .cartSummary>div:last-child,
#cartPanel .summaryBox>div:last-child,
#cartPanel .cartTotals>div:last-child{
  padding-bottom:0!important;
}

/* Zahlungswahl */
#cartPanel .settlementChoice{
  display:grid!important;
  gap:7px!important;
  margin:0 0 12px!important;
  padding:0!important;
}

#cartPanel .settlementChoice>span{
  margin:0!important;
}

#cartPanel .settlementChoice select{
  margin:0!important;
}

/* Orange Vorteilsbox */
#cartPanel #thresholdNotice{
  margin:0 0 13px!important;
}

/* Live-/Staffelhinweis, falls vorhanden */
#cartPanel .cartLiveBenefit,
#cartPanel .liveBenefit,
#cartPanel .benefitLive,
#cartPanel .cartTierNote{
  margin:0 0 11px!important;
}

/* Aktionsbereich */
#cartPanel .cartActions,
#cartPanel .cartFooter,
#cartPanel .inquiryAction{
  display:flex!important;
  flex-direction:column!important;
  gap:9px!important;
  margin:0!important;
  padding-top:2px!important;
}

#cartPanel .cartActions>*,
#cartPanel .cartFooter>*,
#cartPanel .inquiryAction>*{
  margin-top:0!important;
  margin-bottom:0!important;
}

#cartPanel #inquiryButton,
#cartPanel button[data-open-inquiry]{
  margin:0!important;
}

/* Untergeordnete Hinweise im Warenkorb */
#cartPanel .thresholdNotice + .privacyNote,
#cartPanel .thresholdNotice + small,
#cartPanel .cartNotice,
#cartPanel .cartHint{
  margin-top:10px!important;
}

/* Leerer Warenkorb */
#cartPanel .cartEmpty,
#cartPanel .emptyCart{
  margin:4px 0 16px!important;
  padding:14px 0!important;
}

@media(max-width:760px){
  #cartPanel{
    padding-top:15px!important;
    padding-bottom:15px!important;
  }

  #cartPanel .cartHeader,
  #cartPanel .cartHead,
  #cartPanel .cartPanelHead{
    margin-bottom:13px!important;
    padding-bottom:10px!important;
  }

  #cartPanel .cartHeader p,
  #cartPanel .cartHead p,
  #cartPanel .cartPanelHead p{
    margin-top:4px!important;
  }

  #cartPanel #cartItems{
    gap:9px!important;
    margin-bottom:13px!important;
  }

  #cartPanel .cartSummary,
  #cartPanel .summaryBox,
  #cartPanel .cartTotals{
    margin-bottom:13px!important;
    padding-top:11px!important;
    padding-bottom:11px!important;
  }

  #cartPanel .cartSummary>div,
  #cartPanel .summaryBox>div,
  #cartPanel .cartTotals>div{
    padding:4px 0!important;
  }

  #cartPanel .settlementChoice{
    gap:6px!important;
    margin-bottom:10px!important;
  }

  #cartPanel #thresholdNotice{
    margin-bottom:10px!important;
  }

  #cartPanel .cartLiveBenefit,
  #cartPanel .liveBenefit,
  #cartPanel .benefitLive,
  #cartPanel .cartTierNote{
    margin-bottom:9px!important;
  }

  #cartPanel .cartActions,
  #cartPanel .cartFooter,
  #cartPanel .inquiryAction{
    gap:8px!important;
  }

  #cartPanel .thresholdNotice + .privacyNote,
  #cartPanel .thresholdNotice + small,
  #cartPanel .cartNotice,
  #cartPanel .cartHint{
    margin-top:8px!important;
  }
}

@media(max-width:420px){
  #cartPanel{
    padding-top:13px!important;
    padding-bottom:13px!important;
  }

  #cartPanel .cartHeader,
  #cartPanel .cartHead,
  #cartPanel .cartPanelHead{
    margin-bottom:12px!important;
  }

  #cartPanel #cartItems{
    gap:8px!important;
    margin-bottom:12px!important;
  }

  #cartPanel .cartSummary,
  #cartPanel .summaryBox,
  #cartPanel .cartTotals{
    margin-bottom:12px!important;
  }

  #cartPanel #thresholdNotice{
    margin-bottom:9px!important;
  }

  #cartPanel .cartLiveBenefit,
  #cartPanel .liveBenefit,
  #cartPanel .benefitLive,
  #cartPanel .cartTierNote{
    margin-bottom:9px!important;
  }
}


/* V5.51 – PayPal-Infobox zwischen DHL und WhatsApp */
.frontInfoStrip{
  grid-template-columns:minmax(0,5fr) minmax(0,3fr) minmax(0,2fr)!important;
}

.frontInfoPaypal{
  min-width:0!important;
}

.frontInfoIcon.paypalLogoBadge img{
  display:block!important;
  width:48px!important;
  height:48px!important;
  object-fit:contain!important;
  border-radius:10px!important;
}

@media(max-width:980px){
  .frontInfoStrip{
    grid-template-columns:1fr!important;
  }
}


/* V5.55 – Zahlungsstatus + neue kundenseitige Statusbezeichnungen */
.adminOrderStatus.status-warte_auf_zahlungseingang,
.adminStatusSelect.status-warte_auf_zahlungseingang{
  border-color:#e4bd72!important;
  background:#fff4dc!important;
  color:#8a5a08!important;
}

.status-tone-warte_auf_zahlungseingang{
  --pd-status-bg:#fff4dc;
  --pd-status-border:#e4bd72;
  --pd-status-color:#8a5a08;
}

.adminDashboardStatusCard.status-warte_auf_zahlungseingang{
  border-color:#e4bd72!important;
  background:#fff4dc!important;
}
.adminDashboardStatusCard.status-warte_auf_zahlungseingang>span,
.adminDashboardStatusCard.status-warte_auf_zahlungseingang>strong,
.adminDashboardStatusCard.status-warte_auf_zahlungseingang>small{
  color:#8a5a08!important;
}


/* V5.56 – Zahlungsinformationen auf Statusseite + Admin-Editor */
.statusPaymentCard{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center;margin:18px 0;padding:20px;border:1px solid #ddd9cf;border-radius:16px;background:#fff;box-shadow:0 7px 22px rgba(28,32,38,.05);}
.statusPaymentContent{min-width:0;}
.statusPaymentContent h2{margin:4px 0 7px;font-size:20px;line-height:1.2;}
.statusPaymentContent p{margin:0 0 14px;color:#5d6167;line-height:1.5;}
.statusPaymentIcon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:15px;background:#f5f8fc;border:1px solid #dbe5ef;}
.statusPaymentIcon img{display:block;width:56px;height:56px;object-fit:contain;}
.statusPaymentPaypal{border-color:#b9d1e8;background:#f8fbff;}
.statusPaypalButton{display:inline-flex!important;width:auto!important;min-height:44px;align-items:center;justify-content:center;background:#0070ba!important;border-color:#0065a8!important;color:#fff!important;text-decoration:none!important;}
.statusPaypalButton:hover{background:#005ea6!important;}
.statusPaymentMissing{display:block;color:#8a5a08;}
.statusPaymentBank{grid-template-columns:1fr;border-color:#cbd7e5;background:#f9fbfd;}
.statusBankDetails{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;}
.statusBankDetails>div{padding:11px 12px;border:1px solid #dfe5eb;border-radius:10px;background:#fff;min-width:0;}
.statusBankDetails dt{margin:0 0 4px;font-size:9px;font-weight:850;letter-spacing:.08em;color:#6d7782;}
.statusBankDetails dd{margin:0;font-size:14px;font-weight:750;color:#20262d;overflow-wrap:anywhere;}
.statusBankDetails .statusBankPurpose{grid-column:1/-1;border-color:#e2c77f;background:#fff9e8;}
.adminPaymentEditorHint{margin:0 0 14px;color:#666;line-height:1.45;}
.adminPaymentEditorGrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.adminPaymentEditorColumn{display:grid;align-content:start;gap:11px;padding:14px;border:1px solid #e2dfd7;border-radius:12px;background:#fbfbfa;min-width:0;}
.adminPaymentEditorColumn>strong{font-size:14px;}
.adminPaymentBankGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.adminPaymentPurposeField{grid-column:1/-1;}
@media(max-width:760px){.statusPaymentCard{grid-template-columns:1fr;gap:13px;margin:14px 0;padding:15px}.statusPaymentIcon{width:60px;height:60px}.statusPaymentIcon img{width:48px;height:48px}.statusPaymentContent h2{font-size:18px}.statusPaypalButton{width:100%!important;min-height:46px}.statusBankDetails{grid-template-columns:1fr;gap:8px}.statusBankDetails .statusBankPurpose{grid-column:1}.adminPaymentEditorGrid{grid-template-columns:1fr;gap:13px}.adminPaymentBankGrid{grid-template-columns:1fr}.adminPaymentPurposeField{grid-column:1}}


/* V5.59 – Clipboard-Aktionen für Zahlungsinformationen */
.statusPaypalActions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  align-items:stretch;
}
.statusClipboardButton,
.statusBankCopyButton{
  appearance:none;
  border:1px solid #c7d0da;
  border-radius:9px;
  background:#fff;
  color:#27313b;
  font-weight:800;
  cursor:pointer;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.statusClipboardButton:hover,
.statusBankCopyButton:hover{
  background:#f2f6fa;
  border-color:#9eabb8;
}
.statusClipboardButton:active,
.statusBankCopyButton:active{
  transform:translateY(1px);
}
.statusClipboardButton{
  display:inline-flex;
  min-height:44px;
  padding:0 13px;
  align-items:center;
  justify-content:center;
  font-size:12px;
}
.statusBankDetails dd{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.statusBankDetails dd>span{
  min-width:0;
  overflow-wrap:anywhere;
}
.statusBankCopyButton{
  flex:0 0 auto;
  min-height:32px;
  padding:0 10px;
  font-size:11px;
}
@media(max-width:760px){
  .statusPaypalActions{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
  }
  .statusPaypalActions .statusPaypalButton,
  .statusClipboardButton{
    width:100%!important;
    min-height:46px;
  }
  .statusBankDetails dd{
    align-items:flex-start;
  }
  .statusBankCopyButton{
    min-height:34px;
  }
}


/* V5.60 – PayPal-Werte sichtbar wie EU-Überweisung */
.statusPaypalDetails{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin:0 0 13px;
}
.statusPaypalDetails>div{
  min-width:0;
  padding:11px 12px;
  border:1px solid #d8e4ef;
  border-radius:10px;
  background:#fff;
}
.statusPaypalDetails dt{
  margin:0 0 4px;
  font-size:9px;
  font-weight:850;
  letter-spacing:.08em;
  color:#607589;
}
.statusPaypalDetails dd{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:0;
  font-size:14px;
  font-weight:750;
  color:#20262d;
}
.statusPaypalDetails dd>span{
  min-width:0;
  overflow-wrap:anywhere;
}
@media(max-width:760px){
  .statusPaypalDetails{
    grid-template-columns:1fr;
    gap:8px;
    margin-bottom:11px;
  }
  .statusPaypalDetails dd{
    align-items:flex-start;
  }
}


/* V5.63 – EU-Überweisung: Gesamtbetrag direkt nach ZWECK */
.statusBankDetails .statusBankTotal{
  grid-column:1/-1;
  border-color:#cfd8e2;
  background:#f7fafc;
}
@media(max-width:760px){
  .statusBankDetails .statusBankTotal{
    grid-column:1;
  }
}


/* V5.64 – Mobile Status-Aktualisierung sichtbar als „Synchronisieren“ */
.statusRefreshMobileLabel{
  display:none;
}

@media(max-width:760px){
  .statusRefreshMobileButton{
    width:auto!important;
    min-width:0!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 14px!important;
    gap:8px!important;
    border-radius:999px!important;
    font-size:12px!important;
    font-weight:850!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  .statusRefreshMobileButton svg{
    flex:0 0 auto!important;
  }

  .statusRefreshMobileLabel{
    display:inline!important;
  }
}


/* V5.65 – Hinweis vor Zahlungsfreigabe sichtbarer */
.statusNoPaymentNotice--prominent{
  display:grid!important;
  gap:6px!important;
  margin:18px 0!important;
  padding:15px 16px!important;
  border:1px solid #e5b55d!important;
  border-left:4px solid #d9951f!important;
  border-radius:12px!important;
  background:#fff7e8!important;
  box-shadow:0 5px 14px rgba(145,92,10,.08)!important;
  color:#68450c!important;
}
.statusNoPaymentNotice--prominent>.statusNoPaymentNoticeTitle{
  display:block!important;
  margin:0!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1.42!important;
  color:#71480a!important;
}
.statusNoPaymentNotice--prominent>.statusNoPaymentNoticeText{
  display:block!important;
  margin:0!important;
  padding:0!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.55!important;
  color:#76551f!important;
}
.statusNoPaymentNotice--prominent>.statusNoPaymentNoticeText strong{
  display:inline!important;
  margin:0!important;
  padding:0!important;
  font:inherit!important;
  font-weight:850!important;
  line-height:inherit!important;
  color:inherit!important;
}
@media(max-width:760px){
  .statusNoPaymentNotice--prominent{
    margin:14px 0!important;
    padding:13px 14px!important;
    gap:6px!important;
  }
  .statusNoPaymentNotice--prominent>.statusNoPaymentNoticeTitle{
    font-size:12px!important;
    line-height:1.45!important;
  }
  .statusNoPaymentNotice--prominent>.statusNoPaymentNoticeText{
    font-size:11px!important;
    line-height:1.55!important;
  }
}


/* V5.69 – eigener Laborkennungs-Portalzugang */
.adminPortalReady{color:#247446!important;font-weight:750!important;}
.adminPortalMissing{color:#a05d12!important;font-weight:750!important;}

.laborPortalBody{
  min-height:100vh;
  background:#f5f4f0;
}
.laborPortalShell{
  width:min(1400px,calc(100% - 32px));
  margin:0 auto;
  padding:28px 0 42px;
}
.laborPortalLoginCard{
  width:min(520px,100%);
  margin:8vh auto 0;
  padding:32px;
  border:1px solid #dfddd6;
  border-radius:20px;
  background:#fff;
  box-shadow:0 18px 50px rgba(28,32,38,.08);
}
.laborPortalLoginCard h1{
  margin:7px 0 8px;
  font-size:24px;
  line-height:1.2;
}
.laborPortalIntro{
  margin:0 0 20px;
  color:#666;
  line-height:1.5;
}
.laborPortalLoginForm{
  display:grid;
  gap:13px;
}
.laborPortalLoginForm label{
  display:grid;
  gap:6px;
  font-size:12px;
  font-weight:800;
}
.laborPortalLoginForm input{
  width:100%;
  min-height:46px;
  padding:10px 12px;
  border:1px solid #d7d5cf;
  border-radius:10px;
  background:#fff;
}
.laborPortalLoginForm .primaryButton{
  width:100%;
  min-height:46px;
  margin-top:3px;
}
.laborPortalShopLink{
  display:inline-block;
  margin-top:16px;
  color:#555;
  font-size:12px;
}
.laborPortalHeader{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
  margin-bottom:14px;
  padding:18px 20px;
  border:1px solid #dfddd6;
  border-radius:15px;
  background:#fff;
}
.laborPortalHeader h1{
  margin:3px 0 2px;
  font-size:24px;
}
.laborPortalHeader p{
  margin:0;
}
.laborPortalHeaderActions{
  display:flex;
  gap:8px;
  align-items:center;
}
.laborPortalHeaderActions form{
  margin:0;
}
.laborPortalHeaderActions .ghost{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 13px;
  text-decoration:none;
}
.laborPortalStatsPanel{
  padding:18px;
  border:1px solid #dfddd6;
  border-radius:15px;
  background:#fff;
}
.laborPortalStatsHead{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:18px;
  margin-bottom:14px;
}
.laborPortalStatsHead h2{
  margin:4px 0 4px;
}
.laborPortalStatsHead p{
  margin:0;
  color:#666;
  font-size:12px;
}
.laborPortalMonthForm{
  display:grid;
  gap:5px;
}
.laborPortalMonthForm label{
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.laborPortalMonthForm input{
  min-height:40px;
  padding:7px 10px;
  border:1px solid #d7d5cf;
  border-radius:9px;
  background:#fff;
}
.laborPortalStatCards{
  margin-bottom:14px;
}
.laborPortalTableWrap{
  margin-top:8px;
}
.laborPortalNote{
  margin:14px 0 0;
  padding:11px 12px;
  border-radius:10px;
  background:#f7f6f2;
  color:#666;
  font-size:11px;
  line-height:1.5;
}
@media(max-width:760px){
  .laborPortalShell{
    width:min(100% - 20px,1400px);
    padding:14px 0 28px;
  }
  .laborPortalLoginCard{
    margin:5vh auto 0;
    padding:20px;
    border-radius:15px;
  }
  .laborPortalLoginCard h1{
    font-size:20px;
  }
  .laborPortalHeader{
    align-items:flex-start;
    flex-direction:column;
    padding:15px;
  }
  .laborPortalHeaderActions{
    width:100%;
  }
  .laborPortalHeaderActions>a,
  .laborPortalHeaderActions form{
    flex:1 1 0;
  }
  .laborPortalHeaderActions form button{
    width:100%;
  }
  .laborPortalStatsPanel{
    padding:14px;
  }
  .laborPortalStatsHead{
    align-items:stretch;
    flex-direction:column;
  }
  .laborPortalMonthForm input{
    width:100%;
  }
}


/* V5.70 – Provision und Wahrscheinlichkeitsstatistik */
.commissionProbabilityCard{
  border-color:#e7c582!important;
  background:#fff8e9!important;
}
.commissionProbabilityCard>span,
.commissionProbabilityCard>small{
  color:#805c1a!important;
}
.commissionEarnedCard{
  border-color:#b8d9c2!important;
  background:#f1faf4!important;
}
.commissionEarnedCard>span,
.commissionEarnedCard>small{
  color:#356a46!important;
}
.commissionEarnedCard>strong{
  color:#24633a!important;
}
.laborCommissionCards{
  margin-bottom:14px!important;
}
.adminAccessField small{
  line-height:1.4;
}


/* V5.71 – Laborportal: Monats-Historie und Einzelaufträge */
.laborPortalMonthControls{
  display:grid;
  gap:7px;
  justify-items:end;
}
.laborPortalMonthForm select{
  min-width:150px;
  min-height:40px;
  padding:7px 34px 7px 10px;
  border:1px solid #d7d5cf;
  border-radius:9px;
  background:#fff;
  font:inherit;
}
.laborPortalMonthNav{
  display:flex;
  gap:7px;
}
.laborPortalMonthNav .ghost{
  min-height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  font-size:11px;
  text-decoration:none;
}
.laborPortalOrderGroups{
  display:grid;
  gap:16px;
  margin-top:18px;
}
.laborPortalOrderGroup{
  padding:16px;
  border:1px solid #dedbd3;
  border-radius:13px;
  background:#fff;
}
.laborPortalOrderGroup--probability{
  border-color:#e5c889;
  background:#fffaf0;
}
.laborPortalOrderGroup--paid{
  border-color:#b9d8c2;
  background:#f5fbf7;
}
.laborPortalOrderGroupHead{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:16px;
  margin-bottom:12px;
}
.laborPortalOrderGroupHead h2{
  margin:4px 0 0;
  font-size:18px;
}
.laborPortalOrderGroupSummary{
  display:grid;
  justify-items:end;
  gap:2px;
  text-align:right;
}
.laborPortalOrderGroupSummary strong{
  font-size:20px;
  line-height:1;
}
.laborPortalOrderGroupSummary span{
  color:#666;
  font-size:10px;
}
.laborPortalOrdersTableWrap{
  width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.laborPortalOrdersTable{
  width:100%;
  min-width:980px;
  border-collapse:collapse;
}
.laborPortalOrdersTable th,
.laborPortalOrdersTable td{
  padding:10px 9px;
  border-bottom:1px solid rgba(90,90,90,.12);
  text-align:left;
  vertical-align:top;
  white-space:nowrap;
  font-size:11px;
}
.laborPortalOrdersTable th{
  color:#666;
  font-size:9px;
  font-weight:850;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.laborPortalOrdersTable tbody tr:last-child td{
  border-bottom:0;
}
.laborPortalOrdersTable small{
  color:#666;
  font-size:9px;
}
.laborOrderStatus{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:4px 8px;
  border:1px solid var(--pd-status-border,var(--line));
  border-radius:999px;
  background:var(--pd-status-bg,#f6f6f4);
  color:var(--pd-status-color,#444);
  font-size:10px;
  font-weight:800;
}
.laborPortalOrdersEmpty{
  margin:0;
  padding:12px;
  border:1px dashed rgba(90,90,90,.22);
  border-radius:9px;
  background:rgba(255,255,255,.65);
  color:#666;
  font-size:11px;
  line-height:1.5;
}
@media(max-width:760px){
  .laborPortalMonthControls{
    justify-items:stretch;
  }
  .laborPortalMonthForm select{
    width:100%;
  }
  .laborPortalMonthNav{
    width:100%;
  }
  .laborPortalMonthNav .ghost{
    flex:1 1 0;
  }
  .laborPortalOrderGroup{
    padding:13px;
  }
  .laborPortalOrderGroupHead{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }
  .laborPortalOrderGroupSummary{
    justify-items:start;
    text-align:left;
  }
  .laborPortalOrdersTable{
    min-width:860px;
  }
}


/* V5.79 – Statusseite: zurück zum Shop / weitere Bestellung */
.statusBackToShop{
  display:flex;
  justify-content:center;
  margin:14px 0 2px;
}
.statusBackToShopLink{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:42px!important;
  padding:0 15px!important;
  text-decoration:none!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1.2!important;
}
@media(max-width:760px){
  .statusBackToShop{
    margin-top:12px;
  }
  .statusBackToShopLink{
    width:100%!important;
    min-height:44px!important;
    padding:0 14px!important;
    font-size:11px!important;
  }
}


/* V5.80 – Labor-Portal direkt aus dem Admin öffnen */
.adminAccessEditActions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.adminAccessEditActions .adminAccessSave,
.adminAccessEditActions .adminLaborPortalOpen{
  min-height:42px!important;
}
.adminLaborPortalOpen[disabled]{
  opacity:.45!important;
  cursor:not-allowed!important;
}
.laborPortalAdminPreviewBadge{
  display:inline-flex;
  align-items:center;
  margin-top:7px;
  padding:5px 8px;
  border:1px solid #c8d5e5;
  border-radius:999px;
  background:#f2f6fb;
  color:#405a78;
  font-size:9px;
  font-weight:850;
  letter-spacing:.045em;
  text-transform:uppercase;
}
@media(max-width:760px){
  .adminAccessEditActions{
    display:grid;
    grid-template-columns:1fr;
  }
  .adminAccessEditActions .adminAccessSave,
  .adminAccessEditActions .adminLaborPortalOpen{
    width:100%!important;
    min-height:44px!important;
  }
}


/* V5.83 – Laborportal: Passwort & hierarchische Unter-Laborkennungen */
.laborPortalFeedback{
  margin:0 0 14px!important;
}
.laborPortalManagementPanel{
  margin-top:14px;
  padding:18px;
  border:1px solid #dfddd6;
  border-radius:15px;
  background:#fff;
}
.laborPortalManagementHead,
.laborPortalSubcodesHead{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
}
.laborPortalManagementHead h2,
.laborPortalSubcodesHead h2{
  margin:4px 0;
}
.laborPortalManagementHead p,
.laborPortalSubcodesHead p{
  margin:0;
  color:#666;
  font-size:11px;
  line-height:1.5;
}
.laborPortalManagementMeta{
  display:grid;
  justify-items:end;
  gap:3px;
  text-align:right;
}
.laborPortalManagementMeta strong{
  font-size:22px;
}
.laborPortalManagementMeta span{
  color:#666;
  font-size:9px;
}
.laborPortalManagementCard,
.laborPortalChildCard{
  margin-top:13px;
  border:1px solid #e0ded7;
  border-radius:12px;
  background:#faf9f6;
  overflow:hidden;
}
.laborPortalManagementCard>summary,
.laborPortalChildCard>summary{
  cursor:pointer;
  list-style:none;
  padding:13px 14px;
  font-size:11px;
  font-weight:850;
}
.laborPortalManagementCard>summary::-webkit-details-marker,
.laborPortalChildCard>summary::-webkit-details-marker{
  display:none;
}
.laborPortalManagementForm,
.laborPortalChildCreateForm{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
  padding:0 14px 14px;
}
.laborPortalManagementForm label,
.laborPortalChildCreateForm label{
  display:grid;
  gap:5px;
  min-width:0;
  font-size:10px;
  font-weight:800;
}
.laborPortalManagementForm input,
.laborPortalChildCreateForm input{
  width:100%;
  min-height:42px;
  padding:8px 10px;
  border:1px solid #d7d5cf;
  border-radius:9px;
  background:#fff;
}
.laborPortalManagementForm small,
.laborPortalChildCreateForm small{
  color:#6b6b68;
  font-size:9px;
  font-weight:500;
  line-height:1.4;
}
.laborPortalManagementForm .primaryButton,
.laborPortalChildCreateForm .primaryButton{
  min-height:42px;
  align-self:end;
}
.laborPortalSubcodes{
  margin-top:18px;
  padding-top:17px;
  border-top:1px solid #e5e3dd;
}
.laborPortalSubcodesHead>strong{
  flex:0 0 auto;
  font-size:20px;
}
.laborPortalChildList{
  display:grid;
  gap:9px;
  margin-top:12px;
}
.laborPortalChildCard{
  margin-top:0;
  background:#fff;
}
.laborPortalChildCard>summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:12px;
}
.laborPortalChildCard>summary>span:first-child{
  display:grid;
  gap:2px;
}
.laborPortalChildCard>summary small{
  color:#666;
  font-size:9px;
  font-weight:600;
}
.laborPortalChildSplit{
  color:#4e5660;
  font-size:10px;
  white-space:nowrap;
}
.laborPortalChildActive{
  display:flex!important;
  grid-column:1/-1;
  align-items:center;
  gap:8px!important;
}
.laborPortalChildActive input{
  width:18px!important;
  min-height:18px!important;
}
.laborPortalLimitNotice{
  margin-top:12px;
  padding:11px 12px;
  border:1px solid #e5c889;
  border-radius:10px;
  background:#fff8e9;
  color:#805c1a;
  font-size:10px;
  font-weight:750;
}
@media(max-width:760px){
  .laborPortalManagementPanel{
    padding:14px;
  }
  .laborPortalManagementHead,
  .laborPortalSubcodesHead{
    align-items:flex-start;
    flex-direction:column;
  }
  .laborPortalManagementMeta{
    justify-items:start;
    text-align:left;
  }
  .laborPortalManagementForm,
  .laborPortalChildCreateForm{
    grid-template-columns:1fr;
  }
  .laborPortalChildCard>summary{
    grid-template-columns:1fr;
    align-items:start;
    gap:6px;
  }
  .laborPortalChildSplit{
    white-space:normal;
  }
}

/* V5.84 – Gesamt-Rahmen: Rabatt + Provision */
.laborPortalManagementForm input[readonly],.adminAccessField input[readonly]{background:#f4f4f1!important;color:#62625e!important;}


/* V5.85 – Statusseite: einheitliche Button-Typografie und Shop-Link */
.statusInfoBody a.primaryButton,
.statusInfoBody a.ghost,
.statusInfoBody button{
  font-family:inherit!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.2!important;
}

/* Text-Aktionsbuttons entsprechen in Höhe/Radius dem E-Mail-Support-Button.
   Bestehende Farbdefinitionen bleiben unangetastet. */
.statusInfoBody a.primaryButton,
.statusInfoBody a.ghost,
.statusInfoBody .statusRefreshMobileButton{
  min-height:48px!important;
  border-radius:12px!important;
  padding:0 14px!important;
}

/* Kompakte Kopieren-Buttons behalten ihre kompakte Funktion, nutzen aber
   dieselbe Schriftart und Schriftgröße. */
.statusInfoBody .statusBankCopyButton,
.statusInfoBody .statusClipboardButton{
  font-family:inherit!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.2!important;
}

.statusInfoActions{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  align-items:stretch!important;
}
.statusInfoActions>a{
  width:100%!important;
  min-height:48px!important;
  border-radius:12px!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.2!important;
}
.statusInfoActions .statusBackToShopLink{
  grid-column:2;
  background:#f5f5f3!important;
  border:2px solid #d9d9d4!important;
  color:#777772!important;
  box-shadow:0 2px 8px rgba(35,35,35,.05)!important;
  text-decoration:none!important;
}
.statusInfoActions .statusBackToShopLink:hover{
  background:#eeeeeb!important;
  border-color:#cdcdc7!important;
  color:#62625e!important;
  box-shadow:0 3px 10px rgba(35,35,35,.07)!important;
}
.statusInfoActions .statusBackToShopLink:focus-visible{
  outline:3px solid rgba(95,95,90,.14)!important;
  outline-offset:2px!important;
}

/* Hauptaktionen außerhalb des Supportbereichs ebenfalls typografisch gleich. */
.statusInfoBody .statusTrackingButton,
.statusInfoBody .statusPaypalButton{
  min-height:48px!important;
  border-radius:12px!important;
  font-size:12px!important;
  font-weight:800!important;
}

@media(max-width:760px){
  .statusInfoActions{
    grid-template-columns:1fr!important;
  }
  .statusInfoActions .statusBackToShopLink{
    grid-column:auto;
  }
  .statusInfoBody a.primaryButton,
  .statusInfoBody a.ghost,
  .statusInfoBody .statusRefreshMobileButton{
    min-height:48px!important;
    border-radius:11px!important;
    font-size:12px!important;
  }
}


/* V5.86 – Unter-Laborkennungen sind reine Shop-Kennungen */
.adminAccessPortalPasswordField input[readonly]{
  background:#f5f5f2!important;
  color:#74746f!important;
}


/* V5.87 – Statusaktionen Desktop einzeilig, Synchronisieren typografisch wie E-Mail Support */
@media(min-width:761px){
  .statusInfoActions{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:1fr!important;
  }

  .statusInfoActions .whatsappSupportButton,
  .statusInfoActions .statusEmailSupportButton,
  .statusInfoActions .statusBackToShopLink{
    grid-column:auto!important;
    grid-row:1!important;
    min-width:0!important;
  }
}

@media(max-width:760px){
  .statusRefreshMobileButton{
    width:auto!important;
    min-width:0!important;
    height:48px!important;
    min-height:48px!important;
    padding:0 14px!important;
    border-radius:11px!important;
    font-family:inherit!important;
    font-size:12px!important;
    font-weight:800!important;
    line-height:1.2!important;
  }

  .statusRefreshMobileLabel{
    font-family:inherit!important;
    font-size:12px!important;
    font-weight:800!important;
    line-height:1.2!important;
  }
}


/* V5.88 – Mobile „Synchronisieren“ explizit 12 px */
@media(max-width:760px){
  .statusInfoBody .statusRefreshMobileButton,
  .statusInfoBody .statusRefreshMobileButton .statusRefreshMobileLabel{
    font-size:12px!important;
  }
}


/* V5.95 – Unter-Laborkennung: gekoppelter Rabatt-/Provisions-Schieberegler */
.laborSplitControl{
  grid-column:1/-1;
  display:grid;
  gap:10px;
  padding:12px 13px;
  border:1px solid #d7d5cf;
  border-radius:11px;
  background:#fff;
}
.laborSplitValues{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:12px;
}
.laborSplitValues>div{
  display:grid;
  gap:3px;
}
.laborSplitValues>div:last-child{
  text-align:right;
}
.laborSplitValues span{
  color:#5d5d59;
  font-size:9px;
  font-weight:800;
}
.laborSplitValues output{
  font-size:17px;
  font-weight:900;
  line-height:1.1;
  color:#252524;
}
.laborSplitArrow{
  font-size:18px!important;
  line-height:1;
  color:#7b7b76!important;
}
.laborSplitRange{
  width:100%!important;
  min-height:28px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  cursor:pointer;
  accent-color:#2d333b;
}
.laborSplitControl>small{
  color:#6b6b68;
  font-size:9px;
  font-weight:500;
  line-height:1.4;
}
@media(max-width:560px){
  .laborSplitValues{gap:8px}
  .laborSplitValues output{font-size:15px}
}

/* V5.99 – Laborportal: optische Neuordnung & getrennte, zugeklappte Verwaltung */
.laborPortalBody{
  background:#f1f2f3;
  color:#202225;
}
.laborPortalShell{
  width:min(1240px,calc(100% - 36px));
  padding:24px 0 48px;
}
.laborPortalHeader{
  margin-bottom:16px;
  padding:20px 22px;
  border:1px solid #282c31;
  border-radius:18px;
  background:#202327;
  color:#fff;
  box-shadow:0 10px 26px rgba(22,25,29,.10);
}
.laborPortalHeader .eyebrow,
.laborPortalHeader p{
  color:#c9cdd2;
}
.laborPortalHeader h1{
  margin:5px 0 3px;
  font-size:28px;
  letter-spacing:-.035em;
}
.laborPortalHeaderActions .ghost{
  border-color:#4b5057;
  background:#2b2f34;
  color:#fff;
}
.laborPortalHeaderActions .ghost:hover{
  border-color:#676d75;
  background:#343940;
}
.laborPortalAdminPreviewBadge{
  border-color:#596879;
  background:#303944;
  color:#e7eef7;
}
.laborPortalFeedback{
  border-radius:12px!important;
}
.laborPortalStatsPanel,
.laborPortalManagementPanel{
  border:1px solid #dde0e3;
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 24px rgba(26,31,36,.045);
}
.laborPortalStatsPanel{
  padding:20px;
}
.laborPortalStatsHead{
  align-items:flex-end;
  margin-bottom:18px;
  padding-bottom:16px;
  border-bottom:1px solid #eceef0;
}
.laborPortalStatsHead h2{
  margin:5px 0 5px;
  font-size:23px;
  letter-spacing:-.025em;
}
.laborPortalStatsHead p{
  max-width:680px;
  color:#6a6e73;
  font-size:11px;
  line-height:1.55;
}
.laborPortalMonthControls{
  gap:8px;
}
.laborPortalMonthForm{
  grid-template-columns:auto auto;
  align-items:end;
  gap:7px;
}
.laborPortalMonthForm label{
  grid-column:1/-1;
  color:#6d7176;
}
.laborPortalMonthForm select{
  min-width:156px;
  border-color:#d7dade;
  background:#fafbfb;
}
.laborPortalMonthForm .ghost,
.laborPortalMonthNav .ghost{
  border-color:#d7dade;
  background:#fff;
}
.laborCommissionCards{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px!important;
}
.laborCommissionCards .adminStatCard{
  min-height:112px;
  padding:14px 15px;
  border-color:#e2e4e6;
  border-radius:14px;
  background:#f8f9fa;
}
.laborCommissionCards .adminStatCard>span{
  color:#71757a;
  font-size:9px;
  letter-spacing:.085em;
}
.laborCommissionCards .adminStatCard>strong{
  margin-top:8px;
  font-size:21px;
  letter-spacing:-.025em;
}
.laborCommissionCards .adminStatCard>small{
  margin-top:auto;
  padding-top:8px;
  color:#777b80;
  line-height:1.35;
}
.laborCommissionCards .commissionProbabilityCard{
  border-color:#ead6a7!important;
  background:#fffaf1!important;
}
.laborCommissionCards .commissionEarnedCard{
  border-color:#c9dfd0!important;
  background:#f5faf6!important;
}
.laborPortalStatsPanel>.laborPortalOrderGroupSummary{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  margin:4px 0 2px;
  padding:10px 12px;
  border:1px solid #e4e6e8;
  border-radius:11px;
  background:#fafbfb;
  text-align:left;
}
.laborPortalStatsPanel>.laborPortalOrderGroupSummary strong{
  flex:0 0 auto;
  font-size:10px;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.laborPortalStatsPanel>.laborPortalOrderGroupSummary span{
  color:#65696e;
  font-size:10px;
  line-height:1.5;
  text-align:right;
}
.laborPortalOrderGroups{
  gap:14px;
  margin-top:14px;
}
.laborPortalOrderGroup{
  padding:17px;
  border-radius:14px;
  box-shadow:none;
}
.laborPortalOrderGroupHead{
  padding-bottom:12px;
  border-bottom:1px solid rgba(100,105,110,.12);
}
.laborPortalOrderGroupHead h2{
  font-size:17px;
}
.laborPortalOrderGroupSummary strong{
  font-size:18px;
}
.laborPortalOrdersTable th,
.laborPortalOrdersTable td{
  padding:11px 10px;
}
.laborPortalOrdersTable tbody tr:hover{
  background:rgba(255,255,255,.55);
}
.laborPortalNote{
  margin-top:15px;
  padding:12px 14px;
  border:1px solid #e5e7e9;
  border-radius:11px;
  background:#f7f8f8;
  color:#666b70;
}

.laborPortalManagementPanel{
  margin-top:16px;
  padding:20px;
}
.laborPortalManagementHead--refined{
  align-items:center;
  margin-bottom:15px;
  padding-bottom:16px;
  border-bottom:1px solid #eceef0;
}
.laborPortalManagementHead--refined h2{
  margin:5px 0 5px;
  font-size:22px;
  letter-spacing:-.025em;
}
.laborPortalManagementHead--refined p{
  max-width:720px;
  color:#6a6e73;
  font-size:11px;
}
.laborPortalManagementMeta{
  min-width:135px;
  padding:10px 12px;
  border:1px solid #e0e3e5;
  border-radius:12px;
  background:#f8f9fa;
}
.laborPortalManagementMeta strong{
  font-size:20px;
}
.laborPortalManagementMeta span{
  font-size:9px;
}
.laborPortalSectionLabel{
  display:block;
  color:#7a7e83;
  font-size:9px;
  font-weight:850;
  letter-spacing:.085em;
  text-transform:uppercase;
}
.laborPortalOwnerSplitCard{
  padding:16px;
  border:1px solid #d9dcdf;
  border-radius:14px;
  background:#f8f9fa;
}
.laborPortalOwnerSplitHead{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  margin-bottom:13px;
}
.laborPortalOwnerSplitHead h3{
  margin:4px 0 3px;
  font-size:17px;
  letter-spacing:-.015em;
}
.laborPortalOwnerSplitHead p{
  margin:0;
  color:#70747a;
  font-size:10px;
  line-height:1.45;
}
.laborPortalSplitSnapshot{
  display:flex;
  align-items:center;
  gap:12px;
  flex:0 0 auto;
  padding:9px 11px;
  border:1px solid #e0e2e4;
  border-radius:11px;
  background:#fff;
}
.laborPortalSplitSnapshot>span:not(.laborPortalSplitSnapshotDivider){
  display:grid;
  gap:2px;
  min-width:74px;
}
.laborPortalSplitSnapshot strong{
  font-size:15px;
  line-height:1.1;
}
.laborPortalSplitSnapshot small{
  color:#73777c;
  font-size:8px;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.laborPortalSplitSnapshotDivider{
  width:1px;
  height:30px;
  background:#e2e4e6;
}
.laborPortalOwnerSplitForm{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  padding:0;
}
.laborPortalOwnerSplitForm .laborSplitControl{
  grid-column:auto;
}
.laborPortalOwnerSplitForm .primaryButton{
  min-width:170px;
  min-height:48px;
}
.laborSplitControl{
  gap:9px;
  padding:12px 14px;
  border-color:#d9dcdf;
  background:#fff;
}
.laborSplitValues output{
  font-size:18px;
}
.laborSplitRange{
  accent-color:#292d31;
}

.laborPortalSettingsStack{
  display:grid;
  gap:10px;
  margin-top:12px;
}
.laborPortalSettingsAccordion{
  border:1px solid #dfe2e4;
  border-radius:14px;
  background:#fff;
  overflow:hidden;
}
.laborPortalSettingsAccordion>summary{
  position:relative;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto auto 28px;
  align-items:center;
  gap:12px;
  min-height:76px;
  padding:12px 14px;
  cursor:pointer;
  list-style:none;
  transition:background .15s ease;
}
.laborPortalSettingsAccordion>summary::-webkit-details-marker{
  display:none;
}
.laborPortalSettingsAccordion>summary:hover{
  background:#f8f9fa;
}
.laborPortalSettingsAccordion>summary:focus-visible{
  outline:3px solid rgba(40,45,50,.12);
  outline-offset:-3px;
}
.laborPortalSettingsAccordion>summary::after{
  content:'›';
  grid-column:5;
  grid-row:1;
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border:1px solid #dde0e2;
  border-radius:999px;
  color:#5c6166;
  background:#fff;
  font-size:20px;
  line-height:1;
  transform:rotate(90deg);
  transition:transform .15s ease;
}
.laborPortalSettingsAccordion[open]>summary::after{
  transform:rotate(-90deg);
}
.laborPortalSettingsAccordion[open]>summary{
  background:#f8f9fa;
  border-bottom:1px solid #e5e7e9;
}
.laborPortalAccordionIcon{
  grid-column:1;
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:#25292d;
  color:#fff;
  font-size:14px;
  font-weight:900;
  letter-spacing:2px;
}
.laborPortalAccordionIcon--codes{
  font-size:20px;
  letter-spacing:0;
}
.laborPortalAccordionText{
  grid-column:2;
  display:grid;
  gap:2px;
  min-width:0;
}
.laborPortalAccordionText>strong{
  font-size:14px;
  line-height:1.2;
}
.laborPortalAccordionText>small{
  color:#74787d;
  font-size:9px;
  font-weight:500;
  line-height:1.4;
}
.laborPortalAccordionCount{
  grid-column:3;
  padding:6px 9px;
  border:1px solid #dde0e2;
  border-radius:999px;
  background:#f8f9fa;
  font-size:10px;
  font-weight:850;
  white-space:nowrap;
}
.laborPortalAccordionState{
  grid-column:4;
  color:#777b80;
  font-size:9px;
  font-weight:750;
  white-space:nowrap;
}
.laborPortalSettingsAccordion[open] .laborPortalAccordionState{
  font-size:0;
}
.laborPortalSettingsAccordion[open] .laborPortalAccordionState::after{
  content:'Geöffnet';
  font-size:9px;
}
.laborPortalPasswordSection>summary .laborPortalAccordionState{
  grid-column:4;
}
.laborPortalPasswordSection>summary{
  grid-template-columns:42px minmax(0,1fr) auto 28px;
}
.laborPortalPasswordSection>summary .laborPortalAccordionText{grid-column:2}
.laborPortalPasswordSection>summary .laborPortalAccordionState{grid-column:3}
.laborPortalPasswordSection>summary::after{grid-column:4}
.laborPortalAccordionBody{
  padding:15px;
  background:#fff;
}
.laborPortalPasswordForm{
  grid-template-columns:repeat(3,minmax(0,1fr));
  padding:0;
}
.laborPortalPasswordForm .primaryButton{
  grid-column:1/-1;
  justify-self:start;
  min-width:180px;
}
.laborPortalSubcodesBody{
  display:grid;
  gap:12px;
}
.laborPortalSubcodesIntro{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:11px 12px;
  border:1px solid #e4e6e8;
  border-radius:11px;
  background:#f8f9fa;
}
.laborPortalSubcodesIntro p{
  margin:0;
  color:#656a6f;
  font-size:10px;
  line-height:1.5;
}
.laborPortalSubcodesIntro>strong{
  flex:0 0 auto;
  padding:6px 9px;
  border-radius:999px;
  background:#262a2e;
  color:#fff;
  font-size:9px;
  white-space:nowrap;
}
.laborPortalCreateChildCard,
.laborPortalChildCard{
  margin:0;
  border-color:#e0e3e5;
  background:#fff;
}
.laborPortalCreateChildCard>summary,
.laborPortalChildCard>summary{
  position:relative;
  padding:13px 42px 13px 14px;
  background:#fbfbfb;
}
.laborPortalCreateChildCard>summary::after,
.laborPortalChildCard>summary::after{
  content:'+';
  position:absolute;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border:1px solid #dfe2e4;
  border-radius:999px;
  background:#fff;
  color:#62666b;
  font-size:16px;
  font-weight:600;
}
.laborPortalCreateChildCard[open]>summary::after,
.laborPortalChildCard[open]>summary::after{
  content:'–';
}
.laborPortalCreateChildCard[open]>summary,
.laborPortalChildCard[open]>summary{
  border-bottom:1px solid #e6e8ea;
}
.laborPortalChildCreateForm,
.laborPortalChildEditForm{
  padding:14px;
}
.laborPortalChildList{
  gap:8px;
  margin-top:0;
}
.laborPortalChildCard>summary{
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:10px;
}
.laborPortalChildCard>summary>span:first-child strong{
  font-size:13px;
  letter-spacing:.02em;
}
.laborPortalChildSplit{
  color:#656a6f;
  font-size:9px;
}
.laborPortalChildEmpty{
  margin-top:0;
}

.laborPortalLoginCard{
  margin:7vh auto 0;
  padding:30px;
  border-color:#dfe2e4;
  border-radius:20px;
  box-shadow:0 18px 55px rgba(20,24,28,.08);
}
.laborPortalLoginCard .brandMark{
  border-radius:12px;
  background:#202327;
}
.laborPortalLoginCard h1{
  margin-top:8px;
  font-size:22px;
  letter-spacing:-.025em;
}
.laborPortalLoginForm input{
  border-color:#d9dcdf;
  background:#fafbfb;
}
.laborPortalLoginForm input:focus{
  border-color:#8f959b;
  outline:3px solid rgba(50,55,60,.08);
}

@media(max-width:980px){
  .laborCommissionCards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .laborPortalOwnerSplitForm{grid-template-columns:1fr}
  .laborPortalOwnerSplitForm .primaryButton{width:100%}
  .laborPortalPasswordForm{grid-template-columns:1fr 1fr}
  .laborPortalPasswordForm .primaryButton{grid-column:1/-1}
}
@media(max-width:760px){
  .laborPortalShell{
    width:min(100% - 20px,1240px);
    padding:12px 0 30px;
  }
  .laborPortalHeader{
    padding:15px;
    border-radius:15px;
  }
  .laborPortalHeader h1{font-size:22px}
  .laborPortalStatsPanel,
  .laborPortalManagementPanel{
    padding:14px;
    border-radius:15px;
  }
  .laborPortalStatsHead{
    gap:12px;
    padding-bottom:13px;
  }
  .laborPortalMonthForm{
    grid-template-columns:1fr auto;
  }
  .laborPortalMonthForm select{min-width:0;width:100%}
  .laborCommissionCards{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .laborCommissionCards .adminStatCard{
    min-height:103px;
    padding:12px;
  }
  .laborCommissionCards .adminStatCard>strong{font-size:18px}
  .laborPortalStatsPanel>.laborPortalOrderGroupSummary{
    align-items:flex-start;
    flex-direction:column;
  }
  .laborPortalStatsPanel>.laborPortalOrderGroupSummary span{text-align:left}
  .laborPortalManagementHead--refined{
    align-items:stretch;
    margin-bottom:12px;
  }
  .laborPortalManagementMeta{
    width:100%;
    justify-items:start;
    text-align:left;
  }
  .laborPortalOwnerSplitCard{padding:13px}
  .laborPortalOwnerSplitHead{
    align-items:stretch;
    flex-direction:column;
    gap:10px;
  }
  .laborPortalSplitSnapshot{
    width:100%;
    justify-content:space-between;
  }
  .laborPortalSplitSnapshot>span:not(.laborPortalSplitSnapshotDivider){min-width:0}
  .laborPortalSettingsAccordion>summary{
    grid-template-columns:38px minmax(0,1fr) auto 26px;
    gap:9px;
    min-height:72px;
    padding:11px;
  }
  .laborPortalSettingsAccordion>summary .laborPortalAccordionText{grid-column:2}
  .laborPortalSettingsAccordion>summary .laborPortalAccordionCount{grid-column:3;grid-row:1}
  .laborPortalSettingsAccordion>summary .laborPortalAccordionState{display:none}
  .laborPortalSettingsAccordion>summary::after{grid-column:4;width:26px;height:26px}
  .laborPortalAccordionIcon{width:36px;height:36px}
  .laborPortalPasswordSection>summary{
    grid-template-columns:38px minmax(0,1fr) 26px;
  }
  .laborPortalPasswordSection>summary::after{grid-column:3}
  .laborPortalAccordionBody{padding:12px}
  .laborPortalPasswordForm{grid-template-columns:1fr}
  .laborPortalPasswordForm .primaryButton{grid-column:1;width:100%}
  .laborPortalSubcodesIntro{
    align-items:flex-start;
    flex-direction:column;
    gap:9px;
  }
  .laborPortalChildCreateForm,
  .laborPortalChildEditForm{padding:12px}
  .laborPortalChildCard>summary{
    grid-template-columns:1fr;
    padding-right:42px;
  }
  .laborPortalChildSplit{white-space:normal}
}
@media(max-width:460px){
  .laborCommissionCards{grid-template-columns:1fr 1fr}
  .laborCommissionCards .adminStatCard{min-height:98px}
  .laborSplitValues{grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr)}
  .laborPortalAccordionText>small{display:none}
}

/* V6.00 – Laborportal: klare Formularraster und exakt ausgerichtete Eingabefelder */
.laborPortalManagementPanel{
  padding:22px;
}
.laborPortalManagementHead--refined{
  align-items:center;
  padding-bottom:18px;
  margin-bottom:16px;
  border-bottom:1px solid #e8eaec;
}
.laborPortalManagementHead--refined>div:first-child{
  min-width:0;
}
.laborPortalManagementHead--refined h2{
  margin:5px 0 6px;
  font-size:22px;
  letter-spacing:-.025em;
}
.laborPortalManagementHead--refined p{
  max-width:760px;
  font-size:11px;
  line-height:1.55;
}
.laborPortalManagementMeta{
  min-width:150px;
  padding:10px 12px;
  border:1px solid #e1e4e6;
  border-radius:11px;
  background:#f8f9fa;
}
.laborPortalManagementMeta strong{
  font-size:20px;
}

.laborPortalOwnerSplitCard{
  display:grid;
  gap:15px;
  padding:18px;
  border-radius:13px;
}
.laborPortalOwnerSplitHead{
  align-items:flex-start;
  margin-bottom:0;
}
.laborPortalOwnerSplitForm{
  grid-template-columns:minmax(0,1fr) 190px;
  gap:12px;
  align-items:stretch;
}
.laborPortalOwnerSplitForm .laborSplitControl{
  min-height:112px;
  align-content:center;
}
.laborPortalOwnerSplitForm .primaryButton{
  width:100%;
  min-width:0;
  min-height:48px;
  align-self:end;
}

.laborPortalSettingsStack{
  gap:12px;
  margin-top:14px;
}
.laborPortalSettingsAccordion{
  border-radius:13px;
}
.laborPortalSettingsAccordion>summary{
  min-height:72px;
  padding:12px 15px;
}
.laborPortalAccordionBody{
  padding:18px;
}

/* Einheitliche Formulargeometrie */
.laborPortalPasswordForm,
.laborPortalChildCreateForm,
.laborPortalChildEditForm{
  width:100%;
  gap:14px;
  padding:0;
  align-items:start;
}
.laborPortalPasswordForm{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.laborPortalChildCreateForm,
.laborPortalChildEditForm{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.laborPortalPasswordForm>label,
.laborPortalChildCreateForm>label,
.laborPortalChildEditForm>label{
  display:grid;
  grid-template-rows:minmax(18px,auto) 46px minmax(18px,auto);
  gap:6px;
  min-width:0;
  margin:0;
  align-content:start;
}
.laborPortalPasswordForm>label>span,
.laborPortalChildCreateForm>label>span,
.laborPortalChildEditForm>label>span{
  display:flex;
  align-items:end;
  min-height:18px;
  color:#3f4449;
  font-size:10px;
  font-weight:850;
  line-height:1.25;
}
.laborPortalPasswordForm input:not([type="hidden"]):not([type="checkbox"]),
.laborPortalChildCreateForm input:not([type="hidden"]):not([type="checkbox"]),
.laborPortalChildEditForm input:not([type="hidden"]):not([type="checkbox"]){
  width:100%;
  height:46px;
  min-height:46px;
  padding:0 12px;
  border:1px solid #d4d8dc;
  border-radius:9px;
  background:#fff;
  color:#25292d;
  font:inherit;
  font-size:13px;
  line-height:1.2;
  box-sizing:border-box;
}
.laborPortalPasswordForm input:not([type="hidden"]):not([type="checkbox"]):focus,
.laborPortalChildCreateForm input:not([type="hidden"]):not([type="checkbox"]):focus,
.laborPortalChildEditForm input:not([type="hidden"]):not([type="checkbox"]):focus{
  border-color:#8b9299;
  outline:3px solid rgba(45,51,57,.08);
  outline-offset:0;
}
.laborPortalPasswordForm>label>small,
.laborPortalChildCreateForm>label>small,
.laborPortalChildEditForm>label>small{
  display:block;
  min-height:18px;
  margin:0;
  color:#777c81;
  font-size:9px;
  font-weight:500;
  line-height:1.4;
}
.laborPortalFieldSpacer{
  visibility:hidden;
}


/* Formularelemente, die jeweils eine ganze Rasterzeile belegen */
.laborPortalPasswordForm>.primaryButton,
.laborPortalChildCreateForm>.laborSplitControl,
.laborPortalChildCreateForm>.primaryButton,
.laborPortalChildEditForm>.laborSplitControl,
.laborPortalChildEditForm>.laborPortalChildActive,
.laborPortalChildEditForm>.primaryButton{
  grid-column:1/-1;
}
.laborPortalPasswordForm>.primaryButton,
.laborPortalChildCreateForm>.primaryButton,
.laborPortalChildEditForm>.primaryButton{
  justify-self:start;
  width:auto;
  min-width:220px;
  min-height:46px;
  margin-top:2px;
}

.laborPortalChildCreateForm>.laborSplitControl,
.laborPortalChildEditForm>.laborSplitControl{
  margin-top:2px;
  padding:14px 15px;
  border-color:#dfe2e4;
  border-radius:10px;
  background:#f9fafb;
}
.laborPortalChildEditForm input[readonly]{
  background:#f4f5f5!important;
  color:#62686d!important;
  border-color:#dfe2e4!important;
}
.laborPortalChildActive{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-height:42px;
  padding:9px 11px;
  border:1px solid #e0e3e5;
  border-radius:9px;
  background:#f8f9fa;
}
.laborPortalChildActive input{
  flex:0 0 auto;
  width:18px!important;
  height:18px!important;
  min-height:18px!important;
  margin:0;
}
.laborPortalChildActive span{
  min-height:0!important;
  align-items:center!important;
  font-size:10px!important;
}

.laborPortalCreateChildCard,
.laborPortalChildCard{
  border-radius:11px;
}
.laborPortalCreateChildCard>summary,
.laborPortalChildCard>summary{
  min-height:52px;
  padding-top:12px;
  padding-bottom:12px;
}
.laborPortalCreateChildCard[open],
.laborPortalChildCard[open]{
  background:#fff;
}
.laborPortalCreateChildCard[open] .laborPortalChildCreateForm,
.laborPortalChildCard[open] .laborPortalChildEditForm{
  padding:16px;
}
.laborPortalChildCard>summary{
  grid-template-columns:minmax(210px,1fr) minmax(260px,auto) auto;
  align-items:center;
}
.laborPortalChildCard>summary>span:first-child{
  gap:3px;
}
.laborPortalChildCard>summary>span:first-child strong{
  font-size:14px;
}
.laborPortalChildCard>summary small{
  line-height:1.35;
}
.laborPortalChildSplit{
  max-width:520px;
  line-height:1.4;
  text-align:right;
}

@media(max-width:980px){
  .laborPortalPasswordForm{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .laborPortalPasswordForm>label:last-of-type{
    grid-column:1/-1;
    max-width:calc(50% - 7px);
  }
  .laborPortalOwnerSplitForm{
    grid-template-columns:1fr;
  }
  .laborPortalOwnerSplitForm .primaryButton{
    width:100%;
  }
  .laborPortalChildCard>summary{
    grid-template-columns:minmax(0,1fr) auto;
  }
  .laborPortalChildSplit{
    grid-column:1/-1;
    max-width:none;
    text-align:left;
  }
}

@media(max-width:760px){
  .laborPortalManagementPanel{
    padding:14px;
  }
  .laborPortalManagementHead--refined{
    align-items:stretch;
    padding-bottom:14px;
  }
  .laborPortalManagementMeta{
    width:100%;
    min-width:0;
  }
  .laborPortalOwnerSplitCard{
    padding:14px;
  }
  .laborPortalAccordionBody{
    padding:13px;
  }
  .laborPortalPasswordForm,
  .laborPortalChildCreateForm,
  .laborPortalChildEditForm{
    grid-template-columns:1fr;
    gap:11px;
  }
  .laborPortalPasswordForm>label:last-of-type{
    grid-column:auto;
    max-width:none;
  }
  .laborPortalPasswordForm>label,
  .laborPortalChildCreateForm>label,
  .laborPortalChildEditForm>label{
    grid-template-rows:auto 46px auto;
  }
  .laborPortalPasswordForm>.primaryButton,
  .laborPortalChildCreateForm>.primaryButton,
  .laborPortalChildEditForm>.primaryButton{
    width:100%;
    min-width:0;
  }
  .laborPortalCreateChildCard[open] .laborPortalChildCreateForm,
  .laborPortalChildCard[open] .laborPortalChildEditForm{
    padding:12px;
  }
  .laborPortalChildCard>summary{
    grid-template-columns:1fr;
    gap:6px;
  }
  .laborPortalChildSplit{
    grid-column:auto;
    text-align:left;
  }
}

/* V6.02 – Admin: klares Formraster und durchgehend ausgerichtete Eingabefelder */
.adminShell{
  max-width:1360px;
}

.adminInquiryFilterExpanded{
  grid-template-columns:minmax(320px,2fr) minmax(210px,1fr) minmax(210px,1fr) max-content max-content!important;
  gap:12px!important;
  align-items:end!important;
}
.adminSearchField,
.adminFilterField{
  grid-template-rows:18px 46px;
  gap:6px!important;
}
.adminSearchField label,
.adminFilterField label{
  display:flex;
  align-items:flex-end;
  min-height:18px;
  margin:0;
  font-size:11px;
  line-height:1.2;
}
.adminSearchField input,
.adminFilterField select{
  height:46px;
  min-height:46px!important;
  padding:0 13px!important;
  border-radius:10px!important;
  font-size:13px!important;
}
.adminInquiryFilterExpanded>.ghost{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  height:46px;
  padding:0 15px;
  white-space:nowrap;
}

.adminInquiryEditForm{
  gap:16px!important;
}
.adminEditorGrid,
.adminPricingGrid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:start;
}
.adminEditorPanel{
  padding:17px!important;
}
.adminEditorPanel legend{
  font-size:10px!important;
  letter-spacing:.055em!important;
}

.adminCustomerGrid,
.adminPricingFields,
.adminPaymentBankGrid{
  gap:12px 14px!important;
}
.adminCustomerGrid label,
.adminPricingFields label,
.adminPaymentBankGrid .adminEditorField,
.adminPaymentEditorColumn>.adminEditorField,
.adminFulfillmentColumn>.adminEditorField{
  grid-template-rows:18px 46px;
  gap:6px!important;
  align-content:start;
  min-width:0;
}
.adminCustomerGrid label span,
.adminPricingFields label span,
.adminEditorField>span{
  display:flex;
  align-items:flex-end;
  min-height:18px;
  margin:0!important;
  font-size:10px!important;
  line-height:1.2!important;
}
.adminCustomerGrid input,
.adminEditorField input:not([type="checkbox"]):not([type="file"]),
.adminEditorField select,
.adminPricingFields input,
.adminPricingFields select,
.adminCartEditorToolbar select{
  height:46px!important;
  min-height:46px!important;
  padding:0 12px!important;
  border-radius:10px!important;
  font-size:13px!important;
  line-height:44px;
}
.adminEditorField input[type="file"]{
  width:100%;
  min-height:46px!important;
  padding:8px 10px!important;
  border:1px solid var(--line);
  border-radius:10px!important;
  background:#fff;
  font-size:12px!important;
  line-height:1.3;
}
.adminStatusNotesFields .adminEditorField{
  grid-template-rows:auto auto!important;
}
.adminStatusNotesFields select{
  height:46px!important;
  min-height:46px!important;
}
.adminStatusNotesFields textarea,
.adminEditorField textarea{
  padding:11px 12px!important;
  border-radius:10px!important;
  font-size:13px!important;
  line-height:1.5!important;
}
.adminStatusNotesFields .adminCustomerNoteField textarea{
  min-height:138px!important;
}
.adminStatusNotesFields .adminInternalNotesField textarea{
  min-height:160px!important;
}

.adminPaymentEditorGrid,
.adminFulfillmentGrid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:start;
}
.adminPaymentEditorColumn,
.adminFulfillmentColumn{
  gap:12px!important;
}
.adminPaymentEditorColumn{
  padding:15px!important;
}
.adminPaymentEditorColumn>strong{
  min-height:20px;
  display:flex;
  align-items:center;
  font-size:13px!important;
}
.adminPaymentPurposeField{
  grid-column:1/-1;
}
.adminFillHelpers{
  min-height:40px;
  align-content:center;
}
.adminUploadHint{
  min-height:31px;
}

.adminCartEditorToolbar{
  grid-template-columns:minmax(320px,1fr) max-content max-content!important;
  align-items:stretch;
  gap:10px!important;
}
.adminCartEditorToolbar button{
  min-height:46px;
  height:46px;
  padding:0 14px!important;
  white-space:nowrap;
}
.adminCartEditTable input{
  min-height:40px;
  height:40px;
  padding:0 9px!important;
  border-radius:8px!important;
  line-height:38px;
}
.adminCartEditTable .adminItemDescription{
  margin-top:7px;
}
.adminLineTotal{
  min-height:40px;
  display:flex!important;
  align-items:center;
  padding:0 2px!important;
}
.adminRemoveItem{
  min-height:40px!important;
}

/* Haupt-Laborkennungen: drei saubere, gleich breite Spalten */
.adminAccessForm,
.adminAccessEditForm{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:start!important;
  padding:16px!important;
}
.adminAccessField{
  grid-template-rows:18px 46px minmax(34px,auto);
  gap:6px!important;
  align-content:start;
}
.adminAccessField label{
  display:flex;
  align-items:flex-end;
  min-height:18px;
  margin:0;
  font-size:11px!important;
  line-height:1.2!important;
}
.adminAccessField input{
  height:46px!important;
  min-height:46px!important;
  padding:0 12px!important;
  border-radius:10px!important;
  font-size:13px!important;
  line-height:44px;
}
.adminAccessField small{
  display:block;
  min-height:34px;
  margin:0;
  font-size:9px!important;
  line-height:1.4!important;
}
.adminAccessActive,
.adminAccessEditActive{
  height:46px;
  min-height:46px!important;
  margin-top:24px;
  padding:0 12px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  align-self:start;
}
.adminAccessActive input{
  width:18px!important;
  height:18px!important;
  min-height:18px!important;
}
.adminAccessSubmit,
.adminAccessSave,
.adminLaborPortalOpen{
  min-height:46px!important;
  height:46px;
  align-self:start;
}
.adminAccessSubmit{
  margin-top:24px;
}
.adminAccessEditActions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:24px;
  align-self:start;
}
.adminAccessEditActions .adminAccessSave,
.adminAccessEditActions .adminLaborPortalOpen{
  width:100%;
  margin:0;
  padding-left:10px!important;
  padding-right:10px!important;
  white-space:normal;
  line-height:1.2;
}

@media(max-width:1100px){
  .adminInquiryFilterExpanded{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .adminInquiryFilterExpanded>.adminSearchField{
    grid-column:1/-1;
  }
  .adminInquiryFilterExpanded>.ghost{
    width:100%;
  }
  .adminAccessForm,
  .adminAccessEditForm{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .adminAccessEditActions{
    grid-template-columns:1fr;
  }
}

@media(max-width:760px){
  .adminShell{
    max-width:none;
  }
  .adminInquiryFilterExpanded,
  .adminEditorGrid,
  .adminPricingGrid,
  .adminPaymentEditorGrid,
  .adminFulfillmentGrid,
  .adminAccessForm,
  .adminAccessEditForm{
    grid-template-columns:1fr!important;
  }
  .adminInquiryFilterExpanded>.adminSearchField{
    grid-column:auto;
  }
  .adminSearchField,
  .adminFilterField{
    grid-template-rows:auto 50px;
  }
  .adminSearchField input,
  .adminFilterField select,
  .adminInquiryFilterExpanded>.ghost{
    height:50px!important;
    min-height:50px!important;
    font-size:16px!important;
  }
  .adminCustomerGrid,
  .adminPricingFields,
  .adminPaymentBankGrid{
    grid-template-columns:1fr!important;
  }
  .adminCustomerGrid label.wide,
  .adminPricingFields label.wide,
  .adminPaymentPurposeField{
    grid-column:auto!important;
  }
  .adminCustomerGrid label,
  .adminPricingFields label,
  .adminPaymentBankGrid .adminEditorField,
  .adminPaymentEditorColumn>.adminEditorField,
  .adminFulfillmentColumn>.adminEditorField{
    grid-template-rows:auto 50px;
  }
  .adminCustomerGrid input,
  .adminEditorField input:not([type="checkbox"]):not([type="file"]),
  .adminEditorField select,
  .adminPricingFields input,
  .adminPricingFields select,
  .adminCartEditorToolbar select,
  .adminEditorField input[type="file"]{
    height:50px!important;
    min-height:50px!important;
    font-size:16px!important;
    line-height:48px;
  }
  .adminEditorField input[type="file"]{
    line-height:1.3;
  }
  .adminStatusNotesFields textarea,
  .adminEditorField textarea{
    font-size:16px!important;
  }
  .adminCartEditorToolbar{
    grid-template-columns:1fr!important;
  }
  .adminCartEditorToolbar button{
    width:100%;
    height:50px;
    min-height:50px;
  }
  .adminAccessField{
    grid-template-rows:auto 50px auto;
  }
  .adminAccessField input{
    height:50px!important;
    min-height:50px!important;
    font-size:16px!important;
    line-height:48px;
  }
  .adminAccessActive,
  .adminAccessEditActive,
  .adminAccessSubmit,
  .adminAccessSave,
  .adminLaborPortalOpen{
    height:50px;
    min-height:50px!important;
  }
  .adminAccessActive,
  .adminAccessEditActive,
  .adminAccessSubmit,
  .adminAccessEditActions{
    margin-top:0;
  }
  .adminAccessEditActions{
    grid-template-columns:1fr;
  }
}

/* V6.03: klare getrennte Anlage von Haupt- und Unter-Laborkennungen im Admin */
.adminAccessField select{
  width:100%;
  height:46px!important;
  min-height:46px!important;
  padding:0 36px 0 12px!important;
  border:1px solid var(--line);
  border-radius:10px!important;
  background:#fff;
  color:var(--ink);
  font:inherit;
  font-size:13px!important;
}
.adminAccessChildCreateCard{
  margin-top:16px;
}
.adminAccessChildCreateCard>summary{
  cursor:pointer;
}
.adminAccessChildForm{
  margin-top:0!important;
}
.adminAccessChildForm .adminAccessChildSplit{
  grid-column:1/-1;
  margin:0;
}
.adminAccessChildForm>.adminAccessSubmit{
  grid-column:1/-1;
  width:100%;
  margin-top:0;
}
.adminAccessChildUnavailable{
  margin:0 16px 16px;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fafafa;
  font-size:12px;
  line-height:1.5;
}
@media(max-width:760px){
  .adminAccessField select{
    height:50px!important;
    min-height:50px!important;
    font-size:16px!important;
  }
}
.adminAccessStoragePath{
  margin:10px 0 14px;
  padding:9px 11px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fafafa;
  color:var(--muted);
  font-size:11px;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.adminAccessStoragePath code{color:var(--ink);font-size:11px}

/* V6.09+ – Erweiterungen: Laborvergleich, Partner/Provision und Status-Timeline */
.laborPortalInsights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.laborPortalInsightCard{border:1px solid var(--line,#dfe4e8);border-radius:14px;padding:14px 16px;background:#fff;display:grid;gap:5px}.laborPortalInsightCard>span,.laborPortalInsightCard small{color:#66727c;font-size:12px}.laborPortalInsightCard strong{font-size:20px}.laborPortalYearDetails{margin:12px 0 18px;border:1px solid var(--line,#dfe4e8);border-radius:14px;background:#fff}.laborPortalYearDetails>summary{padding:13px 16px;font-weight:800;cursor:pointer}.laborPortalYearGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 14px 14px}.laborPortalYearMonth{display:grid;gap:3px;padding:10px 12px;border:1px solid #e4e8eb;border-radius:10px;text-decoration:none;color:inherit;background:#fafbfb}.laborPortalYearMonth.isCurrent{border-color:#78858f;background:#f2f4f5}.laborPortalYearMonth span,.laborPortalYearMonth small{font-size:11px;color:#68747d}.laborPortalFilterNotice{margin:12px 0;padding:10px 12px;border-radius:10px;background:#f5f7f8;font-size:13px}.laborPortalChildStats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px 14px 0}.laborPortalChildStats>span{display:grid;gap:3px;border:1px solid #e5e9ec;border-radius:10px;padding:9px 10px;background:#fbfcfc}.laborPortalChildStats small{font-size:10px;color:#69757e;text-transform:uppercase;letter-spacing:.04em}.laborPortalChildStats strong{font-size:13px;overflow-wrap:anywhere}.laborPortalChildNote{grid-column:1/-1}.laborPortalChildNote textarea{min-height:70px;resize:vertical}
.adminStaleFilter{display:flex!important;align-items:center;gap:8px;min-height:46px;padding:0 12px;border:1px solid #dfe4e8;border-radius:10px;background:#fff;white-space:nowrap}.adminStaleFilter input{width:18px;height:18px}.adminOrderAccessSnapshot{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 16px}.adminOrderAccessSnapshot>span{display:grid;gap:4px;border:1px solid #e0e5e8;border-radius:10px;padding:10px 12px;background:#fafbfb}.adminOrderAccessSnapshot small{font-size:10px;color:#69757e;text-transform:uppercase}.adminOrderAccessSnapshot strong{font-size:13px;overflow-wrap:anywhere}.adminNewNoteField{grid-column:1/-1}.adminOrderNoteHistory,.adminOrderStatusHistory{grid-column:1/-1;border:1px solid #e3e7ea;border-radius:10px;background:#fafbfb}.adminOrderNoteHistory>summary,.adminOrderStatusHistory>summary{padding:10px 12px;cursor:pointer;font-weight:800}.adminFulfillmentDates{display:grid;grid-template-columns:1fr 1fr;gap:10px}.adminStorageSection{display:grid;gap:16px}.adminStorageActions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.adminStorageActions form{margin:0}.adminStorageSummary{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 16px;border-radius:12px;border:1px solid #d9e2dc;background:#f6faf7}.adminStorageSummary.hasError{border-color:#ead7d7;background:#fff8f8}.adminStorageSummary span{font-size:12px;color:#65727a;overflow-wrap:anywhere}.adminStorageCheckGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.adminStorageCheck{display:grid;gap:4px;padding:10px 12px;border:1px solid #dfe5e2;border-radius:10px;background:#fff}.adminStorageCheck.hasError{border-color:#e8caca;background:#fff9f9}.adminStorageCheck small{color:#65727a;overflow-wrap:anywhere}.adminStorageBackupList h3{margin:0 0 10px}
.statusTerminalNotice{display:grid;gap:4px;margin:12px 0;padding:13px 15px;border-radius:12px;border:1px solid #dce5df;background:#f5faf6}.statusTerminalNotice--cancelled{border-color:#ead0d0;background:#fff7f7}.statusTrackingCodeRow,.statusTrackingActions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.statusTrackingCodeRow strong{overflow-wrap:anywhere}.statusDhlButton{background:#ffdf00!important;border-color:#e2c500!important;color:#171717!important}.statusTimelineWrap{margin-top:16px;border-top:1px solid #e2e6e9;padding-top:14px}.statusTimelineHead{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}.statusTimelineHead>span{font-weight:800}.statusTimelineHead small{color:#67737c}.statusTimeline{list-style:none;margin:0;padding:0;display:grid;gap:0}.statusTimeline li{position:relative;display:grid;grid-template-columns:18px 1fr;gap:8px;padding:0 0 12px}.statusTimeline li:not(:last-child)::after{content:"";position:absolute;left:7px;top:14px;bottom:0;width:2px;background:#e0e5e8}.statusTimelineDot{width:16px;height:16px;border:3px solid #c8d0d5;border-radius:50%;background:#fff;z-index:1}.statusTimeline li.isCurrent .statusTimelineDot{border-color:#48555f;background:#48555f}.statusTimeline li>div{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.statusTimeline li small{color:#6a767f;font-size:11px}
@media(max-width:900px){.laborPortalInsights,.adminOrderAccessSnapshot{grid-template-columns:1fr 1fr}.laborPortalYearGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.adminStorageCheckGrid{grid-template-columns:1fr 1fr}.laborPortalChildStats{grid-template-columns:1fr 1fr}.adminFulfillmentDates{grid-template-columns:1fr}}
@media(max-width:620px){.laborPortalInsights,.adminOrderAccessSnapshot,.adminStorageCheckGrid{grid-template-columns:1fr}.laborPortalYearGrid{grid-template-columns:1fr 1fr}.statusTimelineHead,.statusTimeline li>div,.adminStorageSummary{align-items:flex-start;flex-direction:column}.laborPortalChildStats{grid-template-columns:1fr 1fr}}

/* V6.12 – Kategorie-Tabs entfernt, Produktsuche als zentrale Katalogsteuerung */
.catalogToolbar{
  display:block;
  margin-bottom:26px;
}
.catalogToolbar input#search{
  display:block;
  width:100%;
  max-width:none;
  min-height:56px;
  padding:16px 18px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 22px rgba(15,23,42,.055);
  font-size:15px;
  font-weight:600;
  letter-spacing:.005em;
}
.catalogToolbar input#search::placeholder{
  color:#8b8b8b;
  font-weight:500;
}
.catalogToolbar input#search:focus{
  border-color:#777;
  box-shadow:0 0 0 3px #0000000d,0 10px 26px rgba(15,23,42,.07);
}
@media(max-width:760px){
  .catalogToolbar{
    margin:0 -12px 18px;
    padding:10px 12px 11px;
    border-bottom:1px solid var(--line);
    background:var(--bg);
  }
  .catalogToolbar input#search{
    min-height:52px;
    padding:13px 15px;
    border-radius:14px;
    font-size:16px;
  }
}
@media(max-width:380px){
  .catalogToolbar{
    margin-left:-9px;
    margin-right:-9px;
    padding-left:9px;
    padding-right:9px;
  }
}

/* PeptidDirekt V6.22 — Kundenadressfreigabe auf der Status-Seite */
.statusAddressPendingText{
  display:grid;
  gap:5px;
}
.statusAddressPendingText strong{
  color:#5a4307;
  font-size:14px;
  line-height:1.45;
}
.statusAddressPendingText span{
  color:#756227;
  font-size:12px;
  line-height:1.5;
}
.statusAddressSuccess,
.statusAddressError{
  margin-top:14px;
  padding:13px 15px;
  display:grid;
  gap:3px;
  border-radius:12px;
}
.statusAddressSuccess{
  border:1px solid #a9d2b8;
  background:#edf8f1;
  color:#174e33;
}
.statusAddressError{
  border:1px solid #e3b3b8;
  background:#fff0f1;
  color:#732b34;
}
.statusAddressSuccess strong,
.statusAddressError strong{font-size:14px}
.statusAddressSuccess span,
.statusAddressError span{font-size:12px;line-height:1.45}
.statusAddressForm{
  margin-top:16px;
  padding:18px;
  display:grid;
  gap:15px;
  border:1px solid #aebfca;
  border-left:5px solid #294f62;
  border-radius:14px;
  background:#f8fbfc;
  box-shadow:0 5px 18px rgba(16,35,45,.045);
}
.statusAddressFormHead{display:grid;gap:5px}
.statusAddressFormHead h3{margin:0;font-size:20px;line-height:1.2;color:#173543}
.statusAddressFormHead p{margin:0;color:#586d78;font-size:13px;line-height:1.5}
.statusAddressFormGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
}
.statusAddressFormGrid label{
  min-width:0;
  display:grid;
  gap:6px;
}
.statusAddressFormGrid label.wide{grid-column:1/-1}
.statusAddressFormGrid label>span{
  color:#294856;
  font-size:12px;
  font-weight:800;
}
.statusAddressFormGrid label>span small{color:#71818a;font-weight:600}
.statusAddressFormGrid input, .statusAddressFormGrid select{
  width:100%;
  min-height:48px;
  padding:0 13px;
  border:1px solid #afc0c9;
  border-radius:9px;
  background:#fff;
  color:#142c37;
  font-size:15px;
}
.statusAddressFormGrid input:focus, .statusAddressFormGrid select:focus{
  border-color:#4f788b;
  box-shadow:0 0 0 3px rgba(34,77,97,.10);
  outline:0;
}
.statusAddressConfirm{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:11px 12px;
  border:1px solid #cad6dc;
  border-radius:10px;
  background:#fff;
  color:#334e5b;
  font-size:13px;
  line-height:1.45;
}
.statusAddressConfirm input{width:19px;height:19px;flex:0 0 auto;margin-top:1px}
.statusAddressSubmit{justify-self:start;min-height:46px}
@media(max-width:680px){
  .statusAddressForm{padding:14px}
  .statusAddressFormGrid{grid-template-columns:1fr}
  .statusAddressFormGrid label.wide{grid-column:auto}
  .statusAddressSubmit{width:100%}
}


/* PeptidDirekt V6.36 — Statusseite: einheitliche Designlinie und Abstände */
.statusDesignV636{
  --status-page-bg:#f3f5f6;
  --status-surface:#ffffff;
  --status-surface-soft:#f7f9fa;
  --status-border:#dfe5e8;
  --status-border-soft:#e8edef;
  --status-text:#17252d;
  --status-muted:#62727b;
  --status-radius-lg:20px;
  --status-radius-md:14px;
  --status-gap-section:18px;
  --status-gap-panel:12px;
  --status-pad-section:20px;
  background:var(--status-page-bg)!important;
  color:var(--status-text);
}
.statusDesignV636 .statusInfoShell{
  width:min(1180px,calc(100% - 40px))!important;
  margin:28px auto!important;
}
.statusDesignV636 .statusInfoCard{
  padding:32px!important;
  border:1px solid var(--status-border)!important;
  border-radius:24px!important;
  background:var(--status-surface)!important;
  box-shadow:0 14px 38px rgba(30,45,54,.07)!important;
}
.statusDesignV636 .statusHero{
  grid-template-columns:minmax(0,1fr) 260px;
  gap:28px;
  align-items:start;
}
.statusDesignV636 .statusHero>div:first-child>p:last-child{
  margin-top:10px;
  color:var(--status-muted);
}
.statusDesignV636 .statusBadgeCard{
  padding:16px 17px;
  border-radius:var(--status-radius-md);
  box-shadow:none;
}
.statusDesignV636 .statusMetaGrid{
  gap:10px;
  margin:22px 0 0;
}
.statusDesignV636 .statusMetaGrid>div{
  padding:12px 13px;
  border-color:var(--status-border-soft);
  border-radius:12px;
  background:var(--status-surface-soft);
}
.statusDesignV636 .statusSection,
.statusDesignV636 .statusCartCard,
.statusDesignV636 .statusPaymentCard{
  margin:var(--status-gap-section) 0 0!important;
  padding:var(--status-pad-section)!important;
  border:1px solid var(--status-border)!important;
  border-radius:var(--status-radius-lg)!important;
  background:var(--status-surface)!important;
  box-shadow:0 5px 18px rgba(28,43,51,.035)!important;
}
.statusDesignV636 .statusSectionHead,
.statusDesignV636 .payCartHead{
  gap:12px;
  margin-bottom:14px!important;
  padding-bottom:12px;
  border-bottom:1px solid var(--status-border-soft);
}
.statusDesignV636 .statusSectionHead h2,
.statusDesignV636 .statusCartCard h2{
  margin:3px 0 0!important;
  font-size:21px!important;
  line-height:1.2!important;
}
.statusDesignV636 .statusCustomerGrid,
.statusDesignV636 .statusNotesGrid,
.statusDesignV636 .statusFulfillmentGrid{
  gap:var(--status-gap-panel);
}
.statusDesignV636 .statusDataCard,
.statusDesignV636 .statusNoteCard,
.statusDesignV636 .statusConfirmCard,
.statusDesignV636 .statusTrackingCard,
.statusDesignV636 .statusOrderImageCard{
  padding:14px 15px;
  border:1px solid var(--status-border-soft);
  border-radius:12px;
  background:var(--status-surface-soft);
}
.statusDesignV636 .statusDataCard>span,
.statusDesignV636 .statusNoteCard>span,
.statusDesignV636 .statusConfirmCard>span,
.statusDesignV636 .statusTrackingCard>span,
.statusDesignV636 .statusOrderImageCard>span,
.statusDesignV636 .statusMetaGrid span,
.statusDesignV636 .statusBadgeCard span{
  color:var(--status-muted);
}
.statusDesignV636 .statusFulfillmentCurrent{
  margin:0 0 12px;
  padding:12px 14px;
  border-radius:12px;
  box-shadow:none;
}
.statusDesignV636 .statusTerminalNotice{
  margin:12px 0 0;
  padding:13px 14px;
  border-radius:12px;
}
.statusDesignV636 .statusTimelineWrap{
  margin-top:16px;
  padding-top:15px;
  border-top:1px solid var(--status-border-soft);
}
.statusDesignV636 .statusTimelineHead{
  margin-bottom:12px;
}
.statusDesignV636 .statusTimeline li{
  padding-bottom:13px;
}
.statusDesignV636 .statusPaymentCard{
  gap:18px;
}
.statusDesignV636 .statusPaymentContent p{
  margin-bottom:14px;
  color:var(--status-muted);
}
.statusDesignV636 .statusPaypalDetails>div,
.statusDesignV636 .statusBankDetails>div{
  border-color:var(--status-border-soft);
  border-radius:11px;
  background:#fff;
}
.statusDesignV636 .statusAgreementSection{
  margin-top:var(--status-gap-section)!important;
}
.statusDesignV636 .statusNoPaymentNotice--prominent{
  margin:var(--status-gap-section) 0 0!important;
}
.statusDesignV636 .statusAddressSuccess,
.statusDesignV636 .statusAddressError,
.statusDesignV636 .statusAddressForm{
  margin-top:14px;
}
.statusDesignV636 .statusAddressForm{
  padding:17px;
  gap:14px;
  border-radius:14px;
  box-shadow:none;
}
.statusDesignV636 .statusRefreshBar--bottom{
  margin:var(--status-gap-section) 0 0!important;
}
.statusDesignV636 .statusInfoActions{
  margin:12px 0 0!important;
  gap:10px!important;
}

@media(max-width:760px){
  .statusDesignV636{
    --status-gap-section:10px;
    --status-gap-panel:8px;
    --status-pad-section:13px;
    background:#f3f5f6!important;
  }
  .statusDesignV636 .statusInfoShell{
    width:100%!important;
    margin:0!important;
    padding:0 10px calc(20px + var(--safe-bottom))!important;
  }
  .statusDesignV636 .statusInfoCard{
    display:flex!important;
    flex-direction:column;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .statusDesignV636 .statusMobileTopbar{
    margin:0 -10px 10px!important;
    padding:calc(8px + var(--safe-top)) 10px 8px!important;
    border-color:var(--status-border)!important;
    background:rgba(243,245,246,.97)!important;
  }
  .statusDesignV636 .statusMobileOverview{
    order:1!important;
    gap:10px;
    margin:0!important;
    padding:14px!important;
    border:1px solid var(--status-border)!important;
    border-radius:16px!important;
    background:#fff!important;
    box-shadow:0 4px 14px rgba(28,43,51,.035)!important;
  }
  .statusDesignV636 .statusCustomerSection{order:2!important;}
  .statusDesignV636 .statusCartCard{order:3!important;}
  .statusDesignV636 .statusFulfillmentSection{order:4!important;}
  .statusDesignV636 .statusPaymentCard{order:5!important;}
  .statusDesignV636 .statusAgreementSection{order:6!important;}
  .statusDesignV636 .statusNoPaymentNotice{order:7!important;}
  .statusDesignV636 .statusRefreshBar--bottom{order:8!important;}
  .statusDesignV636 .statusInfoActions{order:9!important;}

  .statusDesignV636 .statusSection,
  .statusDesignV636 .statusCartCard,
  .statusDesignV636 .statusPaymentCard{
    margin:var(--status-gap-section) 0 0!important;
    padding:var(--status-pad-section)!important;
    border:1px solid var(--status-border)!important;
    border-radius:15px!important;
    background:#fff!important;
    box-shadow:0 3px 12px rgba(28,43,51,.03)!important;
  }
  .statusDesignV636 .statusSectionHead,
  .statusDesignV636 .payCartHead{
    margin-bottom:10px!important;
    padding-bottom:9px;
  }
  .statusDesignV636 .statusSectionHead h2,
  .statusDesignV636 .statusCartCard h2{
    font-size:17px!important;
  }
  .statusDesignV636 .statusCustomerGrid,
  .statusDesignV636 .statusNotesGrid,
  .statusDesignV636 .statusFulfillmentGrid{
    gap:1px!important;
    border-color:var(--status-border-soft);
    background:var(--status-border-soft);
  }
  .statusDesignV636 .statusDataCard,
  .statusDesignV636 .statusNoteCard,
  .statusDesignV636 .statusConfirmCard,
  .statusDesignV636 .statusTrackingCard,
  .statusDesignV636 .statusOrderImageCard{
    padding:10px 11px!important;
    border:0!important;
    border-radius:0!important;
    background:#f8fafb!important;
  }
  .statusDesignV636 .statusCartTable tbody{
    gap:8px!important;
  }
  .statusDesignV636 .statusCartTable tbody tr{
    padding:10px 11px!important;
    border-color:var(--status-border-soft)!important;
    background:#f8fafb!important;
  }
  .statusDesignV636 .statusCartTotals{
    margin-top:10px!important;
  }
  .statusDesignV636 .statusFulfillmentCurrent{
    margin-bottom:10px;
  }
  .statusDesignV636 .statusTimelineWrap{
    margin-top:14px;
    padding-top:13px;
  }
  .statusDesignV636 .statusPaymentCard{
    grid-template-columns:1fr;
    gap:12px;
  }
  .statusDesignV636 .statusAddressForm{
    margin-top:12px;
    padding:13px;
    gap:12px;
  }
  .statusDesignV636 .statusNoPaymentNotice--prominent,
  .statusDesignV636 .statusRefreshBar--bottom{
    margin:var(--status-gap-section) 0 0!important;
  }
  .statusDesignV636 .statusInfoActions{
    margin:10px 0 0!important;
    gap:8px!important;
  }
}

@media(max-width:430px){
  .statusDesignV636 .statusMobileOverview,
  .statusDesignV636 .statusSection,
  .statusDesignV636 .statusCartCard,
  .statusDesignV636 .statusPaymentCard{
    border-radius:14px!important;
  }
}

/* V6.36 – Zahlungsflächen behalten ihre eigene visuelle Kennzeichnung innerhalb der neuen Status-Designlinie. */
.statusDesignV636 .statusPaymentPaypal{
  border-color:#b9d1e8!important;
  background:#f8fbff!important;
}
.statusDesignV636 .statusPaymentBank{
  border-color:#cbd7e5!important;
  background:#f9fbfd!important;
}

/* V6.37 – Statusseite: abschließende Typografie- und Größenlinie */
.statusDesignV637{
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;
  font-size:15px;
  line-height:1.55;
  color:#20323b;
}
.statusDesignV637 .statusInfoShell{
  letter-spacing:0;
}
.statusDesignV637 .statusHero h1{
  margin:5px 0 8px!important;
  font-size:30px!important;
  line-height:1.13!important;
  letter-spacing:-.025em;
  font-weight:800!important;
}
.statusDesignV637 .statusHero p,
.statusDesignV637 .statusSectionHead p,
.statusDesignV637 .payCartHead p{
  font-size:14px!important;
  line-height:1.55!important;
  color:#61717a!important;
}
.statusDesignV637 .statusSectionHead h2,
.statusDesignV637 .statusCartCard h2{
  font-size:20px!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:-.012em;
  color:#1c343f!important;
}
.statusDesignV637 .statusAddressFormHead h3,
.statusDesignV637 .statusPaymentContent h2,
.statusDesignV637 .statusTrackingCard h3,
.statusDesignV637 .statusOrderImageCard h3{
  font-size:17px!important;
  line-height:1.25!important;
  font-weight:800!important;
  color:#213944!important;
}
.statusDesignV637 .paySectionKicker,
.statusDesignV637 .statusMobileOverline,
.statusDesignV637 .statusDataCard>span,
.statusDesignV637 .statusNoteCard>span,
.statusDesignV637 .statusConfirmCard>span,
.statusDesignV637 .statusTrackingCard>span,
.statusDesignV637 .statusOrderImageCard>span,
.statusDesignV637 .statusMetaGrid span,
.statusDesignV637 .statusPaypalDetails dt,
.statusDesignV637 .statusBankDetails dt{
  font-size:11px!important;
  line-height:1.3!important;
  letter-spacing:.055em!important;
  font-weight:800!important;
  color:#64747d!important;
}
.statusDesignV637 .statusDataCard strong,
.statusDesignV637 .statusNoteCard strong,
.statusDesignV637 .statusConfirmCard strong,
.statusDesignV637 .statusMetaGrid strong,
.statusDesignV637 .statusPaypalDetails dd,
.statusDesignV637 .statusBankDetails dd{
  font-size:14px!important;
  line-height:1.45!important;
  color:#213741!important;
}
.statusDesignV637 .statusCartTable{
  font-size:14px!important;
}
.statusDesignV637 .statusCartTable thead th{
  font-size:11px!important;
  letter-spacing:.04em;
  color:#61727b!important;
}
.statusDesignV637 .statusCartTable tbody td{
  font-size:14px!important;
  line-height:1.45!important;
}
.statusDesignV637 .statusCartTable tbody td small,
.statusDesignV637 .statusTimeline small,
.statusDesignV637 .statusShippingElapsedLegend,
.statusDesignV637 .statusPaymentContent p,
.statusDesignV637 .statusAddressFormHead p,
.statusDesignV637 .statusAddressPendingText,
.statusDesignV637 .statusNoPaymentNoticeText{
  font-size:12px!important;
  line-height:1.5!important;
}
.statusDesignV637 .statusFulfillmentCurrent strong,
.statusDesignV637 .statusTerminalNotice strong,
.statusDesignV637 .statusTimelineHead span,
.statusDesignV637 .statusNoPaymentNoticeTitle{
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:800!important;
}
.statusDesignV637 button,
.statusDesignV637 .primaryButton,
.statusDesignV637 .ghost,
.statusDesignV637 .statusInfoActions a{
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.005em;
}
.statusDesignV637 input,
.statusDesignV637 select,
.statusDesignV637 textarea{
  font-family:inherit!important;
  font-size:15px!important;
  line-height:1.4!important;
}
.statusDesignV637 .statusSection,
.statusDesignV637 .statusCartCard,
.statusDesignV637 .statusPaymentCard{
  border-color:#cfd9de!important;
  box-shadow:0 4px 16px rgba(30,49,59,.035)!important;
}
.statusDesignV637 .statusDataCard,
.statusDesignV637 .statusNoteCard,
.statusDesignV637 .statusConfirmCard,
.statusDesignV637 .statusTrackingCard,
.statusDesignV637 .statusOrderImageCard{
  border-color:#dbe2e6!important;
  background:#f8fafb!important;
}
@media(max-width:760px){
  .statusDesignV637{font-size:14px;line-height:1.5}
  .statusDesignV637 .statusHero h1{font-size:23px!important;line-height:1.16!important}
  .statusDesignV637 .statusSectionHead h2,
  .statusDesignV637 .statusCartCard h2{font-size:17px!important}
  .statusDesignV637 .statusAddressFormHead h3,
  .statusDesignV637 .statusPaymentContent h2,
  .statusDesignV637 .statusTrackingCard h3,
  .statusDesignV637 .statusOrderImageCard h3{font-size:16px!important}
  .statusDesignV637 .statusHero p,
  .statusDesignV637 .statusSectionHead p,
  .statusDesignV637 .payCartHead p{font-size:13px!important}
  .statusDesignV637 .statusDataCard strong,
  .statusDesignV637 .statusNoteCard strong,
  .statusDesignV637 .statusConfirmCard strong,
  .statusDesignV637 .statusMetaGrid strong,
  .statusDesignV637 .statusPaypalDetails dd,
  .statusDesignV637 .statusBankDetails dd,
  .statusDesignV637 .statusCartTable tbody td{font-size:13px!important}
  .statusDesignV637 input,
  .statusDesignV637 select,
  .statusDesignV637 textarea{font-size:16px!important}
}

/* V6.38 – Status: aktueller Fulfillment-Status kompakter. */
.statusDesignV638 .statusFulfillmentCurrent{
  font-size:12px!important;
}
.statusDesignV638 .statusFulfillmentCurrent strong{
  font-size:12px!important;
  line-height:1.35!important;
}


/* V6.39 – individuelle Produkt-Badges im Shop. */
.variantSkuLine{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  min-width:0;
}
.productCustomBadge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:100%;
  min-height:22px;
  padding:3px 8px;
  border-radius:999px;
  background:var(--product-badge-bg,#1f4d63);
  color:var(--product-badge-fg,#fff);
  font-size:11px;
  line-height:1.2;
  font-weight:850;
  letter-spacing:.015em;
  overflow-wrap:anywhere;
  box-shadow:0 1px 2px rgba(16,35,45,.14);
}
@media(max-width:760px){
  .variantSkuLine{gap:6px}
  .productCustomBadge{font-size:10px;min-height:21px;padding:3px 7px}
}


/* V6.40 – Produkt-Badges: größere Darstellung + Anzeige in Produktgruppen. */
.productCustomBadge{
  padding:7px 15px!important;
  font-size:12px!important;
}
.productGroupName{
  min-width:0;
}
.productGroupNameText{display:block;min-width:0}
.productGroupBadges{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  margin-top:8px;
  min-width:0;
}
.productGroupBadges .productCustomBadge{flex:0 0 auto}
@media(max-width:760px){
  .productCustomBadge{padding:7px 15px!important;font-size:12px!important;min-height:0!important}
  .productGroupBadges{gap:5px;margin-top:7px}
}

/* V6.42 – produktbezogene Mengenrabatte. */
.quantityDiscountHint{
  display:inline-flex;
  align-items:center;
  max-width:100%;
  margin-left:8px;
  padding:4px 8px;
  border-radius:999px;
  background:#eef6f1;
  color:#245d43;
  font-size:11px;
  line-height:1.25;
  font-weight:800;
  white-space:normal;
}
@media(max-width:760px){
  .quantityDiscountHint{display:flex;margin:6px 0 0;width:max-content;max-width:100%;font-size:11px}
}

/* V6.44 – Mengenrabatt-Hinweis im neutralen Badge-Design. */
.quantityDiscountHint{
  display:inline-flex!important;
  align-items:center!important;
  min-height:25px!important;
  margin-left:8px!important;
  padding:4px 8px!important;
  border:1px solid #d8dde2!important;
  border-radius:8px!important;
  background:#f2f4f6!important;
  color:#58636b!important;
  box-shadow:none!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:11px!important;
  line-height:1.3!important;
  font-weight:600!important;
  letter-spacing:0!important;
  white-space:normal!important;
}
@media(max-width:760px){
  .quantityDiscountHint{
    display:flex!important;
    width:max-content!important;
    max-width:100%!important;
    min-height:27px!important;
    margin:6px 0 0!important;
    padding:5px 8px!important;
  }
}

/* V6.45 – Preisvorschau und Variantenpreis sauber ausrichten. */
.productVariant .priceCell.variantPrice{
  display:flex!important;
  align-items:center!important;
  align-self:stretch!important;
  justify-self:stretch!important;
  min-width:0!important;
  width:100%!important;
  padding:0!important;
  margin:0!important;
  white-space:normal!important;
}
.productVariant .variantPrice .priceOverview{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  align-content:center!important;
  justify-items:start!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
  min-height:100%!important;
}
.productVariant .variantPrice .activePriceDeal{
  display:flex!important;
  align-items:baseline!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:5px 8px!important;
  min-height:24px!important;
  width:100%!important;
  margin:0!important;
}
.productVariant .variantPrice .discountSummaryRow,
.productVariant .variantPrice .priceMetaLine{
  width:100%!important;
  margin:0!important;
}
.productVariant .variantPrice .priceMetaLine{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:6px 8px!important;
}
.productVariant .variantPrice .quantityDiscountHint{
  margin-left:0!important;
}
@media(max-width:760px){
  .productVariant .priceCell.variantPrice{
    align-items:flex-start!important;
    padding-top:11px!important;
  }
  .productVariant .variantPrice .priceOverview{
    gap:7px!important;
  }
}

/* V6.47 – Mengenrabatt auf Desktop zweizeilig, mobile Preis-Metazeile neu ausgerichtet. */
.quantityDiscountHintTitle,
.quantityDiscountHintOffers{
  min-width:0;
}
@media(min-width:761px){
  .productVariant .variantPrice .quantityDiscountHint{
    display:inline-flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:2px!important;
  }
  .productVariant .variantPrice .quantityDiscountHintTitle,
  .productVariant .variantPrice .quantityDiscountHintOffers{
    display:block!important;
    width:100%!important;
  }
}
@media(max-width:760px){
  .productVariant .variantPrice .priceMetaLine{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-items:start!important;
    justify-items:start!important;
    gap:6px!important;
    width:100%!important;
    min-width:0!important;
  }
  .productVariant .variantPrice .priceMetaLine .piecePrice,
  .productVariant .variantPrice .priceMetaLine .quantityDiscountHint{
    justify-self:start!important;
    align-self:start!important;
    width:auto!important;
    max-width:100%!important;
    margin:0!important;
  }
  .productVariant .variantPrice .quantityDiscountHint{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:wrap!important;
    align-items:baseline!important;
    justify-content:flex-start!important;
    gap:2px 4px!important;
  }
  .productVariant .variantPrice .quantityDiscountHintTitle,
  .productVariant .variantPrice .quantityDiscountHintOffers{
    display:inline!important;
    width:auto!important;
  }
}

/* V6.48 – Preisvorteile in drei klaren Zeilen: Stückpreis/Ersparnis, Aktion/Warenkorb, Mengenrabatt. */
.productVariant .variantPrice .discountSummaryRow.priceBenefitStack{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:6px!important;
  width:100%!important;
  margin:0!important;
  align-items:start!important;
  justify-items:start!important;
}
.productVariant .variantPrice .priceBenefitRow{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.productVariant .variantPrice .priceBenefitPrimary .piecePrice,
.productVariant .variantPrice .priceBenefitPrimary .savingBadge,
.productVariant .variantPrice .priceBenefitDiscounts .activeDiscountBadge,
.productVariant .variantPrice .priceBenefitQuantity .quantityDiscountBadge{
  margin:0!important;
}
.productVariant .variantPrice .quantityDiscountBadge{
  background:#f2f4f6!important;
  color:#4b5563!important;
  border-color:#d9dee5!important;
}
@media(max-width:760px){
  .productVariant .variantPrice .discountSummaryRow.priceBenefitStack{
    gap:6px!important;
  }
  .productVariant .variantPrice .priceBenefitRow{
    gap:5px!important;
    align-items:flex-start!important;
  }
}


/* V6.50 – Preisvorteile konsequent untereinander und sauber links ausgerichtet. */
.productVariant .variantPrice .discountSummaryRow.priceBenefitStack{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-auto-flow:row!important;
  align-content:start!important;
  align-items:start!important;
  justify-content:stretch!important;
  justify-items:start!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
.productVariant .variantPrice .discountSummaryRow.priceBenefitStack > .priceBenefitRow{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  justify-self:start!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
.productVariant .variantPrice .priceBenefitPiece .piecePrice,
.productVariant .variantPrice .priceBenefitSaving .savingBadge,
.productVariant .variantPrice .priceBenefitDiscounts .activeDiscountBadge,
.productVariant .variantPrice .priceBenefitQuantity .quantityDiscountBadge{
  margin:0!important;
  justify-self:start!important;
}
.productVariant .variantPrice .priceBenefitPiece .piecePrice{
  display:inline-flex!important;
  align-items:center!important;
  min-height:25px!important;
  padding:4px 8px!important;
  border-radius:8px!important;
  background:#eef7ff!important;
  color:#2f648c!important;
  border:1px solid #d5e8f7!important;
  box-shadow:none!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:11px!important;
  line-height:1.3!important;
  font-weight:600!important;
  white-space:nowrap!important;
}
.productVariant .variantPrice .priceBenefitPiece .piecePrice .newPiecePrice{
  color:#2f648c!important;
  font:inherit!important;
  line-height:inherit!important;
  font-weight:600!important;
}
.productVariant .variantPrice .priceBenefitQuantity .quantityDiscountBadge{
  background:#f2f4f6!important;
  color:#4b5563!important;
  border-color:#d9dee5!important;
}
@media(max-width:760px){
  .productVariant .variantPrice .discountSummaryRow.priceBenefitStack{
    gap:6px!important;
  }
  .productVariant .variantPrice .discountSummaryRow.priceBenefitStack > .priceBenefitRow{
    align-items:flex-start!important;
    gap:5px!important;
  }
  .productVariant .variantPrice .priceBenefitPiece .piecePrice{
    min-height:27px!important;
    padding:5px 8px!important;
    font-size:11px!important;
  }
}

/* V6.52 – Status: Fulfillment-Label 12px auf Desktop/Mobil + Vorzahlungs-Hinweis vor Auftrag & Versand. */
.statusDesignV652 .statusFulfillmentCurrent span{
  font-size:12px!important;
  line-height:1.35!important;
}
@media(max-width:760px){
  .statusDesignV652 .statusNoPaymentNotice{order:4!important;}
  .statusDesignV652 .statusFulfillmentSection{order:5!important;}
  .statusDesignV652 .statusPaymentCard{order:6!important;}
  .statusDesignV652 .statusAgreementSection{order:7!important;}
  .statusDesignV652 .statusRefreshBar--bottom{order:8!important;}
  .statusDesignV652 .statusInfoActions{order:9!important;}
}


/* V6.65 – Mobile: Abstand Hero -> frontInfoStrip um 22 px reduziert */
@media(max-width:640px){
  #shop > section.hero{
    padding-bottom:0!important;
  }
}

/* V6.91 · Shop-Sprachauswahl DE / EN / FR */
.shopLanguageControl{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:5px 8px;border:1px solid #d7e0e6;border-radius:10px;background:#fff;color:#344956;box-shadow:0 1px 2px rgba(18,42,55,.04)}
.shopLanguageControl>span{font-size:15px;line-height:1}
.shopLanguageControl select{appearance:auto;min-width:92px;height:28px;border:0!important;background:transparent!important;padding:0 4px!important;font:700 12px/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#243946;box-shadow:none!important;outline:0}
.shopLanguageControl select:focus-visible{outline:2px solid #2e6e8f;outline-offset:3px;border-radius:4px}
#shop .topActions .shopLanguageControl{min-height:44px;padding:10px 14px;border-color:var(--line);border-radius:999px;background:transparent;color:var(--ink);box-shadow:none}
#shop .topActions .shopLanguageControl select{min-width:0;height:auto;padding:0!important;font:700 16px/1.2 Arial,Helvetica,sans-serif;color:inherit;cursor:pointer}
#shop .topActions>.ghost{min-height:44px}
@media(max-width:760px){
  #shop .topActions .shopLanguageControl,#shop .topActions>.ghost{min-height:38px}
  #shop .topActions .shopLanguageControl select{font-size:11px}
}
.shopLanguageControlGate{position:absolute;right:14px;bottom:14px;z-index:2}
.gateCard{position:relative}
@media(max-width:760px){
  .shopLanguageControl{min-height:36px;padding:4px 7px}
  .shopLanguageControl select{min-width:82px;font-size:12px}
  .shopLanguageControlGate{right:10px;bottom:10px}
  .topActions .shopLanguageControl{order:-1;width:100%;justify-content:flex-end}
}

/* V6.97 · Laborzugang Sprachwahl unterhalb der Karte, zentral */
.gateStage{width:min(470px,100%);display:grid;justify-items:center;gap:12px}
.gateStage>.gateCard{width:100%}
.shopLanguageControlGate{position:static!important;right:auto!important;bottom:auto!important;z-index:auto;justify-self:center;margin:0 auto}
@media(max-width:640px){
  .gateStage{gap:10px}
  .shopLanguageControlGate{margin:0 auto}
}

/* V6.98 · Statusseite Sprachwahl */
.statusInfoCard>.statusLanguageControl{display:flex;width:max-content;max-width:100%;margin:0 0 10px auto;position:relative;z-index:3}
@media(max-width:640px){.statusInfoCard>.statusLanguageControl{margin:0 0 8px auto}}

/* V7.04 · Mobile Shop: Sprachwahl oben rechts über „Laborkennung wechseln“ */
@media(max-width:760px){
  #shop .topbar{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:auto auto auto;
    align-items:start!important;
  }
  #shop .topbar>div:first-child{
    grid-column:1!important;
    grid-row:1 / span 2!important;
    align-self:start;
    min-width:0;
  }
  #shop .topActions .shopLanguageControl{
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end!important;
    align-self:start!important;
    width:auto!important;
    max-width:100%;
    margin:0!important;
    min-height:32px;
    padding:4px 8px!important;
    gap:5px;
  }
  #shop .topActions .shopLanguageControl>span{font-size:13px}
  #shop .topActions .shopLanguageControl select{font-size:10px;line-height:1.2}
  #shop .topActions #logoutButton{
    grid-column:2!important;
    grid-row:2!important;
    justify-self:end!important;
    align-self:start!important;
    width:auto!important;
    margin:0!important;
    min-height:32px;
    padding:6px 9px;
    font-size:10px;
    line-height:1.2;
  }
  #shop .topActions .cartTopButton{
    grid-column:1 / -1!important;
    grid-row:3!important;
    width:100%!important;
    margin:0!important;
  }
}

/* V7.05 · Laborportal auf gemeinsamer Designlinie + Arbeitsstatus */
.laborDesignV705{
  --lp-surface:#fff;
  --lp-soft:#f5f8f9;
  --lp-border:#d7e1e6;
  --lp-text:#203946;
  --lp-muted:#62747e;
  --lp-primary:#173f54;
  --lp-action-bg:#fff7e6;
  --lp-action-border:#e6c66f;
  --lp-action-text:#6f5100;
  --lp-urgent-bg:#fff1f1;
  --lp-urgent-border:#e0aaaa;
  --lp-urgent-text:#842b2b;
  --lp-wait-bg:#eef6fa;
  --lp-wait-border:#bdd8e5;
  --lp-wait-text:#285a70;
  --lp-done-bg:#edf7f0;
  --lp-done-border:#bdd9c5;
  --lp-done-text:#2d6842;
  background:#f3f6f7;color:var(--lp-text);font-size:16px;line-height:1.55;
}
.laborDesignV705 .laborPortalShell{max-width:1360px}
.laborDesignV705 .laborPortalHeader,
.laborDesignV705 .laborPortalStatsPanel,
.laborDesignV705 .laborPortalManagementPanel,
.laborDesignV705 .laborPortalLoginCard,
.laborDesignV705 .laborActionCenter{border:1px solid var(--lp-border);border-radius:16px;background:var(--lp-surface);box-shadow:0 8px 24px rgba(23,63,84,.05)}
.laborDesignV705 h1{font-size:30px;line-height:1.15}.laborDesignV705 h2{font-size:22px;line-height:1.2}.laborDesignV705 h3{font-size:18px}
.laborDesignV705 input:not([type=checkbox]):not([type=radio]),.laborDesignV705 select{min-height:46px;font-size:15px;border-radius:10px;border-color:var(--lp-border)}
.laborDesignV705 textarea{font-size:15px;border-radius:10px;border-color:var(--lp-border)}
.laborDesignV705 button,.laborDesignV705 a.ghost{min-height:44px;border-radius:10px}
.laborDesignV705 .adminStatCard,.laborDesignV705 .laborPortalInsightCard,.laborDesignV705 .laborPortalOrderGroup,.laborDesignV705 details{border-color:var(--lp-border);border-radius:14px}
.laborDesignV705 details>summary{border-radius:12px}

.laborDesignV705 .laborActionCenter{margin:16px 0;padding:16px}
.laborDesignV705 .laborActionCenterHead h2{margin:2px 0 3px}.laborDesignV705 .laborActionCenterHead p{margin:0;color:var(--lp-muted);font-size:13px}
.laborDesignV705 .laborActionCenterGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:8px;margin-top:12px}
.laborDesignV705 .laborActionTile{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--lp-border);border-radius:11px;background:var(--lp-soft);color:inherit;text-decoration:none}
.laborDesignV705 .laborActionTile>span{font-size:9.5px;font-weight:900;letter-spacing:.06em}
.laborDesignV705 .laborActionTile>strong{font-size:14px}.laborDesignV705 .laborActionTile>small{font-size:11.5px;line-height:1.4}
.laborDesignV705 .laborActionTile.tone-urgent{background:var(--lp-urgent-bg);border-color:var(--lp-urgent-border);color:var(--lp-urgent-text)}
.laborDesignV705 .laborActionTile.tone-waiting{background:var(--lp-wait-bg);border-color:var(--lp-wait-border);color:var(--lp-wait-text)}
.laborDesignV705 .laborActionTile.tone-monitor{background:var(--lp-action-bg);border-color:var(--lp-action-border);color:var(--lp-action-text)}
.laborDesignV705 .laborActionTile.tone-done{background:var(--lp-done-bg);border-color:var(--lp-done-border);color:var(--lp-done-text)}
.laborDesignV705 .laborActionTile.tone-info{background:#f3f6f7;color:#45616e}
.laborDesignV705 .laborPortalOrderGroup--probability{border-left:4px solid #d7aa43}.laborDesignV705 .laborPortalOrderGroup--paid{border-left:4px solid #5d9a70}.laborDesignV705 .laborPortalOrderGroup--cancelled{border-left:4px solid #bd6868}

@media(max-width:700px){
  .laborDesignV705{font-size:15px}.laborDesignV705 h1{font-size:26px}.laborDesignV705 h2{font-size:20px}.laborDesignV705 h3{font-size:17px}
  .laborDesignV705 .laborActionCenter{padding:12px;margin:12px 0}.laborDesignV705 .laborActionCenterGrid{grid-template-columns:1fr}
}

#inquiryModal .inquiryContactGrid h4{margin:4px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:15px;line-height:1.35;}

/* Rabatt im Kopfbereich mit warmem Goldakzent und ruhigem Glanzeffekt. */
#shop .ruleBox.benefitHighlight{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:22px 24px!important;
  background:linear-gradient(125deg,#fffaf0 0%,#fff0c6 58%,#ffe2a1 100%)!important;
  border-color:#ddb459!important;
  box-shadow:0 10px 30px rgba(153,103,15,.14),inset 0 1px 0 rgba(255,255,255,.85)!important;
}
#shop .benefitHighlight::before{
  content:"";
  position:absolute;
  inset:-45% auto -45% 0;
  width:45%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);
  transform:translateX(-180%) skewX(-20deg);
  animation:pdDiscountShine 6s ease-in-out infinite;
  pointer-events:none;
  z-index:-1;
}
#shop .benefitHighlight > span{
  color:#7b530c!important;
  letter-spacing:.12em!important;
}
#shop .benefitHighlight #discountHeadline{
  max-width:330px;
  color:#30230e;
}
#shop .benefitHighlight #discountHeadline .discountIntro{
  color:#6d5933;
  font-size:14px!important;
  font-weight:600!important;
}
#shop .benefitHighlight #discountHeadline .discountValue{
  margin-top:8px!important;
  color:#704600;
  font-size:clamp(34px,3.3vw,44px)!important;
  font-weight:700!important;
  line-height:1.1!important;
  letter-spacing:-.035em;
  text-shadow:0 1px 0 rgba(255,255,255,.85);
}
@keyframes pdDiscountShine{
  0%,58%{transform:translateX(-180%) skewX(-20deg);opacity:0;}
  63%{opacity:1;}
  83%,100%{transform:translateX(340%) skewX(-20deg);opacity:0;}
}
@media(max-width:760px){
  #shop .ruleBox.benefitHighlight{padding:19px 20px!important;}
  #shop .benefitHighlight #discountHeadline{max-width:none;}
}
@media(prefers-reduced-motion:reduce){
  #shop .benefitHighlight::before{animation:none;display:none;}
}
