.k3-login-wrapper {
  display: flex;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 12px;
}

#k3-login-widget {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.k3-page-header-login #k3-login-widget,
.k3-page-header-login .k3-login-wrapper {
  justify-content: flex-end;
  flex-wrap: nowrap;
  margin-bottom: 0;
  align-items: center;
}

.k3-page-header-login .k3-login-widget-shell {
  display: flex;
  justify-content: flex-end;
  width: 100%;
}

.k3-page-header-login #k3-login-widget {
  justify-content: flex-end;
  align-items: center;
}

.k3-page-header-login #k3-login-message {
  width: auto;
  flex: 1 1 100%;
  text-align: right;
}

.k3-page-header-login #k3-login-widget > p {
  margin: 0;
  white-space: nowrap;
  font-size: 13px;
}

.k3-login-widget-shell {
  margin: 0;
}

#k3-login-widget #k3-login-id,
#k3-login-widget #k3-login-secret {
  width: 152px !important;
  max-width: 100% !important;
  height: 34px !important;
  min-height: 34px !important;
  padding: 4px 9px !important;
  border: 1px solid rgba(0, 92, 138, 0.35) !important;
  border-radius: 5px !important;
  background: rgba(245, 245, 205, 0.95) !important;
  color: #053b5f !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  box-sizing: border-box !important;
}

#k3-login-widget .k3-login-secret-mask {
  -webkit-text-security: disc;
}

#k3-login-widget #k3-login-id::placeholder,
#k3-login-widget #k3-login-secret::placeholder {
  color: rgba(5, 59, 95, 0.75);
}

#k3-login-widget #k3-login-id:focus,
#k3-login-widget #k3-login-secret:focus {
  outline: none;
  border-color: #0073aa;
  box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.2);
}

/* Hide browser autofill/password manager adornments that can render misplaced in overlay headers. */
#k3-login-widget #k3-login-id::-webkit-credentials-auto-fill-button,
#k3-login-widget #k3-login-secret::-webkit-credentials-auto-fill-button,
#k3-login-widget #k3-login-secret::-webkit-strong-password-auto-fill-button,
#k3-login-widget #k3-login-id::-webkit-textfield-decoration-container,
#k3-login-widget #k3-login-secret::-webkit-textfield-decoration-container {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none;
}

#k3-login-widget #k3-login-secret::-ms-reveal,
#k3-login-widget #k3-login-secret::-ms-clear,
#k3-login-widget #k3-login-id::-ms-clear {
  display: none;
}

/* Hide common injected password-manager icons/overlays (Chrome extensions). */
#k3-login-widget [data-lastpass-icon-root],
#k3-login-widget [data-lastpass-root],
#k3-login-widget .lpicon,
#k3-login-widget .lastpass-icon-root,
#k3-login-widget .bitwarden-icon,
#k3-login-widget [data-testid="inline-menu"],
#k3-login-widget [data-testid="bitwarden-inline-menu"],
#k3-login-widget [data-com-onepassword-filled],
iframe[name^="LPFrame"],
iframe[src*="lastpass" i],
iframe[src*="bitwarden" i],
iframe[src*="1password" i] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.k3-login-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 6px 11px !important;
  background: #0073aa;
  color: #fff;
  border-radius: 4px;
  text-decoration: none;
  border: none;
  cursor: pointer;
  font-size: 13px !important;
  line-height: 1; /* <— wichtig für Button-Höhe */
  height: 34px !important;
  min-height: 34px !important;
  box-sizing: border-box !important;
}

.k3-login-button .dashicons {
  font-size: 18px;
}

.k3-login-button[data-role="warenkorb-button"] {
  position: relative;
  overflow: visible;
  background: #ff8c00;
}

.k3-login-button[data-role="warenkorb-button"]:hover {
  background: #e67e00;
}

.k3-login-button[data-role="warenkorb-button"] #warenkorb-badge {
  position: absolute;
  top: -7px;
  right: -7px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  background: #e53935;
  color: #fff;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  line-height: 18px;
  text-align: center;
  box-sizing: border-box;
  display: none;
  z-index: 2;
  pointer-events: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
}

.k3-warenkorb-button {
  background: #ff8c00 !important;
  position: relative;
  overflow: visible;
}

.k3-warenkorb-button #warenkorb-badge {
  position: absolute;
  top: -7px;
  right: -7px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  background: #e53935;
  color: #fff;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  line-height: 18px;
  text-align: center;
  box-sizing: border-box;
  display: none;
  z-index: 2;
  pointer-events: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
}

.k3-login-button:hover {
  background: #005e8a;
}

#k3-login-message {
  width: 100%;
  margin-top: 4px;
  font-size: 13px;
}

.k3-login-controls {
  display: inline-flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  max-width: 100%;
}

.k3-login-controls-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px;
}

.k3-skip-login-button {
  width: 100%;
  margin-top: 30px;
  background: #5a6f82;
}

.k3-skip-login-button:hover {
  background: #4a5c6c;
}

@media (max-width: 768px) {
  #k3-login-widget {
    width: min(210px, 100%);
    display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
    align-items: stretch;
  }

  .k3-page-header-login #k3-login-widget {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
  }

  #k3-login-widget > * {
    width: 100% !important;
    min-width: 0 !important;
  }

  .k3-login-controls {
    width: 100% !important;
  }

  .k3-login-controls-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
    width: 100%;
  }

  #k3-login-id,
  #k3-login-secret,
  .k3-login-button {
    width: 100% !important;
  }

  .k3-login-wrapper {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .k3-skip-login-button {
    width: 100% !important;
  }

  .k3-login-button[data-role="warenkorb-button"] #warenkorb-badge,
  .k3-warenkorb-button #warenkorb-badge {
    top: -5px;
    right: -5px;
    min-width: 16px;
    height: 16px;
    font-size: 9px;
    line-height: 16px;
  }
}
