/* Architektur für Katalog, Produktdetail, Kasse, Konto und Dokumente. */
body{font-family:Manrope,Arial,sans-serif}a{color:var(--t-ink)}.wrap{max-width:1320px;padding-inline:5%}main.wrap{padding-block:54px 72px}.muted,small{color:var(--t-muted)}h1{font-size:clamp(32px,4.2vw,58px);font-weight:500;letter-spacing:-.045em;line-height:1.12;margin:12px 0 24px}h2{font-weight:600;letter-spacing:-.025em}h3{font-weight:600}button,.button{border-radius:0;background:var(--t-ink);border-color:var(--t-ink);min-height:48px;padding:12px 22px;font-weight:600;font-size:14px}button:hover,.button:hover{background:#283a55;color:#fff}button.secondary{border-color:var(--t-line);color:var(--t-ink);background:#fff}input,select,textarea{border-radius:0;border-color:#8b939f;color:var(--t-ink);min-height:48px}label{font-size:14px}fieldset{border-radius:0;border-color:var(--t-line);padding:24px;margin-block:22px}legend{font-size:14px}.card{border:1px solid var(--t-line);border-radius:0;padding:28px;box-shadow:none}.notice,.error,.guarantee-card{border-radius:0}.notice{background:#e4e9f0;border-color:var(--t-line);font-size:14px}.banner{background:#e4e9f0;border-color:var(--t-line);font-size:12px;color:var(--t-ink)}.grid.products{gap:24px}.products .card{display:flex;flex-direction:column;border-width:0 0 1px;padding:26px;background:#fff}.products .card h2{font-size:21px;line-height:1.35}.products .card h2 a{text-decoration:none}.products .card h2 a:hover{text-decoration:underline}.products .card p{font-size:14px;line-height:1.7}.products .card article{height:100%}.price{font-size:26px;letter-spacing:-.04em}.actions{gap:14px}.steps{margin-block:28px}.steps li{padding:12px 18px;color:var(--t-muted);border-color:var(--t-line)}.steps [aria-current=step]{color:var(--t-ink);border-color:var(--t-ink)}.totals{padding:24px;background:#e4e9f0}.line{padding-block:24px}.line h2,.line h3{margin-top:0}.guarantee-notice{margin-block:0;background:transparent;border-color:var(--t-line);padding-inline:0;font-size:13px}.guarantee-notice summary{font-weight:500}.t-product-page{max-width:940px}.t-product-page>p:first-of-type{font-size:18px}.t-product-page>dl{display:grid;grid-template-columns:minmax(150px,.65fr) minmax(0,1.35fr);gap:0 32px;background:#fff;padding:28px;margin-block:28px;border-block:1px solid var(--t-line)}.t-product-page>dl dt,.t-product-page>dl dd{padding-block:12px;margin:0;border-bottom:1px solid #e4e9f0;font-size:14px}.t-product-page>dl dt{color:var(--t-muted)}.t-catalog-intro{padding-bottom:20px;border-bottom:1px solid var(--t-line);margin-bottom:30px}.t-catalog-intro p{max-width:580px}.t-catalog-tools{display:grid;grid-template-columns:minmax(210px,260px) minmax(0,1fr);gap:38px}.t-catalog-tools aside{align-self:start;background:#e4e9f0;padding:24px}.t-catalog-tools [role=search]{display:grid;gap:10px}.t-catalog-tools [role=search] label{margin:0}.t-catalog-tools nav{display:block;margin-top:26px}.t-catalog-tools nav ul{list-style:none;margin:0;padding:0}.t-catalog-tools nav a{display:flex;min-height:44px;padding-block:9px;font-size:13px;text-decoration:none;border-top:1px solid #142a4c20}.t-catalog-tools nav [aria-current=page]{font-weight:800}.t-catalog-tools .grid.products{grid-template-columns:repeat(2,minmax(0,1fr))}.t-catalog-tools section>p{margin-top:0;font-size:13px;color:var(--t-muted)}.t-catalog-help{background:var(--t-ink);color:var(--t-paper);padding:30px;margin-top:38px}.t-catalog-help a{color:var(--t-paper);display:inline-flex;align-items:center;min-height:44px}.t-catalog-help h2{font-size:24px}.t-document article{max-width:80ch}.t-document article h2,.t-document article h3{margin-top:38px}.t-document article p{line-height:1.85}.t-document main.wrap{max-width:1100px}#cart-count:empty{display:none}
@media(max-width:1000px){.t-catalog-tools{grid-template-columns:minmax(190px,220px) minmax(0,1fr);gap:24px}.t-catalog-tools .grid.products{gap:16px}.products .card{padding:20px}}
@media(max-width:780px){main.wrap{padding-block:32px 48px}.t-catalog-tools{grid-template-columns:1fr}.t-catalog-tools aside{padding:20px}.t-catalog-tools nav ul{display:flex;flex-wrap:wrap;gap:4px 18px}.t-catalog-tools nav a{border-top:0;border-bottom:1px solid #142a4c20}.t-catalog-tools [role=search]{grid-template-columns:minmax(0,1fr) auto;align-items:end}.t-catalog-tools [role=search] label{grid-column:1/-1}.t-catalog-tools [role=search] input{margin:0}.card{padding:22px}.t-product-page>dl{padding:20px;gap:0 20px}}
@media(max-width:520px){.t-catalog-tools .grid.products{grid-template-columns:1fr}.wrap{padding-inline:6%}.t-catalog-tools [role=search]{grid-template-columns:1fr}.t-product-page>dl{display:block}.t-product-page>dl dt{border:0;padding-bottom:2px}.t-product-page>dl dd{padding-top:0;padding-bottom:14px}.totals{padding:18px}fieldset{padding:18px}.steps li{padding:8px}.t-catalog-help{padding:24px}.grid.products{gap:18px}}

.t-catalog-help .t-eyebrow{color:#d3dae4}

/* Das Inhaltsziel erhält Fokus für Vorlesesoftware, ohne einen Rahmen um die ganze Seite. */
main[tabindex="-1"]:focus,#kasse-schritt[tabindex="-1"]:focus{outline:none}

/* ---- Kaufoberfläche, 24.09.2026 (Agent A: W02, W16, K03, Leerzustand, Formulare) ---- */
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* W02: der Datenschutzsatz unter jedem Formular, ruhig, aber lesbar (Kontrast 5,9:1 auf Weiß). */
.privacy-note{margin:16px 0 0;font-size:14px;line-height:1.6;color:var(--t-muted)}
.privacy-note a{color:var(--t-ink)}
/* Fehler am Feld: Meldung unter dem Feld, Rahmen in der Fehlerfarbe. */
.field-error{margin:6px 0 0;font-size:14px;font-weight:600;color:#8b231b}
input[aria-invalid="true"],select[aria-invalid="true"],textarea[aria-invalid="true"]{border-color:#8b231b;box-shadow:inset 0 0 0 1px #8b231b}
/* Ladezustand: der Knopf ist gesperrt und dreht, bis der Server antwortet. */
button[aria-busy="true"]{cursor:progress}
button[aria-busy="true"]::after{content:"";flex:0 0 auto;width:14px;height:14px;margin-left:10px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:t-laedt .8s linear infinite}
@keyframes t-laedt{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){button[aria-busy="true"]::after{animation:none;border-right-color:currentColor;opacity:.5}}
/* W16: alleinstehende Verweise mindestens 44 px hoch (Passwort vergessen, Zur Anmeldung,
   Weitere Produkte, Zurück zum Warenkorb, Bestellung öffnen); Kästchen samt Beschriftung ebenso. */
.actions>a:not(.button),a.ziel,.link-liste a,.leer-korb-liste a{display:inline-flex;align-items:center;min-height:44px}
label.check{min-height:44px;padding-block:11px;margin-block:4px}
.link-liste,.leer-korb-liste{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:0 28px}
/* K03: Zwischenüberschrift zwischen Seitentitel und Positionen. */
.t-zwischen{font-size:18px;margin:28px 0 0}

/* ---- G1 Gestaltungsrunde 24.09.2026: Warenkorb, Kasse, Konto, Widerruf. Nur app.html (main.app-seite), damit
   Sortiment und Produktseite, die dieselbe Datei laden, unberührt bleiben. ---- */
/* Linke Kante wie Kopf und Fuß: Breite und Rand wie .t-header-inner (bei 1440 px 72 px statt 132 px). */
main.wrap.app-seite{max-width:var(--k-breite,1760px);padding-inline:var(--k-rand,64px)}
.app-seite h1{hyphens:manual;-webkit-hyphens:manual;overflow-wrap:normal;text-wrap:balance}
.app-seite #view>.t-eyebrow:first-child{margin:0}
.app-einleitung{font-size:18px;line-height:1.6;max-width:640px;margin:0 0 8px}
/* Gleiche Feldabstände auch dort, wo zwei Felder nebeneinander stehen (Vorname/Nachname, PLZ/Ort): vorher am Handy
   24 bis 44 px zwischen diesen Feldern, sonst 12 px. */
.app-seite form .grid{margin-block:12px;gap:12px 20px}
.app-seite form .grid>label{margin-block:0}
.app-seite details{padding:0}
.app-seite summary::-webkit-details-marker{display:none}
.wk-plus{font-size:24px;line-height:1;font-weight:400;transition:transform .2s}
details[open]>summary .wk-plus{transform:rotate(45deg)}

/* Positionen mit Vorschaubild (Warenkorb, Prüfschritt, Bestellung) */
.app-seite .line{grid-template-columns:auto minmax(0,1fr) auto;gap:8px 22px;align-items:start}
.line-bild{width:104px;aspect-ratio:1;background:#e4e9f0;border:1px solid var(--t-line);overflow:hidden}
.line-bild.hat-bild{background:#fff}
.line-bild img{display:block;width:100%;height:100%;object-fit:contain}
.app-seite .line h3{font-size:18px;line-height:1.35;margin:0 0 6px}
/* Karte 46 (20.10.2026): einzeiliger Artikelname war nur 24 px hoch; 10 px Polster oben und unten geben 44 px Tippfläche, die negativen Ränder halten die Zeile an ihrem Platz. */
.app-seite .line h3 a{display:inline-block;padding-block:10px;margin-block:-10px;text-decoration:none}
.app-seite .line h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.line-info p,.line-anzahl{font-size:14px;color:var(--t-muted)}
/* Richtwert in der Vorschau (29.09.2026): Position ist mit dem Preis aus dem bisherigen Shop gerechnet. */
.line-richtwert{font-size:14px;color:var(--t-muted);margin-top:4px}
.line-menge{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 12px;margin-top:14px}
.line-menge label{margin:0}
.app-seite .line-menge input{width:96px}
.line-hinweis{margin:14px 0 0;padding:10px 14px;background:#e4e9f0;border-left:3px solid var(--t-ink);font-size:14px;line-height:1.55;color:var(--t-ink)}
.app-seite .line>.price{margin:0;font-size:21px;text-align:right;max-width:11em}
.app-seite .line>.price.price-offen{font-size:14px;font-weight:600;letter-spacing:0;color:var(--t-muted)}

/* Warenkorb: links Positionen, rechts Zusammenfassung mit Hauptknopf, Anfrage aufklappbar darunter */
.wk{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,400px);gap:24px 56px;align-items:start;margin-top:30px}
.wk-positionen{grid-column:1;grid-row:1;min-width:0}
.wk .t-zwischen{margin:0 0 14px}
.wk-liste{background:#fff;border:1px solid var(--t-line);padding:0 28px}
.wk-summe{grid-column:2;grid-row:1/span 2;position:sticky;top:calc(var(--t-kopf-h,0px) + 24px);background:#fff;border:1px solid var(--t-line);padding:28px}
.wk-summe h2{font-size:20px;margin:0 0 18px}
.wk-summe .price{margin:0;font-size:24px}
.wk-summe .price.price-offen{font-size:18px;letter-spacing:-.01em}
.wk-klein,.kasse-klein{margin:10px 0 0;font-size:14px;line-height:1.6;color:var(--t-muted)}
.app-seite .wk-knopf{display:flex;width:100%;margin-top:22px}
.app-seite .wk-weiter-link{display:flex;justify-content:center;margin-top:6px;font-size:14px}
.wk-anfrage{grid-column:1;grid-row:2;min-width:0;background:#fff;border:1px solid var(--t-line)}
.wk-anfrage>summary,.kasse-uebersicht>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:18px 28px;list-style:none;cursor:pointer}
.wk-anfrage>summary h2,.kasse-uebersicht>summary h2{font-size:20px;margin:0}
.wk-anfrage-inhalt{padding:0 28px 28px}
.wk-anfrage-inhalt>p:first-child{margin-top:0}

/* Leerer Warenkorb: Familienkacheln der Startseite (startseite.css), Konfigurator-Band und Kontakt */
.wk-leer{margin-top:34px;padding-top:30px;border-top:1px solid var(--t-line)}
.wk-kopfzeile{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px 24px;margin-bottom:24px}
.wk-kopfzeile h2{margin:0;font-size:clamp(24px,2.4vw,32px)}
.app-seite .st-familie h3 a{color:var(--t-ink);text-decoration:none}
.app-seite .st-familie h3 a:hover{text-decoration:underline;text-underline-offset:5px}
.app-seite .st-familie-nr{margin:0;font-size:12px;font-weight:600;letter-spacing:.12em;color:var(--t-muted)}
.app-seite .st-familie-text>p:not(.st-familie-nr){margin:0;font-size:14px;line-height:1.6;color:#29364a}
.wk-weiter{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:22px;margin-top:22px}
.wk-plan{background:var(--t-ink);color:var(--t-paper);padding:40px 44px}
.wk-plan .t-eyebrow{margin:0;color:var(--t-sage)}
.wk-plan h2{margin:14px 0 12px;font-size:clamp(26px,2.6vw,36px);font-weight:500;letter-spacing:-.04em;line-height:1.15}
.wk-plan p:not(.t-eyebrow){margin:0;max-width:520px}
.wk-plan .actions{margin-top:26px}
.wk-plan .button{background:var(--t-paper);border-color:var(--t-paper);color:var(--t-ink)}
.wk-plan .button:hover{background:#fff;color:var(--t-ink)}
.wk-plan a:not(.button){color:var(--t-paper)}
.app-seite .wk-kontakt{margin:0}
.wk-kontakt .t-eyebrow{margin:0}
.app-seite .wk-kontakt p:not(.t-eyebrow){margin:12px 0 0;font-size:15px}
.app-seite .wk-kontakt .st-kontakt-firma{margin-top:14px;font-size:19px;font-weight:600}

/* Kasse: Formular rund 60 %, rechts die mitlaufende Übersicht; am Handy Schritt als eine Zeile mit Balken */
.kasse{display:grid;grid-template-columns:minmax(0,3fr) minmax(300px,2fr);gap:0 56px;align-items:start}
.kasse-form{grid-column:1;grid-row:1;min-width:0}
.kasse-uebersicht{grid-column:2;grid-row:1;position:sticky;top:calc(var(--t-kopf-h,0px) + 24px);margin-top:22px;background:#fff;border:1px solid var(--t-line)}
.kasse-kurz{display:none}
.kasse-uebersicht-inhalt{padding:0 24px 20px}
.kasse-uebersicht .totals{max-width:none;margin-top:6px;padding:16px 0}
.kasse-aendern{margin:10px 0 0}
.app-seite .line.line-kompakt{grid-template-columns:56px minmax(0,1fr) auto;gap:4px 14px;padding-block:14px}
.line-kompakt:first-child{border-top:1px solid #d9dce1}
.line-kompakt .line-bild{width:56px}
.app-seite .line-kompakt h3{font-size:15px;margin:0}
.line-kompakt .line-masse,.line-kompakt .line-anzahl{margin:2px 0 0;font-size:13px;color:var(--t-muted)}
.app-seite .line-kompakt>.price{font-size:16px;letter-spacing:-.02em}
.steps-kurz{position:absolute;width:1px;height:1px;margin:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.app-seite .steps .erledigt{color:var(--t-ink);border-color:var(--t-sage)}
@media(min-width:901px){.kasse-uebersicht .wk-plus{display:none}.kasse-uebersicht>summary{cursor:default}}

/* Konto: leerer Zustand mit Knopf ins Sortiment */
.konto-titel{margin-top:44px}
.konto-leer{max-width:760px;padding:26px 30px;background:#e4e9f0;border:1px solid var(--t-line);border-left:3px solid var(--t-ink)}
.konto-leer h3{margin:0 0 6px;font-size:20px}
.konto-leer p{margin:0}

/* Widerruf im Aufbau der Rechtstexte (service.css und rechtliches.css gelten nur in dieser Ansicht) */
main.app-seite[data-ansicht=widerruf]{padding-block:0}
/* style.css färbt jeden header weiß und macht jedes nav zur Zeile; im Rechtstext-Aufbau gilt das nicht. */
.app-seite header.s-hero{background:none}
@media(min-width:801px){.app-seite .s-sidebar nav{display:block}}
.app-seite .s-hero h1{hyphens:manual;-webkit-hyphens:manual;text-wrap:balance}
.app-seite .r-inhalt{container-type:inline-size}
.wr-raster{display:grid;grid-template-columns:minmax(0,37em) minmax(240px,1fr);gap:36px 48px;align-items:start}
@container (max-width:720px){.wr-raster{grid-template-columns:minmax(0,1fr)}}
.wr-raster>form>label:first-child{margin-top:0}
.app-seite .wr-merk.gw-merksatz{margin-top:0!important}
.wr-merk h2{margin:0;font-size:inherit;letter-spacing:0;line-height:inherit}
.wr-merk dl{margin:10px 0 0}
.wr-merk dl>div{padding-block:12px;border-top:1px solid #d3dae460}
.wr-merk dt{font-size:13px;font-weight:700;color:var(--t-sage)}
.wr-merk dd{margin:4px 0 0;font-size:15px;line-height:1.6}
.wr-merk-quelle{margin-top:4px;padding-top:14px;border-top:1px solid #d3dae460;font-size:13px;line-height:1.6;color:var(--t-sage)}
.wr-merk-quelle a{color:var(--t-paper);text-decoration:underline;text-underline-offset:3px}
.wr-schritt>p{margin:18px 0 0}
.wr-schritt>.card:first-child,.wr-schritt.card{margin-top:0}
.wr-schritt.card p+p{margin-top:10px}
.wr-schritt.card button{margin-top:20px}

@media(max-width:900px){
  .wk,.kasse{grid-template-columns:minmax(0,1fr)}
  .wk-positionen,.wk-summe,.wk-anfrage,.kasse-form,.kasse-uebersicht{grid-column:auto;grid-row:auto}
  .wk-summe,.kasse-uebersicht{position:static}
  .kasse-uebersicht{margin-top:0}
  .kasse-kurz{display:block;margin-top:4px;font-size:14px;font-weight:400;letter-spacing:0;color:var(--t-muted)}
}
@media(max-width:780px){.wk-weiter{grid-template-columns:minmax(0,1fr)}.wk-plan{padding:30px 24px}}
@media(max-width:600px){
  .steps-kurz{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal;display:block;margin:22px 0 10px;font-family:inherit;font-size:15px;font-weight:600;line-height:1.5;letter-spacing:normal}
  .app-seite .steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 0 22px}
  .app-seite .steps li{height:4px;padding:0;border:0;background:var(--t-line)}
  .app-seite .steps li[aria-current=step],.app-seite .steps li.erledigt{background:var(--t-ink)}
  .app-seite .steps li>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  /* Handy: Bild und Name oben, Mengenfeld und Hinweis über die volle Breite darunter. */
  .app-seite .line:not(.line-kompakt){grid-template-columns:64px minmax(0,1fr);gap:6px 16px}
  .app-seite .line:not(.line-kompakt)>.line-text{display:contents}
  .app-seite .line:not(.line-kompakt)>.line-bild{width:64px;grid-row:1/span 3}
  .app-seite .line:not(.line-kompakt) .line-text>*,.app-seite .line:not(.line-kompakt)>.price{grid-column:2}
  .app-seite .line:not(.line-kompakt) .line-text>.line-menge,.app-seite .line:not(.line-kompakt) .line-text>.line-hinweis{grid-column:1/-1;order:2}
  .app-seite .line:not(.line-kompakt)>.price{text-align:left;font-size:19px;max-width:none}
  .app-seite .line:not(.line-kompakt)>.price.price-offen{font-size:15px}
  .line-menge{margin-top:10px;gap:8px}
  .app-seite .line-menge input{width:64px}
  .line-menge button{padding-inline:14px}
  .wk-liste{padding:0 18px}
  .wk-summe{padding:22px}
  .wk-anfrage>summary,.kasse-uebersicht>summary{padding:16px 18px}
  .wk-anfrage-inhalt{padding:0 18px 22px}
  .kasse-uebersicht-inhalt{padding:0 18px 18px}
  .konto-leer{padding:22px}
  .app-einleitung{font-size:16px}
}

.line-bild svg{display:block;width:100%;height:auto;max-height:140px}.line-edit{display:inline-flex;align-items:center;min-height:44px}
/* Paket V6 (02.10.2026, K-A7): Beträge in den Summen brechen nie um ("149,0 / 0 €" neben dem langen Prüftarif-Hinweis), der Hinweis selbst steht klein unter "Versand". */
.totals div>span+span{white-space:nowrap;flex-shrink:0}.totals .versand-hinweis{display:block;font-size:13px;line-height:1.45}
/* Paket V6 (K-A1 bis K-A3): Hinweise und Meldungen über der Ansicht bekommen Abstand; mit Fokusrahmen lag die Meldung sonst auf "DEIN EINKAUF". */
.app-seite>#feedback:not([hidden]){margin-bottom:24px}
.app-seite .line-price-details>summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-size:14px;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){
 .wk .line:not(.line-kompakt)>.line-bild{grid-row:1}
 .wk .line:not(.line-kompakt) .line-text>:not(h3){grid-column:1/-1}
 .wk .line:not(.line-kompakt) .line-text>.line-custom{font-size:14px;line-height:1.5;margin:8px 0}
 .wk .line:not(.line-kompakt) .line-text>.line-info p{margin:6px 0}
 .wk .line:not(.line-kompakt)>.price{grid-column:1/-1;font-size:21px}
 .wk .line:not(.line-kompakt) .line-text>.line-menge{order:0}
 .wk .line:not(.line-kompakt) .line-text>.line-edit{margin-top:2px}
}

/* 54-BLAU: Vorwärts-Knöpfe bei allen Breiten im gemeinsamen Leitblau. */
:is(form[data-product] button[type=submit],a.button[href^="/shop/app.html?product="],a.wk-knopf[href="#checkout"],#zur-anfrage,#inquiry-form>button,#address-form button[type=submit],#shipping-form button[type=submit],#place-order,#login-form>button,#register-form>button,:where(#main[data-ansicht="konto"]) a.button:not(.secondary)){background:var(--gc-active);border-color:var(--gc-active);color:#fff}
:is(form[data-product] button[type=submit],a.button[href^="/shop/app.html?product="],a.wk-knopf[href="#checkout"],#zur-anfrage,#inquiry-form>button,#address-form button[type=submit],#shipping-form button[type=submit],#place-order,#login-form>button,#register-form>button,:where(#main[data-ansicht="konto"]) a.button:not(.secondary)):is(:hover,:active):not(:disabled):not([aria-disabled=true]){background:color-mix(in srgb,var(--gc-active),#000 15%);border-color:color-mix(in srgb,var(--gc-active),#000 15%);color:#fff}
:is(form[data-product] button[type=submit],a.button[href^="/shop/app.html?product="],a.wk-knopf[href="#checkout"],#zur-anfrage,#inquiry-form>button,#address-form button[type=submit],#shipping-form button[type=submit],#place-order,#login-form>button,#register-form>button,:where(#main[data-ansicht="konto"]) a.button:not(.secondary)):focus-visible{outline:3px solid var(--gc-active);outline-offset:3px}
:is(form[data-product] button[type=submit],a.button[href^="/shop/app.html?product="],a.wk-knopf[href="#checkout"],#zur-anfrage,#inquiry-form>button,#address-form button[type=submit],#shipping-form button[type=submit],#place-order,#login-form>button,#register-form>button,:where(#main[data-ansicht="konto"]) a.button:not(.secondary)):is(:disabled,[aria-disabled=true]){background:var(--gc-active);border-color:var(--gc-active);border-style:dashed;color:#fff;opacity:1;cursor:not-allowed}
