<SEC-DOCUMENT>0001683168-26-005405.txt : 20260709
<SEC-HEADER>0001683168-26-005405.hdr.sgml : 20260709
<ACCEPTANCE-DATETIME>20260709163023
ACCESSION NUMBER:		0001683168-26-005405
CONFORMED SUBMISSION TYPE:	S-8
PUBLIC DOCUMENT COUNT:		14
FILED AS OF DATE:		20260709
DATE AS OF CHANGE:		20260709
EFFECTIVENESS DATE:		20260709

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			Sonoma Pharmaceuticals, Inc.
		CENTRAL INDEX KEY:			0001367083
		STANDARD INDUSTRIAL CLASSIFICATION:	SURGICAL & MEDICAL INSTRUMENTS & APPARATUS [3841]
		ORGANIZATION NAME:           	08 Industrial Applications and Services
		EIN:				680423298
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			0331

	FILING VALUES:
		FORM TYPE:		S-8
		SEC ACT:		1933 Act
		SEC FILE NUMBER:	333-297348
		FILM NUMBER:		261166023

	BUSINESS ADDRESS:	
		STREET 1:		5445 CONESTOGA COURT, SUITE 150
		CITY:			BOULDER
		STATE:			CO
		ZIP:			80301
		BUSINESS PHONE:		800-759-9305

	MAIL ADDRESS:	
		STREET 1:		5445 CONESTOGA COURT, SUITE 150
		CITY:			BOULDER
		STATE:			CO
		ZIP:			80301

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	Oculus Innovative Sciences, Inc.
		DATE OF NAME CHANGE:	20060622
</SEC-HEADER>
<DOCUMENT>
<TYPE>S-8
<SEQUENCE>1
<FILENAME>sonoma_s8.htm
<DESCRIPTION>FORM S-8
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><FONT STYLE="font-size: 7pt"><A HREF="#s8_01">Table of Contents</A></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><B>&nbsp;</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>UNITED STATES</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>SECURITIES AND EXCHANGE COMMISSION</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>Washington, DC 20549</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>___________________________</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>FORM S-8</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>REGISTRATION STATEMENT UNDER THE SECURITIES
ACT OF 1933</B>&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">_____________________________</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>SONOMA PHARMACEUTICALS, INC.</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">(Exact name of registrant as specified in its charter)</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 50%; text-align: center; font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Delaware</B></FONT></TD>
    <TD STYLE="width: 50%; text-align: center; font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>68-0423298</B></FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>
    <P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">(State or other jurisdiction of</P>
    <P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">incorporation or organization)</P></TD>
    <TD>
    <P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">(I.R.S. Employer</P>
    <P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">Identification No.)</P></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD STYLE="font-size: 10pt">&nbsp;</TD>
    <TD STYLE="font-size: 10pt">&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD STYLE="text-align: center; font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>5445 Conestoga Court, Suite 150, Boulder, CO</B></FONT></TD>
    <TD STYLE="text-align: center; font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>80301</B></FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD STYLE="text-align: center; font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Address of Principal Executive Offices)</FONT></TD>
    <TD STYLE="text-align: center; font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Zip Code)</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="vertical-align: top">
    <TD>
    <P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>Sonoma Pharmaceuticals, Inc. 2016 Equity Incentive
    Plan</B></P>
    <P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>Sonoma Pharmaceuticals, Inc. 2024 Equity Incentive
    Plan</B></P></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD STYLE="text-align: center; font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Full title of the plan)</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD STYLE="text-align: center; font-size: 10pt">&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>
    <P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>Amy Trombly</B></P>
    <P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>Chief Executive Officer</B></P>
    <P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>5445 Conestoga Court, Suite 150</B></P>
    <P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>Boulder, CO 80301</B></P></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD STYLE="text-align: center; font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Name and address of agent for service)</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD STYLE="text-align: center; font-size: 10pt">&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD STYLE="text-align: center; font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>(800) 759-9305</B></FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>
    <P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">(Telephone number, including area code, of agent
    for service)</P>
    <P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>&nbsp;</B></P></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Indicate by check mark whether the registrant
is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company or an emerging growth company.
See the definitions of &ldquo;large accelerated filer,&rdquo; &ldquo;accelerated filer,&rdquo; &ldquo;smaller reporting company&rdquo;
and &ldquo;emerging growth company&rdquo; in Rule 12b-2 of the Exchange Act.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 67%; font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Large accelerated filer &#9744;</FONT></TD>
    <TD STYLE="width: 33%; font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Accelerated filer &#9744;</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD STYLE="font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-accelerated filer &#9746;</FONT></TD>
    <TD STYLE="font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Smaller reporting company &#9746;</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD STYLE="font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Emerging growth company &#9744;</FONT></TD>
    <TD STYLE="font-size: 10pt">&nbsp;</TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">If an emerging growth company, indicate by check
mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting
standards provided pursuant to Section 7(a)(2)(B) of the Securities Act. &#9744;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>&nbsp;</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>&nbsp;</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B></B></P>

<!-- Field: Page; Sequence: 1 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 33%">&#160;</td><td style="width: 34%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo; Options: Hidden -->&nbsp;<!-- Field: /Sequence --></td><td style="width: 33%; text-align: right">&#160;</td></tr></table></DIV>
    <DIV STYLE="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&#160;</p></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>&nbsp;</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B><U><A NAME="s8_01"></A>TABLE OF CONTENTS</U></B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="background-color: rgb(238,238,238)">
    <TD COLSPAN="2"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="#s8_02">PART I</A></FONT></TD>
    <TD STYLE="text-align: right">&nbsp;</TD></TR>
  <TR STYLE="background-color: White">
    <TD STYLE="width: 3%">&nbsp;</TD>
    <TD STYLE="width: 87%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="#s8_03">Item&nbsp;1. Plan Information</A></FONT></TD>
    <TD STYLE="width: 10%; text-align: right">3</TD></TR>
  <TR STYLE="background-color: rgb(238,238,238)">
    <TD>&nbsp;</TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="#s8_04">Item&nbsp;2. Registrant Information and Employee Plan Annual Information</A></FONT></TD>
    <TD STYLE="text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">3</FONT></TD></TR>
  <TR STYLE="background-color: White">
    <TD COLSPAN="2"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="#s8_05">PART II</A></FONT></TD>
    <TD STYLE="text-align: right">&nbsp;</TD></TR>
  <TR STYLE="background-color: rgb(238,238,238)">
    <TD>&nbsp;</TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="#s8_06">Item&nbsp;3. Incorporation of Documents by Reference</A></FONT></TD>
    <TD STYLE="text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">4</FONT></TD></TR>
  <TR STYLE="background-color: White">
    <TD>&nbsp;</TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="#s8_07">Item&nbsp;4. Description of Securities</A></FONT></TD>
    <TD STYLE="text-align: right">4</TD></TR>
  <TR STYLE="background-color: rgb(238,238,238)">
    <TD>&nbsp;</TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="#s8_08">Item&nbsp;5. Interests of Named Experts and Counsel</A></FONT></TD>
    <TD STYLE="text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">4</FONT></TD></TR>
  <TR STYLE="background-color: White">
    <TD>&nbsp;</TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="#s8_09">Item&nbsp;6. Indemnification of Directors and Officers</A></FONT></TD>
    <TD STYLE="text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">5</FONT></TD></TR>
  <TR STYLE="background-color: rgb(238,238,238)">
    <TD>&nbsp;</TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="#s8_10">Item&nbsp;7. Exemption From Registration Claimed</A></FONT></TD>
    <TD STYLE="text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">5</FONT></TD></TR>
  <TR STYLE="background-color: White">
    <TD>&nbsp;</TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="#s8_11">Item&nbsp;8. Exhibits</A></FONT></TD>
    <TD STYLE="text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">6</FONT></TD></TR>
  <TR STYLE="background-color: rgb(238,238,238)">
    <TD>&nbsp;</TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="#s8_12">Item&nbsp;9. Undertakings</A></FONT></TD>
    <TD STYLE="text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">6</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"></P>

<!-- Field: Page; Sequence: 2 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 33%">&#160;</td><td style="width: 34%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->2<!-- Field: /Sequence --></td><td style="width: 33%; text-align: right">&#160;</td></tr></table></DIV>
    <DIV STYLE="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&#160;</p></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in"></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><B><A NAME="s8_02"></A>PART I</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><B>INFORMATION REQUIRED IN THE SECTION 10(a) PROSPECTUS</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 10%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><A NAME="s8_03"></A>ITEM 1.</B></FONT></TD>
    <TD STYLE="width: 90%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>PLAN INFORMATION.</B></FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In accordance with the Instructional Note to Part
I of Form S-8 as promulgated by the Securities and Exchange Commission, the information specified by Part I of Form S-8 has been omitted
from this registration statement on Form S-8.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The documents containing the information specified
in Part I, Items 1 and 2, will be delivered to each of the employee participants in accordance with Form S-8 and Rule 428(b)(1) promulgated
under the Securities Act of 1933.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 10%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><A NAME="s8_04"></A>ITEM 2.</B></FONT></TD>
    <TD STYLE="width: 90%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>REGISTRANT INFORMATION AND EMPLOYEE PLAN ANNUAL INFORMATION.</B></FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Registrant will provide, without charge, to
each person to whom a copy of a Section 10(a) prospectus hereunder is delivered, upon the oral or written request of such person, a copy
of any document incorporated in this registration statement by reference. The Registrant will also make available without charge, upon
oral or written request, other documents required to be delivered pursuant to Rule 428(b). Requests for such information should be directed
to: Investor Relations, Sonoma Pharmaceuticals, Inc., 5445 Conestoga Court, Suite 150, Boulder, Colorado 80301, telephone&nbsp;(800)&nbsp;759-9305.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></P>

<!-- Field: Page; Sequence: 3 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 33%">&#160;</td><td style="width: 34%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->3<!-- Field: /Sequence --></td><td style="width: 33%; text-align: right">&#160;</td></tr></table></DIV>
    <DIV STYLE="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&#160;</p></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B><A NAME="s8_05"></A>PART II</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>INFORMATION REQUIRED IN THE REGISTRATION STATEMENT</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 10%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><A NAME="s8_06"></A>ITEM 3.</B></FONT></TD>
    <TD STYLE="width: 90%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>INCORPORATION OF DOCUMENTS BY REFERENCE.</B></FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The following documents filed by the Registrant
with the Securities and Exchange Commission are hereby incorporated by reference in this Registration Statement:</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 4%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(a)</FONT></TD>
    <TD STYLE="width: 96%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Registrant&rsquo;s Annual Report on&nbsp;</FONT><A HREF="https://www.sec.gov/ix?doc=/Archives/edgar/data/0001367083/000168316826004871/sonoma_i10k-033126.htm"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 10-K</FONT></A> <FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">for the fiscal year ended March 31, 2026, filed June 16, 2026 pursuant to Section 13(a) or 15(d) of the Securities Exchange Act of 1934, as amended (the &ldquo;Exchange Act&rdquo;);</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="text-align: justify">&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)</FONT></TD>
    <TD STYLE="text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Registrant&rsquo;s Current Reports on Form 8-K filed </FONT><A HREF="https://www.sec.gov/ix?doc=/Archives/edgar/data/0001367083/000168316826002761/sonoma_8k.htm"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">April 9, 2026</FONT></A><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">, </FONT><A HREF="https://www.sec.gov/ix?doc=/Archives/edgar/data/0001367083/000168316826003381/sonoma_8k.htm"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">April 30, 2026</FONT></A> <FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">and </FONT><A HREF="https://www.sec.gov/ix?doc=/Archives/edgar/data/0001367083/000168316826004975/sonoma_8k.htm"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">June 18, 2026</FONT></A><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">; and </FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="text-align: justify">&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(c)</FONT></TD>
    <TD STYLE="text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The description of the Registrant&rsquo;s common stock contained in the Registrant&rsquo;s Registration Statement on </FONT><A HREF="http://www.sec.gov/Archives/edgar/data/1367083/000095013406023223/f25878e8va12b.htm"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 8-A filed December 15, 2006</FONT></A><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">, pursuant to Section 12(g) of the Exchange Act, including any amendment or report filed for the purpose of updating such description.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">All documents subsequently filed by the Registrant
pursuant to Sections 13(a), 13(c), 14, and 15(d) of the Securities Exchange Act of 1934, prior to the filing of a post-effective amendment
which indicates that all securities offered have been sold or which deregisters all securities then remaining unsold shall be deemed to
be incorporated in this registration statement by reference and to be a part hereof from the date of filing of such documents. Any statement
contained in this registration statement, in a supplement to this registration statement or in a document incorporated by reference herein,
shall be deemed to be modified or superseded for purposes of this registration statement to the extent that a statement contained herein
or in any subsequently filed supplement to this registration statement or in any document that is subsequently incorporated by reference
herein modifies or supersedes such statement. &nbsp;Any statement so modified or superseded shall not be deemed, except as so modified
or superseded, to constitute a part of this registration statement.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></P>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 10%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><A NAME="s8_07"></A>ITEM 4.</B></FONT></TD>
    <TD STYLE="width: 90%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>DESCRIPTION OF SECURITIES.</B></FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Not applicable.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 10%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><A NAME="s8_08"></A>ITEM 5.</B></FONT></TD>
    <TD STYLE="width: 90%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>INTERESTS OF NAMED EXPERTS AND COUNSEL.</B></FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">No named expert or counsel was hired on a contingent
basis, will receive a direct or indirect interest in the Registrant, or was a promoter, underwriter, voting trustee, director, officer
or employee of the Registrant. No expert or counsel has any contingent-based agreement with the Registrant or any other interest in or
connection to the Registrant.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></P>

<!-- Field: Page; Sequence: 4 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 33%">&#160;</td><td style="width: 34%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->4<!-- Field: /Sequence --></td><td style="width: 33%; text-align: right">&#160;</td></tr></table></DIV>
    <DIV STYLE="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&#160;</p></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 10%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><A NAME="s8_09"></A>ITEM 6.</B></FONT></TD>
    <TD STYLE="width: 90%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>INDEMNIFICATION OF DIRECTORS AND OFFICERS.</B></FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Section&nbsp;145 of the Delaware General Corporation
Law provides that a corporation may indemnify directors and officers as well as other employees and individuals against expenses (including
attorneys&rsquo; fees), judgments, fines and amounts paid in settlement actually and reasonably incurred by such person in connection
with any threatened, pending or completed actions, suits or proceedings in which such person is made a party by reason of such person
being or having been a director, officer, employee or agent to the registrant or having served at the request of the corporation, if such
person acted in good faith and in a manner such person reasonably believed to be in or not opposed to the best interests of the corporation,
and, with respect to any criminal action or proceeding, had no reasonable cause to believe such person&rsquo;s conduct was unlawful; provided
that, in the case of actions brought by or in the right of the corporation, no indemnification shall be made with respect to any matter
as to which such person shall have been adjudged to be liable to the corporation unless and only to the extent that the adjudicating court
determines that such indemnification is proper under the circumstances. The Delaware General Corporation Law provides that Section&nbsp;145
is not exclusive of other rights to which those seeking indemnification may be entitled under any by-laws, agreement, vote of stockholders
or disinterested directors or otherwise.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Section&nbsp;102(b)(7) of the Delaware General
Corporation Law permits a corporation to provide in its certificate of incorporation that a director of the corporation will not be personally
liable to the corporation or its stockholders for monetary damages for breach of fiduciary duty as a director, except for liability (1)&nbsp;for
any breach of the director&rsquo;s duty of loyalty to the corporation or its stockholders; (2)&nbsp;for acts or omissions not in good
faith or which involve intentional misconduct or a knowing violation of law; (3)&nbsp;for unlawful payments of dividends or unlawful stock
repurchases, redemptions or other distributions; or (4)&nbsp;for any transaction from which the director derived an improper personal
benefit.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Article VIII of the Registrant&rsquo;s Restated
Certificate of Incorporation, as amended (included as Exhibit 3.1(I) to the Registrant&rsquo;s Annual Report on Form 10-K for the year
ended March 31, 2007, filed June 20, 2007) and Article 6 of the Registrant&rsquo;s Amended and Restated Bylaws, as amended (included as
Exhibit 3.3 to the Registrant&rsquo;s Quarterly Report on Form 10-Q for the quarter ended September 30, 2010, filed November 4, 2010)
provide for indemnification of the Registrant&rsquo;s directors, officers, employees and other agents to the extent and under the circumstances
permitted by the Delaware General Corporation Law.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Registrant has also entered into respective
indemnification agreements (the form of which is included as Exhibit 10.1 to the Registrant&rsquo;s Registration Statement on Form S-1
(File No. 333-135584), as amended, declared effective on January 24, 2007) with its officers and directors that will require the Registrant
to, among other things, indemnify them against certain liabilities that may arise by reason of their status or service as directors or
officers to the fullest extent not prohibited by law.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 10%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><A NAME="s8_10"></A>ITEM 7.</B></FONT></TD>
    <TD STYLE="width: 90%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>EXEMPTION FROM REGISTRATION CLAIMED.</B></FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Not applicable.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"></P>

<!-- Field: Page; Sequence: 5 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 33%">&#160;</td><td style="width: 34%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->5<!-- Field: /Sequence --></td><td style="width: 33%; text-align: right">&#160;</td></tr></table></DIV>
    <DIV STYLE="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&#160;</p></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 10%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><A NAME="s8_11"></A>ITEM 8.</B></FONT></TD>
    <TD STYLE="width: 90%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>EXHIBITS.</B></FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 10%; border-bottom: black 1pt solid"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Exhibit No.</FONT></TD>
    <TD STYLE="width: 1%; border-bottom: black 1pt solid">&nbsp;</TD>
    <TD STYLE="width: 89%; border-bottom: black 1pt solid; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Description</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">5.1</FONT></TD>
    <TD>&nbsp;</TD>
    <TD STYLE="text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="sonoma_ex0501.htm">Opinion of Polsinelli PC</A> (filed herewith).</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">10.1</FONT></TD>
    <TD>&nbsp;</TD>
    <TD STYLE="text-align: justify"><A HREF="http://www.sec.gov/Archives/edgar/data/1367083/000101968716007052/oculus_def14a-072716.htm"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Sonoma Pharmaceuticals, Inc. 2016 Equity Incentive Plan</FONT></A> <FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(included in the Registrant&rsquo;s Definitive Proxy Statement on Schedule 14A filed July 29, 2016, and incorporated herein by reference).</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">10.2</FONT></TD>
    <TD>&nbsp;</TD>
    <TD STYLE="text-align: justify"><A HREF="https://www.sec.gov/Archives/edgar/data/1367083/000168316824004552/sonoma_def14a.htm"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Sonoma Pharmaceuticals, Inc. 2024 Equity Incentive Plan</FONT></A> <FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(included in the Registrant&rsquo;s Definitive Proxy Statement on Schedule 14A filed July 1, 2024, and incorporated herein by reference).</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">23.1</FONT></TD>
    <TD>&nbsp;</TD>
    <TD STYLE="text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="sonoma_ex2301.htm">Consent of Frazier &amp; Deeter, LLC</A> (filed herewith).</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">23.2</FONT></TD>
    <TD>&nbsp;</TD>
    <TD STYLE="text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consent of Polsinelli PC (included in <A HREF="sonoma_ex0501.htm">Exhibit 5.1</A> filed herewith).</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">107</FONT></TD>
    <TD>&nbsp;</TD>
    <TD STYLE="text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><A HREF="sonoma_ex107.htm">Calculation of Filing Fee Table</A> (filed herewith).</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 10%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><A NAME="s8_12"></A>ITEM 9.</B></FONT></TD>
    <TD STYLE="width: 90%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>UNDERTAKINGS.</B></FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 1%">&nbsp;</TD>
    <TD STYLE="width: 5%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(a)</FONT></TD>
    <TD STYLE="width: 94%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The undersigned registrant hereby undertakes:</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 5%">&nbsp;</TD>
    <TD STYLE="width: 5%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)</FONT></TD>
    <TD STYLE="width: 90%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">To file, during any period in which offers or sales are made, a post-effective amendment to this registration statement:</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 12%">&nbsp;</TD>
    <TD STYLE="width: 5%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(iii)</FONT></TD>
    <TD STYLE="width: 83%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">To include any material information with respect to the plan of distribution not previously disclosed in the registration statement or any material change to such information in the registration statement.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 5%">&nbsp;</TD>
    <TD STYLE="width: 5%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2)</FONT></TD>
    <TD STYLE="width: 90%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">That, for the purpose of determining liability under the Securities Act of 1933, each such post-effective amendment shall be deemed a new registration statement relating to the securities offered therein, and the offering of such securities at that time shall be deemed to be the initial bona fide offering thereof.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 5%">&nbsp;</TD>
    <TD STYLE="width: 5%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(3)</FONT></TD>
    <TD STYLE="width: 90%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">To remove from registration by means of a post-effective amendment any of the securities which remain unsold at the termination of the offering.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 1%">&nbsp;</TD>
    <TD STYLE="width: 5%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)</FONT></TD>
    <TD STYLE="width: 94%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The undersigned registrant hereby undertakes that, for purposes of determining any liability under the Securities Act of 1933, each filing of the registrant&rsquo;s annual report pursuant to section 13(a) or section 15(d) of the Securities Exchange Act of 1934 (and, where applicable, each filing of an employee benefit plan&rsquo;s annual report pursuant to section 15(d) of the Securities Exchange Act of 1934) that is incorporated by reference in the registration statement shall be deemed to be a new registration statement relating to the securities offered therein, and the offering of such securities at that time shall be deemed to be the initial bona fide offering thereof.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 1%">&nbsp;</TD>
    <TD STYLE="width: 5%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(h)(3)</FONT></TD>
    <TD STYLE="width: 94%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Insofar as indemnification for liabilities arising under the Securities Act of 1933 may be permitted to directors, officers and controlling persons of the registrant pursuant to the foregoing provisions, or otherwise, the registrant has been advised that in the opinion of the Securities and Exchange Commission such indemnification is against public policy as expressed in the Act and is, therefore, unenforceable. In the event that a claim for indemnification against such liabilities (other than the payment by the registrant of expenses incurred or paid by a director, officer or controlling person of the registrant in the successful defense of any action, suit or proceeding) is asserted by such director, officer or controlling person in connection with the securities being registered, the registrant will, unless in the opinion of its counsel the matter has been settled by controlling precedent, submit to a court of appropriate jurisdiction the question whether such indemnification by it is against public policy as expressed in the Act and will be governed by the final adjudication of such issue.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"></P>

<!-- Field: Page; Sequence: 6 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 33%">&#160;</td><td style="width: 34%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->6<!-- Field: /Sequence --></td><td style="width: 33%; text-align: right">&#160;</td></tr></table></DIV>
    <DIV STYLE="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&#160;</p></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>&nbsp;</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B><A NAME="s8_13"></A>SIGNATURES</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Pursuant to the requirements of the Securities Act of 1933, the Registrant
certifies that it has reasonable grounds to believe that it meets all of the requirements for filing on Form S-8 and has duly caused this
registration statement to be signed on its behalf by the undersigned, thereunto duly authorized, in the City of Boulder, State of Colorado,
on the 9<SUP>th</SUP> day of July, 2026.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR>
    <TD STYLE="vertical-align: top">&nbsp;</TD>
    <TD COLSPAN="2"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">SONOMA PHARMACEUTICALS, INC.</FONT></TD></TR>
  <TR>
    <TD STYLE="vertical-align: top">&nbsp;</TD>
    <TD COLSPAN="2">&nbsp;</TD></TR>
  <TR>
    <TD STYLE="vertical-align: top; width: 51%">&nbsp;</TD>
    <TD STYLE="width: 3%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">By:&nbsp;</FONT></TD>
    <TD STYLE="vertical-align: top; width: 46%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><U>/s/ Amy Trombly</U></FONT></TD></TR>
  <TR>
    <TD STYLE="vertical-align: top">&nbsp;</TD>
    <TD>&nbsp;</TD>
    <TD STYLE="vertical-align: top"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amy Trombly</FONT></TD></TR>
  <TR>
    <TD STYLE="vertical-align: top">&nbsp;</TD>
    <TD>&nbsp;</TD>
    <TD STYLE="vertical-align: top"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">President and Chief Executive Officer</FONT></TD></TR>
  <TR>
    <TD STYLE="vertical-align: top">&nbsp;</TD>
    <TD>&nbsp;</TD>
    <TD STYLE="vertical-align: top"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Principal Executive Officer)</FONT></TD></TR>
  <TR>
    <TD STYLE="vertical-align: top">&nbsp;</TD>
    <TD>&nbsp;</TD>
    <TD STYLE="vertical-align: top">&nbsp;</TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Pursuant to the requirements of the Securities Act of 1933, this registration
statement has been signed below by the following persons in the capacities and on the dates indicated.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 33%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><U>Name</U></B></FONT></TD>
    <TD STYLE="width: 47%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><U>Title</U></B></FONT></TD>
    <TD STYLE="width: 20%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><U>Date</U></B></FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><U>/s/ Amy Trombly</U></FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">President and Chief Executive Officer</FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">July 9, 2026</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amy Trombly</FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Principal Executive Officer)</FONT></TD>
    <TD>&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><U>/s/ Jerome Dvonch</U></FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief Financial Officer</FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">July 9, 2026</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Jerome Dvonch</FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Principal Financial Officer and Principal Accounting Officer)</FONT></TD>
    <TD>&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><U>/s/ Vanessa Jacoby</U></FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">July 9, 2026</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Vanessa Jacoby</FONT></TD>
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><U>/s/ Philippe Weigerstorfer</U></FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">July 9, 2026</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Philippe Weigerstorfer</FONT></TD>
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><U>/s/ Jerry McLaughlin</U></FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">July 9, 2026</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Jerry McLaughlin</FONT></TD>
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><B>&nbsp;</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><B>&nbsp;</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><B>&nbsp;</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><B></B></P>

<!-- Field: Page; Sequence: 7; Options: Last -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 33%">&#160;</td><td style="width: 34%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->7<!-- Field: /Sequence --></td><td style="width: 33%; text-align: right">&#160;</td></tr></table></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><B>&nbsp;</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-5.1
<SEQUENCE>2
<FILENAME>sonoma_ex0501.htm
<DESCRIPTION>OPINION
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="text-align: right; margin: 0"><B>Exhibit 5.1</B></P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="text-align: center; margin-top: 0; margin-bottom: 0"><IMG SRC="image_001.jpg" ALT="">&nbsp;</P>

<P STYLE="text-align: center; margin-top: 0; margin-bottom: 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 8pt">One
International Place, Suite 3900, Boston, Massachusetts 02110 </FONT><FONT STYLE="font-family: Symbol; font-size: 8pt">&middot;</FONT>
<FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 8pt">(617) 406-0335</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; background-color: white">July 9, 2026</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; background-color: white">Board of Directors</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Sonoma Pharmaceuticals, Inc.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">5445 Conestoga Court, Suite 150</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; background-color: white">Boulder, Colorado 80301</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; background-color: white">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; background-color: white; border-collapse: collapse">
  <TR>
    <TD STYLE="width: 4%; font-size: 10pt">&nbsp;</TD>
    <TD STYLE="vertical-align: top; width: 5%; font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Re:</B></FONT></TD>
    <TD STYLE="vertical-align: top; font-size: 10pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Sonoma Pharmaceuticals, Inc. &mdash; Registration Statement on Form S-8</B></FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; background-color: white">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; background-color: white">Ladies and Gentlemen:</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; background-color: white">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">We are acting as special
counsel to Sonoma Pharmaceuticals, Inc., a Delaware corporation (the &ldquo;<B>Company</B>&rdquo;), in connection with its registration
statement on Form&nbsp;S-8&nbsp;(the &ldquo;<B>Registration Statement</B>&rdquo;), filed on the date hereof with the Securities and Exchange
Commission under the Securities Act of 1933, as amended (the &ldquo;<B>Securities Act</B>&rdquo;), relating to the proposed offering of
up to an aggregate of 233,876 shares of the Company&rsquo;s common stock, par value $0.0001 per share (the &ldquo;<B>Shares</B>&rdquo;),
(a) 143,924 of which Shares are issuable pursuant to the Sonoma Pharmaceuticals, Inc. 2016 Equity Incentive Plan (the &ldquo;<B>2016 Plan</B>&rdquo;),
and (b) 89,952 of which Shares are issuable pursuant to the Sonoma Pharmaceuticals, Inc. 2024 Equity Incentive Plan (the &ldquo;<B>2024
Plan</B>&rdquo; and, together with the 2016 Plan, the &ldquo;<B>Plans</B>&rdquo;). This opinion letter is furnished to you at your request
to enable you to fulfill the requirements of Item&nbsp;601(b)(5) of Regulation&nbsp;S-K,&nbsp;17&nbsp;C.F.R. &sect;&nbsp;229.601(b)(5),
in connection with the Registration Statement.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">For purposes of this
opinion letter, we have examined copies of such agreements, instruments and documents as we have deemed an appropriate basis on which
to render the opinions hereinafter expressed. In our examination of the aforesaid documents, we have assumed the genuineness of all signatures,
the legal capacity of all natural persons, the accuracy and completeness of all documents submitted to us, the authenticity of all original
documents, and the conformity to the authentic original documents of all documents submitted to us as copies (including electronic copies).
We have also assumed that the Company has and will have sufficient authorized but unissued and unreserved shares of common stock available
for issuance as provided in the Registration Statement. As to all matters of fact, we have relied on the representations and statements
of fact made in the documents so reviewed, and we have not independently established the facts so relied on. For purposes of this opinion
letter, without limiting any other exceptions or qualifications set forth herein, we have assumed that the Company will remain a Delaware
corporation. This opinion letter is given, and all statements herein are made, in the context of the foregoing.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">This opinion letter is
based, as to matters of law, solely on the Delaware General Corporation Law, as amended. We express no opinion herein as to any other
statutes, rules, or regulations.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">Based upon, subject to,
and limited by the foregoing, we are of the opinion that following (i)&nbsp;issuance of the Shares pursuant to the terms of the Plans,
and (ii)&nbsp;receipt by the Company of the consideration, if any, for the Shares specified in the applicable resolutions of the Board
of Directors of the Company or a duly authorized committee thereof, the 2016 Plan or the 2024 Plan, respectively, and any underlying award
agreements or letters,&nbsp;the Shares will be validly issued, fully paid, and nonassessable.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white"></P>

<!-- Field: Page; Sequence: 1; Value: 1 -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 33%">&nbsp;</TD><TD STYLE="width: 34%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->1<!-- Field: /Sequence --></TD><TD STYLE="width: 33%; text-align: right">&nbsp;</TD></TR></TABLE></DIV>
    <DIV STYLE="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><P STYLE="margin: 0pt">&nbsp;</P></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">This opinion has been
prepared for use in connection with the Registration Statement. We assume no obligation to advise you of any changes in the foregoing
subsequent to the effective date of the Registration Statement.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 24.5pt; background-color: white">We hereby consent to
the filing of this opinion letter as Exhibit 5.1 to the Registration Statement. In giving this consent, we do not thereby admit that we
are an &ldquo;expert&rdquo; within the meaning of the Securities Act.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 54%">&nbsp;</TD>
    <TD STYLE="width: 46%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Very truly yours,</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD>&nbsp;</TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD STYLE="border-bottom: black 1.5pt solid"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">/s/ Polsinelli PC</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD>&nbsp;</TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Polsinelli PC</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="margin: 0"></P>

<!-- Field: Page; Sequence: 2; Options: Last -->
    <DIV STYLE="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 33%">&nbsp;</TD><TD STYLE="width: 34%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->2<!-- Field: /Sequence --></TD><TD STYLE="width: 33%; text-align: right">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="margin: 0">&nbsp;</P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>3
<FILENAME>sonoma_ex2301.htm
<DESCRIPTION>CONSENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="text-align: right; margin: 0"><B>Exhibit 23.1</B></P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="text-align: center; margin-top: 0; margin-bottom: 0"><B><U>Consent of Independent Registered Public Accounting Firm</U></B></P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="margin: 0">We hereby consent to the incorporation by reference of our report dated June
16, 2026, with respect to the consolidated financial statements of Sonoma Pharmaceuticals, Inc. and Subsidiaries as of and for the year
ended March 31, 2026, which are incorporated by reference in this Registration Statement on Form S-8.</P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="margin: 0"><I>/s/ Frazier &amp; Deeter, LLC</I></P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="margin: 0">Nashville,
Tennessee</P>

<P STYLE="margin: 0">July 9, 2026</P>

<P STYLE="margin: 0">&nbsp;</P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-FILING FEES
<SEQUENCE>4
<FILENAME>sonoma_ex107.htm
<DESCRIPTION>FILING FEE IXBRL
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!-- Template (c) 2024-2025 Novaworks, LLC -->
<!-- Field: Set; Name: AliasFileType; Value: Forms View; Template: Fee Exhibit\Fee Exhibit FA.xds -->
<!-- Field: Set; Name: Platform; Value: Novaworks Fee Exhibit Editor; Version: 1.4a -->
<!-- Field: Set; Name: Control; Value: VGVtcGxhdGU6IChkZWZhdWx0KQ0KQmFzZSBGb250OiBUaW1lcyBOZXcgUm9tYW4sIFRpbWVzLCBTZXJpZg0KQ2FwdGlvbiBTaXplOiAxMnB0DQpUYWJsZSBUaXRsZSBTaXplOiAxMXB0DQpUYWJsZSBIZWFkIFNpemU6IDhwdA0KVGFibGUgQm9keSBTaXplOiAxMHB0 -->
<!-- Field: Set; Name: MD5; Value: e410ca0a11385b58104153e5f845d87a -->
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:dei="http://xbrl.sec.gov/dei/2025" xmlns:ffd="http://xbrl.sec.gov/ffd/2025">
<head>
  <title>Filing Fee Exhibit</title>
  <meta http-equiv="Content-Type" content="text/html"/>
  </head>
<body style="font: 10pt Times New Roman, Times, Serif">

<div style="display: none">
  <ix:header>
    <ix:hidden>
      <ix:nonNumeric name="ffd:SubmissnTp" contextRef="c_report" id="fee_001">S-8</ix:nonNumeric>
      <ix:nonNumeric name="ffd:FeeExhibitTp" contextRef="c_report" id="fee_002">EX-FILING FEES</ix:nonNumeric>
      <ix:nonNumeric name="dei:EntityCentralIndexKey" contextRef="c_report" id="fee_003">0001367083</ix:nonNumeric>
      <ix:nonNumeric name="ffd:PrevslyPdFlg" contextRef="c_offering_1" format="ixt:booleanfalse" id="fee_004">Fees to be Paid</ix:nonNumeric>
      <ix:nonNumeric name="ffd:PrevslyPdFlg" contextRef="c_offering_2" format="ixt:booleanfalse" id="fee_005">Fees to be Paid</ix:nonNumeric>
      <ix:nonNumeric name="ffd:OfferingTableNa" contextRef="c_report" xs:nil="true" id="fee_006"></ix:nonNumeric>
      <ix:nonNumeric name="ffd:OffsetTableNa" contextRef="c_report" id="fee_007">N/A</ix:nonNumeric>
      </ix:hidden>
    <ix:references>
      <link:schemaRef xlink:href="https://xbrl.sec.gov/ffd/2025/ffd-2025.xsd" xlink:type="simple"/>
      </ix:references>
    <ix:resources>
      <xbrli:context id="c_offering_1">
        <xbrli:entity>
          <xbrli:identifier scheme="http://www.sec.gov/CIK">0001367083</xbrli:identifier>
          <xbrli:segment>
            <xbrldi:typedMember dimension="ffd:OfferingAxis"><dei:lineNo>1</dei:lineNo></xbrldi:typedMember>
            </xbrli:segment>
          </xbrli:entity>
        <xbrli:period>
          <xbrli:startDate>2026-07-08</xbrli:startDate>
          <xbrli:endDate>2026-07-08</xbrli:endDate>
          </xbrli:period>
        </xbrli:context>
      <xbrli:context id="c_offering_2">
        <xbrli:entity>
          <xbrli:identifier scheme="http://www.sec.gov/CIK">0001367083</xbrli:identifier>
          <xbrli:segment>
            <xbrldi:typedMember dimension="ffd:OfferingAxis"><dei:lineNo>2</dei:lineNo></xbrldi:typedMember>
            </xbrli:segment>
          </xbrli:entity>
        <xbrli:period>
          <xbrli:startDate>2026-07-08</xbrli:startDate>
          <xbrli:endDate>2026-07-08</xbrli:endDate>
          </xbrli:period>
        </xbrli:context>
      <xbrli:context id="c_report">
        <xbrli:entity>
          <xbrli:identifier scheme="http://www.sec.gov/CIK">0001367083</xbrli:identifier>
          </xbrli:entity>
        <xbrli:period>
          <xbrli:startDate>2026-07-08</xbrli:startDate>
          <xbrli:endDate>2026-07-08</xbrli:endDate>
          </xbrli:period>
        </xbrli:context>
      <xbrli:unit id="USD">
        <xbrli:measure>iso4217:USD</xbrli:measure>
        </xbrli:unit>
      <xbrli:unit id="pure">
        <xbrli:measure>xbrli:pure</xbrli:measure>
        </xbrli:unit>
      <xbrli:unit id="shares">
        <xbrli:measure>xbrli:shares</xbrli:measure>
        </xbrli:unit>
      </ix:resources>
    </ix:header>
  </div>

<p style="font: bold 12pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 12pt; text-align: right">Ex-Filing Fees</p>

<p style="font: bold 12pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 6pt; text-align: center">CALCULATION OF FILING FEE TABLES</p>

<p style="font: bold 12pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 6pt; text-align: center"><ix:nonNumeric name="ffd:FormTp" contextRef="c_report" id="fee_008">S-8</ix:nonNumeric></p>

<p style="font: bold 12pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 12pt; text-align: center"><ix:nonNumeric name="dei:EntityRegistrantName" contextRef="c_report" id="fee_009">SONOMA PHARMACEUTICALS, INC.</ix:nonNumeric></p>

<p style="font: bold 11pt Times New Roman, Times, Serif; border-top: Gray 3pt double; padding-top: 6pt; text-align: center; margin-top: 0pt; margin-bottom: 4pt">Table 1: Newly Registered Securities</p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
<tr style="font-size: 2pt; vertical-align: bottom; text-align: center; font-weight: bold">
  <td style="width: 16%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 18%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 7%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 9%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 10%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 5%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 10%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 5%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 9%">&#160;</td></tr>
<tr style="font-size: 8pt; vertical-align: bottom; text-align: center; font-weight: bold">
  <td style="border-bottom: Black 1pt solid">Security Type</td>
  <td style="padding-bottom: 1pt">&#160;</td>
  <td style="border-bottom: Black 1pt solid">Security Class Title</td>
  <td style="padding-bottom: 1pt">&#160;</td>
  <td style="border-bottom: Black 1pt solid">Notes</td>
  <td style="padding-bottom: 1pt">&#160;</td>
  <td style="border-bottom: Black 1pt solid">Fee Calculation<br/> Rule</td>
  <td style="padding-bottom: 1pt">&#160;</td>
  <td style="border-bottom: Black 1pt solid">Amount Registered</td>
  <td>&#160;</td>
  <td colspan="2" style="border-bottom: Black 1pt solid">Proposed Maximum Offering<br/> Price Per Unit</td>
  <td>&#160;</td>
  <td colspan="2" style="border-bottom: Black 1pt solid">Maximum Aggregate Offering Price</td>
  <td style="padding-bottom: 1pt">&#160;</td>
  <td style="border-bottom: Black 1pt solid">Fee Rate</td>
  <td>&#160;</td>
  <td colspan="2" style="border-bottom: Black 1pt solid">Amount of Registration Fee</td></tr>
<tr style="font-size: 2pt; vertical-align: top; text-align: left">
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td></tr>
<tr style="vertical-align: top; text-align: left">
  <td style="white-space: nowrap"><ix:nonNumeric name="ffd:OfferingSctyTp" contextRef="c_offering_1" id="fee_010">Equity</ix:nonNumeric></td>
  <td>&#160;</td>
  <td><ix:nonNumeric name="ffd:OfferingSctyTitl" contextRef="c_offering_1" id="fee_011">Common Stock, par value $0.0001 per share, issued under the Sonoma Pharmaceuticals, Inc. 2016 Equity Incentive Plan</ix:nonNumeric></td>
  <td>&#160;</td>
  <td style="text-align: center">(1)</td>
  <td>&#160;</td>
  <td style="text-align: center"><ix:nonNumeric name="ffd:FeesOthrRuleFlg" contextRef="c_offering_1" format="ixt:booleantrue" id="fee_012">Other</ix:nonNumeric></td>
  <td>&#160;</td>
  <td style="text-align: right"><ix:nonFraction name="ffd:AmtSctiesRegd" unitRef="shares" decimals="0" format="ixt:numdotdecimal" contextRef="c_offering_1" id="fee_013">143,924</ix:nonFraction></td>
  <td>&#160;</td>
  <td>$</td>
  <td style="text-align: right"><ix:nonFraction name="ffd:MaxOfferingPricPerScty" unitRef="USD" decimals="INF" format="ixt:numdotdecimal" contextRef="c_offering_1" id="fee_014">1.12</ix:nonFraction></td>
  <td>&#160;</td>
  <td>$</td>
  <td style="text-align: right"><ix:nonFraction name="ffd:MaxAggtOfferingPric" unitRef="USD" decimals="INF" format="ixt:numdotdecimal" contextRef="c_offering_1" id="fee_015">161,194.88</ix:nonFraction></td>
  <td>&#160;</td>
  <td style="text-align: center"><ix:nonFraction name="ffd:FeeRate" unitRef="pure" decimals="INF" format="ixt:numdotdecimal" contextRef="c_offering_1" id="fee_016">0.0001381</ix:nonFraction></td>
  <td>&#160;</td>
  <td>$</td>
  <td style="text-align: right"><ix:nonFraction name="ffd:FeeAmt" unitRef="USD" decimals="INF" format="ixt:numdotdecimal" contextRef="c_offering_1" id="fee_017">22.26</ix:nonFraction></td></tr>
<tr style="vertical-align: top; text-align: left">
  <td style="white-space: nowrap"><ix:nonNumeric name="ffd:OfferingSctyTp" contextRef="c_offering_2" id="fee_018">Equity</ix:nonNumeric></td>
  <td>&#160;</td>
  <td><ix:nonNumeric name="ffd:OfferingSctyTitl" contextRef="c_offering_2" id="fee_019">Common Stock, par value $0.0001 per share, issued under the Sonoma Pharmaceuticals, Inc. 2024 Equity Incentive Plan</ix:nonNumeric></td>
  <td>&#160;</td>
  <td style="text-align: center">(2)</td>
  <td>&#160;</td>
  <td style="text-align: center"><ix:nonNumeric name="ffd:FeesOthrRuleFlg" contextRef="c_offering_2" format="ixt:booleantrue" id="fee_020">Other</ix:nonNumeric></td>
  <td>&#160;</td>
  <td style="text-align: right"><ix:nonFraction name="ffd:AmtSctiesRegd" unitRef="shares" decimals="0" format="ixt:numdotdecimal" contextRef="c_offering_2" id="fee_021">89,952</ix:nonFraction></td>
  <td>&#160;</td>
  <td>$</td>
  <td style="text-align: right"><ix:nonFraction name="ffd:MaxOfferingPricPerScty" unitRef="USD" decimals="INF" format="ixt:numdotdecimal" contextRef="c_offering_2" id="fee_022">1.12</ix:nonFraction></td>
  <td>&#160;</td>
  <td>$</td>
  <td style="text-align: right"><ix:nonFraction name="ffd:MaxAggtOfferingPric" unitRef="USD" decimals="INF" format="ixt:numdotdecimal" contextRef="c_offering_2" id="fee_023">100,746.24</ix:nonFraction></td>
  <td>&#160;</td>
  <td style="text-align: center"><ix:nonFraction name="ffd:FeeRate" unitRef="pure" decimals="INF" format="ixt:numdotdecimal" contextRef="c_offering_2" id="fee_024">0.0001381</ix:nonFraction></td>
  <td>&#160;</td>
  <td>$</td>
  <td style="text-align: right"><ix:nonFraction name="ffd:FeeAmt" unitRef="USD" decimals="INF" format="ixt:numdotdecimal" contextRef="c_offering_2" id="fee_025">13.91</ix:nonFraction></td></tr>
<tr style="font-size: 4pt; vertical-align: top; text-align: left">
  <td style="width: 17%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 25%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 5%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 8%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 8%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 5%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="border-bottom: Black 1pt solid; width: 1%">&#160;</td>
  <td style="border-bottom: Black 1pt solid; width: 8%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="width: 5%">&#160;</td>
  <td style="width: 1%">&#160;</td>
  <td style="border-bottom: Black 1pt solid; width: 1%">&#160;</td>
  <td style="border-bottom: Black 1pt solid; width: 8%">&#160;</td></tr>
<tr style="vertical-align: top; text-align: left">
  <td colspan="12" style="text-align: right">Total Offering Amounts:</td>
  <td>&#160;</td>
  <td>$</td>
  <td style="text-align: right"><ix:nonFraction name="ffd:TtlOfferingAmt" contextRef="c_report" id="fee_026" decimals="INF" format="ixt:numdotdecimal" unitRef="USD">261,941.12</ix:nonFraction></td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td style="text-align: right"><ix:nonFraction name="ffd:TtlFeeAmt" contextRef="c_report" id="fee_027" decimals="INF" format="ixt:numdotdecimal" unitRef="USD">36.17</ix:nonFraction></td></tr>
<tr style="vertical-align: top; text-align: left">
  <td colspan="12" style="text-align: right">Total Fee Offsets:</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td style="border-bottom: Black 1pt solid">&#160;</td>
  <td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="ffd:TtlOffsetAmt" contextRef="c_report" id="fee_028" decimals="INF" format="ixt:numdotdecimal" unitRef="USD">0.00</ix:nonFraction></td></tr>
<tr style="vertical-align: top; text-align: left">
  <td colspan="12" style="text-align: right">Net Fee Due:</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td>&#160;</td>
  <td style="border-bottom: Black 3pt double">$</td>
  <td style="border-bottom: Black 3pt double; text-align: right"><ix:nonFraction name="ffd:NetFeeAmt" contextRef="c_report" id="fee_029" decimals="INF" format="ixt:numdotdecimal" unitRef="USD">36.17</ix:nonFraction></td></tr>
</table>

<p style="font: bold 8pt Arial, Helvetica, Sans-Serif; color: rgb(50,101,255); margin-top: 0pt; margin-bottom: 0pt">&#160;</p>

<p style="font: bold 8pt Times New Roman, Times, Serif; margin-top: 6pt; margin-bottom: 6pt">__________________________________________<br/>
Offering Note(s)</p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 6pt; width: 100%">
<tr style="vertical-align: top; text-align: justify">
  <td style="width: 15pt; text-align: right">(1)</td><td style="width: 5pt"/>
  <td style="text-align: justify"><ix:nonNumeric name="ffd:OfferingNote" escape="1" contextRef="c_offering_1" id="fee_030">Pursuant to Rule 416 under the Securities Act of 1933, as amended, the Securities Act, this registration statement also covers any additional securities that may be offered or issued in connection with any stock split, stock dividend, recapitalization or any other similar transaction effected without receipt of consideration, which results in an increase in the number of the Registrant&#8217;s outstanding shares of Common Stock. In addition, pursuant to Rule 416(c) under the Securities Act, this registration statement also covers an indeterminate amount of interests to be offered or sold pursuant to the Sonoma Pharmaceuticals, Inc. 2016 Equity Incentive Plan described herein.<br/><br/>Estimated solely for calculation of the registration fee pursuant to Rules 457(c) and (h)(1) under the Securities Act, based on the average of the high and low prices for the Registrant&#8217;s Common Stock on June 26, 2026, as reported on the Nasdaq Capital Market.<br/><br/>Represents shares of common stock that were added to the share authorized for issuance under the respective plan pursuant to &#8220;evergreen&#8221; provisions in the plan. Under these provisions, the number of shares authorized for issuance increased by 143,924 shares on April 1, 2026.<br/><br/></ix:nonNumeric></td></tr>
  </table>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 6pt; width: 100%">
<tr style="vertical-align: top; text-align: justify">
  <td style="width: 15pt; text-align: right">(2)</td><td style="width: 5pt"/>
  <td style="text-align: justify"><ix:nonNumeric name="ffd:OfferingNote" escape="1" contextRef="c_offering_2" id="fee_031">Pursuant to Rule 416 under the Securities Act of 1933, as amended, the Securities Act, this registration statement also covers any additional securities that may be offered or issued in connection with any stock split, stock dividend, recapitalization or any other similar transaction effected without receipt of consideration, which results in an increase in the number of the Registrant&#8217;s outstanding shares of Common Stock. In addition, pursuant to Rule 416(c) under the Securities Act, this registration statement also covers an indeterminate amount of interests to be offered or sold pursuant to the Sonoma Pharmaceuticals, Inc. 2016 Equity Incentive Plan described herein.<br/><br/>Estimated solely for calculation of the registration fee pursuant to Rules 457(c) and (h)(1) under the Securities Act, based on the average of the high and low prices for the Registrant&#8217;s Common Stock on June 26, 2026, as reported on the Nasdaq Capital Market.<br/><br/>Represents shares of common stock that were added to the share authorized for issuance under the respective plan pursuant to &#8220;evergreen&#8221; provisions in the plan. Under these provisions, the number of shares authorized for issuance increased by 89,952 shares on April 1, 2026.<br/><br/></ix:nonNumeric></td></tr>
  </table>


</body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>5
<FILENAME>image_001.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 image_001.jpg
M_]C_X  02D9)1@ ! 0$ > !X  #_VP!#  ," @," @,# P,$ P,$!0@%!00$
M!0H'!P8(# H,# L*"PL-#A(0#0X1#@L+$!80$1,4%145# \7&!84&!(4%13_
MVP!# 0,$! 4$!0D%!0D4#0L-%!04%!04%!04%!04%!04%!04%!04%!04%!04
M%!04%!04%!04%!04%!04%!04%!04%!3_P  1" !1 2@# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#]4Z*** //
M/VA6*?!#QNRDJPTN8@C_ ':_*[[=<?\ />3_ +Z-?J=^T62/@9XWQ_T"Y?Y5
M^50ZBNJEL<U7=$_VZX_Y[R?]]&C[=<?\]Y/^^C7Z!Z'\"_@QHGPJ\/>)/%.B
MZ?80S:?:R7-]=WLT:&22->2?, !+']:R_P"P?V5/^?WPS_X-Y?\ X[4RQ%.+
MLV=-+ 8FO'GI0<EY)O\ )'PA]NN/^>\G_?1H^W7'_/>3_OHU]W_V#^RI_P _
MOAG_ ,&\O_QVJ_Q4^#'PAE^!'B+Q;X-TFQN1%;,UIJ-G>2RH&60*V,N0<'(H
MCB*<W:+%5P&)H1YZL'%>::_-'PRM]<;A^_DZ_P!XU^NW@,Y\#^'23D_V=;\G
M_KDM?D$OWA]:_7KX>DMX!\-$\DZ9;$_]^EIU=D<]+=G04445S'2%%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110!YS^T9_R0SQO_V#)?Y5^58ZBOU4_:,_Y(9XW_[!DO\ *ORK'45U4=CF
MJ[H^Z_VF_P#DQ_2O^O/2?_:=?G'7Z.?M-_\ )C^E?]>>D_\ M.OSCKY+,OXW
MR_S/Z!X&_P"15+_&_P HA7Z!?#;_ )1WWG_7M=_^EC5^?M?H%\-O^4=]Y_U[
M7?\ Z6-3RS^/\OU1GQW_ ,BN/^-?^DR/BY?O#ZU^O/P\_P"1 \,_]@RU_P#1
M2U^0R_>'UK]>?AY_R('AG_L&6O\ Z*6OJZNR/P*ENSH:***YCI"BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH \Y_:,_Y(9XW_P"P9+_*ORK'45^JG[1G_)#/&_\ V#)?Y5^58ZBNJCL<
MU7='Z>7'PKTWXS?L[>&O"^K7-U9V5QIEA*TMF5$@*1HPQN!'4>E>4_\ #MWP
M!_T,/B+_ +^0?_&J](\5ZO>Z#^R0FH:==2V5];^'+5XKB!RKH?+CY!'2O /A
M?X#^.7Q7\&VGB32_B/+;65R\B)'=ZG<"0%'*G(52.H/>N*>&IU7S31[N$SG'
MX"G['#57&.]EW.W_ .';O@#_ *&'Q%_W\@_^-5[%H_[/^C:%\$)OAE::A>G2
M9(Y(_M<VQIQOE,AZ #J<=.E>'3_ ;]HBRC:>#XC)=2Q_,L*ZI<9<^GS(%_/B
MN[_92^.6O_$&;7?"GC"/_BI-#/SS[ C2*&V.' XW*V!D8SGVR2&&ITGSTTA8
MO.<=F$%1Q51RC>]GW_IG-#_@GQX6!S_PDVJ_]^XZ^GM#TN/0=$T_38Y&DCL[
M>.W5WZL$4*"??BO"_P!I/]I6?X97EMX5\*VJZGXPO0N%V&1;8,<)\H^\[=E^
MA.<@'S?3_P!G;XX_$"%=5\2^/IM%N91N6S^V2[DSV*181?H*Z;.2O)GCW47:
M*/LNBOB/5=6^-_[+$\%_J^H'QAX3WA)'EF:XC&>@+,/,B/H?NY]>E?6OPW^(
M.E?%#P?8>(M'<M:W2_-&_P!^%QPR-[@_GP1P:AQMJ4I7T.GHKY>^.WCCQ!HG
M[4'PXT;3]9O;/2KW[)]HLX9F6*7=<NK;E'!R  <]A7U#2:M8:=[A117R+\2/
MC/\ $+XN?%#4OA]\+C_9]MIKO%>:FK!&)0[78R'[B!OE&WYB?KBB,>8'*Q]<
MY&>M+7QY_P ,F?%R-/M:?%*7^TOO8^W707=_O]?TKMO@/J/QKT;QW-X6\=6:
MZCHD,#3'6)B#@=%$<J\2$GJK?,!DDC&#3BK:,2D[ZH^C:*^?OVU?%NM>#?A=
MIM[H>J76DW;ZK'$TUI*8V9#%*2I([9 /X5Z]\-[R?4?AWX6NKJ9[BYGTJUEE
MFD.6=VA4EB>Y))-3;2X[ZV.CHK\^;S]I;Q=\-_V@->ENM5OM6\/6VK7-O-ID
M\Q:,0>:PP@/"LH'R_3'0FOO3PYXBT_Q;H5CK&E7*W>GWL0FAF3HRG^1'0CL0
M13E%Q%&2D:5%?+7[;'CGQ#X-OO JZ%K5[I"W4MP)Q9S-'YF##C=CKC)_,U])
M>()Y(/#6I31NT<J6DKJZG!4A"012:LDQ\UVT:=%?G[\&M'^-/QNTC4-1T7XA
MW-I#93BW=;[4IU8L5W9&T-Q@UZ%_PSW^T'_T4Z/_ ,&EU_\ &ZIP2T;(4V]4
MC[ HKP[X"?#+XF^!_$.HW7CCQ<OB&PFM?*@@6\FFV2;U.[#J . 1D>M<7^V7
MXY\0^$/$OP_AT36KW2HKN687"6DS1B7#PXW8ZXR?S-)1N[(KFLKM'U+1114%
MA17RW^U=XZ\0^%OBI\-K+2-9O=-M+V8+<PVTS(DH\^,?, >>"1S7U)5-629*
M=VT%%%?+_P 1?''B#3_VQ_!^@6VLWL&B7%O"TUA'.PAD)\W)*YP<X'Y4)7!N
MQ]04445)04444 %%%% 'G/[1G_)#/&__ &#)?Y5^58'(K]D=1TVTU>QGLKZV
MBO+.=2DL$Z!T=3U!!X(KE?\ A3'@'_H3-"_\%T7_ ,36T)J)E.',SSKX@_\
M)FTO_8M6O_H$=> _ O\ :]L?A-\-M.\-3>&KK49+:29S<13A5;?(S=-IZ9Q7
MU'^T=:0V/[/OBZVMHD@MX=.$<<4:A510R@  = !VKF?V,K&VG_9_T-Y+>*1S
M/=?,R G_ %[T)KEU[@T^:R?0\^G_ ."@EFT+BV\%7CW!&(U>[ 4MVSA,UI_L
M<> _$3^(?%OQ&\1V3Z=+KSM]G@D0H7#R>;(X4\A<[0N>O-?3RZ;:(P9;6!6'
M((C&1^E6:ER5K)#47>[9\9_LW6,7C[]J7X@^)=543W>FS7!MED&?+8RF)2/]
MU%*CZU]F5\2>*+Z\_95_:>O?$=Q:RR^$?$C222/$,_)(P:0#_:23G'=2/6OK
MSPOX]\.^--,CU#1-9L]1M7&=\,H)7V8=5/L<&G/6S6PH.UUU+_B'0;+Q1H=_
MI&HPK<6-["T$T;#(*L,'\?0^M?*?[ ]]<6-UX_\ #AD,MG97,,L9[;B9$8_B
M$7\J]/\ V@/VE/#_ ,+?#5]::?J-OJ'BF:-HK6SMG$AA<C DDQ]T#K@\G'U(
MP?V*/AA?>"?A_>Z[J\3P:EX@E6<1RC#K H/EEO=BS-]"*%I!W!ZR5CC?VBO^
M3O/A7_VY_P#I6]?7M?'W[25Q%:?M:_"Z:>5(88ULV>21@JJ!=29))Z"OJ7_A
M.?#G_0?TS_P,C_QI2V0X[LW*^*_$'AGXB?LT?&#Q%XI\,: WB;P]KDDDCB.)
MI=H=_,VML^9&5B0#T(_3ZW?QUX?$4C1ZQ97+HC/Y-M.LLCX!)"HI)8X'0#)K
MROX:?M=^"/B#J-WI]U.?#=]',R01ZFX19TS\K!^@8]U//IFB-U?0)6=M3S+_
M (;-\?1#?+\*[@(.6^:8<?7RZ[_X2?MA^'/B/K\&@:IIUQX9UN=A'#'<.'AE
M?^X'P"&/8$#/3.>*]T_M:Q$'G?;(/)QN\SS5VX]<YKXD_:U\0^'/'7Q4\&V?
M@J2#4O%$4_EW%WIV&#,73RD+KPS*0Q]LU2Y9:6)=XZW/3_V^O^2/Z7_V&8O_
M $5+7MWPJ_Y)AX0_[ ]G_P"B4KQ#]OC(^#ND[CEO[8BR1_UQEKV_X5?\DP\(
M?]@>S_\ 1*5+^!%+XV?(WPC\#:5\1_V@OC%X?UF 365VEZN<?-$WVM=KJ>S*
M>1_A5KX+>.=6_9?^*-W\-O&<I_X1V\FW6=ZV?+B+'"2J3T1^C#^%A[-6M^S-
M_P G7?%+ZWG_ *5K7M/[1GP,M/C7X,>")8X?$-B&ETZZ;CYN\;'^ZV!]#@^N
M=&];/8A+2ZW/%_V_"#J'PZ(.09KGD?6"OJOQ-_R*FJ_]>4O_ *+-?F9XW^(^
MN^(],\)>$?$MO*FK>%KN:U,T_P#K#&3& C@_Q(4(SW&/3)_3/Q-_R*FJ_P#7
ME+_Z+-3-620X.[;/SW_9U_:#UGX.Z!JUAIGA)_$4=W="=YEE=/+(4#;A4;TS
M7US^S[\==6^,LVMIJ?A=_#@T]8FC+2,_F[R^?O(O3:/7K7D_[!/B'2]&\#^)
MH[_4K2R=]15E2XG6,D>6.0":^H?^$Y\.?]!_3/\ P,C_ ,:)VNU8*=[+4W*^
M/OV[_P#D:_AI_P!=I_\ T."OJ[3_ !/H^K7'D66JV5Y/@MY<%PCM@=3@&OE#
M]O%@GBGX:LQ"J);@DDX ^>"II_$5/X3["HK#_P"$Y\.?]!_3/_ R/_&G1>-/
M#\\J1QZYILDCD*J+=QDL3T &:S+NCY8_;-_Y+'\*?^NZ_P#I1'7V#7QY^VC(
MD/Q?^%;R.J(LP9F8X  N(\DFOJ?_ (3CPY_T'],_\#(_\:TE\*(C\3-ROD/X
MH_\ )]?@;_KU@_\ :U?4D'C+0+J>.&'6].EFD8*D:72,S$]  #R:^6_BC_R?
M7X&_Z]8/_:U$-V$]D?7E%%%9F@4444 %%%% !1110!S_ (^\'6WQ!\':KX=O
M)Y;:VU&'R9)8<;U&0<C/':J'PI^&UE\)?!-GX:T^ZGO+6V>1UFN<;R7<L<X
M'4UU]%.[M85M;A1112&87C/P1H?Q!T*;1_$&GQ:C82\F.0<JW9E8<JP]17S=
MK7_!/W0)KUY='\5:AID#'B&>!9RH/8,"O'X5]7452DX[$N*EN?/_ ,-/V+O!
M'@+48=1OVG\37\+!H_MP40(1T(C'7_@1(]J]_ P,#I2T4FV]QI);'C/QJ_9@
MT+XW>([/6-4U6_L)[:U%JJ6FS:5#LV3N!YRQKS[_ (=^>$?^ADUK_P A?_$U
M]3T52G):)DN$7JT?/'@']BWPU\/O&.E>(K37=5N;G3YA,D4_E[&(!&#A<]ZZ
M#XI?LG>!OBA>RZE);S:)J\IW/>::0GF-ZNA!4GU(P3W->ST4N:5[W'RJUK'R
M(O\ P3WL-^P^-KLVV<^6+%0?S\S^E>P_"3]F7P7\'[H7^G6\VHZR%VC4;]@[
MIGKL  "YSUQG'&:]:HIN<GHV)0BM4C@?C-\'].^-7ABWT34[VYL8(+I;L26N
MW<6"LN#N!X^<_E76^'-%B\-^'M,TB"1Y8;"UBM4>3&YE1 H)QWP*T:*F[M8J
MRO<\O\ ? /2?A]\1_$7C&SU&\N;W6O-\Z";;Y:>9*)#MP,\$8YKU"BBAMO<$
MDMCQ;XK_ +*OA7XK^+8/$=S<7>E:DJJL[66S%QM^ZS @_,!QGN,>E>P7]BFH
M:;<V;L52>)H69>H# C/ZU9HHNV%DCY8_X=]^$!T\1ZT/IY7_ ,31_P ._/"/
M_0R:U_Y"_P#B:^IZ*OGEW)Y(]CP[X0_LGZ!\'?%Z^(=.UC4KZY6!X/*NMFS#
M8R> #GBMOXX?L\Z/\=)=(?5=2O=/.FB41BTV?-OVYSN!_N"O5J*GF=[CY5:Q
M\L?\._/"/_0R:U_Y"_\ B:O:%^PEX5T'7-.U.+Q#K$DME<1W*(_E[6*,& /R
M].*^F:*?/+N+DCV/(_C=^SAHOQSU#2[O5=3OK!]/B>)%M-F&#$$D[@?2O-/^
M'?GA'_H9-:_\A?\ Q-?4]%"G):)@X1>K1\V^%/V'?"_A+Q1I&MV^OZO//IMW
M%=QQR^7M9HW# '"],BO1?$/P'TGQ'\8-(^(<VH7D6I:;&D<=JFWRF"[\9XS_
M !GOVKTVBDY-CY4@HHHJ2@HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
)HH **** /__9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>7
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Submission<br></strong></div></th>
<th class="th"><div>Jul. 08, 2026</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_SubmissionLineItems', window );"><strong>Submission [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Central Index Key</a></td>
<td class="text">0001367083<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Registrant Name</a></td>
<td class="text">SONOMA PHARMACEUTICALS, INC.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FormTp', window );">Form Type</a></td>
<td class="text">S-8<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_SubmissnTp', window );">Submission Type</a></td>
<td class="text">S-8<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeeExhibitTp', window );">Fee Exhibit Type</a></td>
<td class="text">EX-FILING FEES<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingTableNa', window );">Offering Table N/A</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OffsetTableNa', window );">Offset Table N/A</a></td>
<td class="text">N/A<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FeeExhibitTp">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeeExhibitTp</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:feeExhibitTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FormTp">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FormTp</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingTableNa">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingTableNa</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:naItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OffsetTableNa">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OffsetTableNa</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:naItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_SubmissionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_SubmissionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_SubmissnTp">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_SubmissnTp</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>8
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Offerings<br></strong></div></th>
<th class="th">
<div>Jul. 08, 2026 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingAxis=1', window );">Offering: 1</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingTable', window );"><strong>Offering:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_PrevslyPdFlg', window );">Fee Previously Paid</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeesOthrRuleFlg', window );">Other Rule</a></td>
<td class="text">true<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingSctyTp', window );">Security Type</a></td>
<td class="text">Equity<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingSctyTitl', window );">Security Class Title</a></td>
<td class="text">Common Stock, par value $0.0001 per share, issued under the Sonoma Pharmaceuticals, Inc. 2016 Equity Incentive Plan<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_AmtSctiesRegd', window );">Amount Registered | shares</a></td>
<td class="nump">143,924<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_MaxOfferingPricPerScty', window );">Proposed Maximum Offering Price per Unit</a></td>
<td class="nump">1.12<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_MaxAggtOfferingPric', window );">Maximum Aggregate Offering Price</a></td>
<td class="nump">$ 161,194.88<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeeRate', window );">Fee Rate</a></td>
<td class="nump">0.01381%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeeAmt', window );">Amount of Registration Fee</a></td>
<td class="nump">$ 22.26<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingNote', window );">Offering Note</a></td>
<td class="text">Pursuant to Rule 416 under the Securities Act of 1933, as amended, the Securities Act, this registration statement also covers any additional securities that may be offered or issued in connection with any stock split, stock dividend, recapitalization or any other similar transaction effected without receipt of consideration, which results in an increase in the number of the Registrant&#8217;s outstanding shares of Common Stock. In addition, pursuant to Rule 416(c) under the Securities Act, this registration statement also covers an indeterminate amount of interests to be offered or sold pursuant to the Sonoma Pharmaceuticals, Inc. 2016 Equity Incentive Plan described herein.<br/><br/>Estimated solely for calculation of the registration fee pursuant to Rules 457(c) and (h)(1) under the Securities Act, based on the average of the high and low prices for the Registrant&#8217;s Common Stock on June 26, 2026, as reported on the Nasdaq Capital Market.<br/><br/>Represents shares of common stock that were added to the share authorized for issuance under the respective plan pursuant to &#8220;evergreen&#8221; provisions in the plan. Under these provisions, the number of shares authorized for issuance increased by 143,924 shares on April 1, 2026.<br/><br/><span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingAxis=2', window );">Offering: 2</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingTable', window );"><strong>Offering:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_PrevslyPdFlg', window );">Fee Previously Paid</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeesOthrRuleFlg', window );">Other Rule</a></td>
<td class="text">true<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingSctyTp', window );">Security Type</a></td>
<td class="text">Equity<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingSctyTitl', window );">Security Class Title</a></td>
<td class="text">Common Stock, par value $0.0001 per share, issued under the Sonoma Pharmaceuticals, Inc. 2024 Equity Incentive Plan<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_AmtSctiesRegd', window );">Amount Registered | shares</a></td>
<td class="nump">89,952<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_MaxOfferingPricPerScty', window );">Proposed Maximum Offering Price per Unit</a></td>
<td class="nump">1.12<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_MaxAggtOfferingPric', window );">Maximum Aggregate Offering Price</a></td>
<td class="nump">$ 100,746.24<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeeRate', window );">Fee Rate</a></td>
<td class="nump">0.01381%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeeAmt', window );">Amount of Registration Fee</a></td>
<td class="nump">$ 13.91<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingNote', window );">Offering Note</a></td>
<td class="text">Pursuant to Rule 416 under the Securities Act of 1933, as amended, the Securities Act, this registration statement also covers any additional securities that may be offered or issued in connection with any stock split, stock dividend, recapitalization or any other similar transaction effected without receipt of consideration, which results in an increase in the number of the Registrant&#8217;s outstanding shares of Common Stock. In addition, pursuant to Rule 416(c) under the Securities Act, this registration statement also covers an indeterminate amount of interests to be offered or sold pursuant to the Sonoma Pharmaceuticals, Inc. 2016 Equity Incentive Plan described herein.<br/><br/>Estimated solely for calculation of the registration fee pursuant to Rules 457(c) and (h)(1) under the Securities Act, based on the average of the high and low prices for the Registrant&#8217;s Common Stock on June 26, 2026, as reported on the Nasdaq Capital Market.<br/><br/>Represents shares of common stock that were added to the share authorized for issuance under the respective plan pursuant to &#8220;evergreen&#8221; provisions in the plan. Under these provisions, the number of shares authorized for issuance increased by 89,952 shares on April 1, 2026.<br/><br/><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_AmtSctiesRegd">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of securities being registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_AmtSctiesRegd</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegativeDecimal2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FeeAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total amount of registration fee (amount due after offsets).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeeAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative1TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FeeRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The rate per dollar of fees that public companies and other issuers pay to register their securities with the Commission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeeRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FeesOthrRuleFlg">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Checkbox indicating whether filer is using a rule other than 457(a), 457(o), or 457(f) to calculate the registration fee due.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeesOthrRuleFlg</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_MaxAggtOfferingPric">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum aggregate offering price for the offering that is being registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_MaxAggtOfferingPric</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative100TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_MaxOfferingPricPerScty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum offering price per share/unit being registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_MaxOfferingPricPerScty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegativeDecimal4lItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingNote">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingNote</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingSctyTitl">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The title of the class of securities being registered (for each class being registered).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingSctyTitl</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingSctyTp">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Type of securities: "Asset-backed Securities", "ADRs/ADSs", "Debt", "Debt Convertible into Equity", "Equity", "Face Amount Certificates", "Limited Partnership Interests", "Mortgage Backed Securities", "Non-Convertible Debt", "Unallocated (Universal) Shelf", "Exchange Traded Vehicle Securities", "Other"</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingSctyTp</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:securityTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingTable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingTable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_PrevslyPdFlg">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_PrevslyPdFlg</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingAxis=1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingAxis=1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingAxis=2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingAxis=2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>9
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fees Summary<br></strong></div></th>
<th class="th">
<div>Jul. 08, 2026 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeesSummaryLineItems', window );"><strong>Fees Summary [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_TtlOfferingAmt', window );">Total Offering</a></td>
<td class="nump">$ 261,941.12<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_TtlFeeAmt', window );">Total Fee Amount</a></td>
<td class="nump">36.17<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_TtlOffsetAmt', window );">Total Offset Amount</a></td>
<td class="nump">0.00<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_NetFeeAmt', window );">Net Fee</a></td>
<td class="nump">$ 36.17<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FeesSummaryLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeesSummaryLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_NetFeeAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_NetFeeAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_TtlFeeAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_TtlFeeAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative1TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_TtlOfferingAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_TtlOfferingAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative1TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_TtlOffsetAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_TtlOffsetAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative1TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

/* DefRef Styles */
.report table.authRefData{
	background-color: #def;
	border: 2px solid #2F4497;
	font-size: 1em;
	position: absolute;
}

.report table.authRefData a {
	display: block;
	font-weight: bold;
}

.report table.authRefData p {
	margin-top: 0px;
}

.report table.authRefData .hide {
	background-color: #2F4497;
	padding: 1px 3px 0px 0px;
	text-align: right;
}

.report table.authRefData .hide a:hover {
	background-color: #2F4497;
}

.report table.authRefData .body {
	height: 150px;
	overflow: auto;
	width: 400px;
}

.report table.authRefData table{
	font-size: 1em;
}

/* Report Styles */
.pl a, .pl a:visited {
	color: black;
	text-decoration: none;
}

/* table */
.report {
	background-color: white;
	border: 2px solid #acf;
	clear: both;
	color: black;
	font: normal 8pt Helvetica, Arial, san-serif;
	margin-bottom: 2em;
}

.report hr {
	border: 1px solid #acf;
}

/* Top labels */
.report th {
	background-color: #acf;
	color: black;
	font-weight: bold;
	text-align: center;
}

.report th.void	{
	background-color: transparent;
	color: #000000;
	font: bold 10pt Helvetica, Arial, san-serif;
	text-align: left;
}

.report .pl {
	text-align: left;
	vertical-align: top;
	white-space: normal;
	width: 200px;
	white-space: normal; /* word-wrap: break-word; */
}

.report td.pl a.a {
	cursor: pointer;
	display: block;
	width: 200px;
	overflow: hidden;
}

.report td.pl div.a {
	width: 200px;
}

.report td.pl a:hover {
	background-color: #ffc;
}

/* Header rows... */
.report tr.rh {
	background-color: #acf;
	color: black;
	font-weight: bold;
}

/* Calendars... */
.report .rc {
	background-color: #f0f0f0;
}

/* Even rows... */
.report .re, .report .reu {
	background-color: #def;
}

.report .reu td {
	border-bottom: 1px solid black;
}

/* Odd rows... */
.report .ro, .report .rou {
	background-color: white;
}

.report .rou td {
	border-bottom: 1px solid black;
}

.report .rou table td, .report .reu table td {
	border-bottom: 0px solid black;
}

/* styles for footnote marker */
.report .fn {
	white-space: nowrap;
}

/* styles for numeric types */
.report .num, .report .nump {
	text-align: right;
	white-space: nowrap;
}

.report .nump {
	padding-left: 2em;
}

.report .nump {
	padding: 0px 0.4em 0px 2em;
}

/* styles for text types */
.report .text {
	text-align: left;
	white-space: normal;
}

.report .text .big {
	margin-bottom: 1em;
	width: 17em;
}

.report .text .more {
	display: none;
}

.report .text .note {
	font-style: italic;
	font-weight: bold;
}

.report .text .small {
	width: 10em;
}

.report sup {
	font-style: italic;
}

.report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission.  Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105.
var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0);
e.removeAttribute('id');a.parentNode.appendChild(e)}}
if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'}
e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.26.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>3</ContextCount>
  <ElementCount>21</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>1</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>3</UnitCount>
  <MyReports>
    <Report instance="sonoma_ex107.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>995210 - Document - Submission</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ffd/role/document/submissionTable</Role>
      <ShortName>Submission</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="sonoma_ex107.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>995211 - Document - Offerings</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ffd/role/document/feesOfferingTable</Role>
      <ShortName>Offerings</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="sonoma_ex107.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>995215 - Document - Fees Summary</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ffd/role/document/feesSummaryTable</Role>
      <ShortName>Fees Summary</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="EX-FILING FEES" original="sonoma_ex107.htm">sonoma_ex107.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="2">http://xbrl.sec.gov/dei/2025</BaseTaxonomy>
    <BaseTaxonomy items="29">http://xbrl.sec.gov/ffd/2025</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>false</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>15
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "sonoma_ex107.htm": {
   "dts": {
    "inline": {
     "local": [
      "sonoma_ex107.htm"
     ]
    },
    "schema": {
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/lrr/arcrole/deprecated-2009-12-16.xsd",
      "https://www.xbrl.org/dtr/type/2024-01-31/types.xsd",
      "https://xbrl.sec.gov/dei/2025/dei-2025.xsd",
      "https://xbrl.sec.gov/ffd/2025/ffd-2025.xsd"
     ]
    }
   },
   "keyStandard": 21,
   "keyCustom": 0,
   "axisStandard": 1,
   "axisCustom": 0,
   "memberStandard": 1,
   "memberCustom": 0,
   "hidden": {
    "total": 7,
    "http://xbrl.sec.gov/ffd/2025": 6,
    "http://xbrl.sec.gov/dei/2025": 1
   },
   "contextCount": 3,
   "entityCount": 1,
   "segmentCount": 1,
   "elementCount": 107,
   "unitCount": 3,
   "baseTaxonomies": {
    "http://xbrl.sec.gov/ffd/2025": 29,
    "http://xbrl.sec.gov/dei/2025": 2
   },
   "report": {
    "R1": {
     "role": "http://xbrl.sec.gov/ffd/role/document/submissionTable",
     "longName": "995210 - Document - Submission",
     "shortName": "Submission",
     "isDefault": "true",
     "groupType": "Fee_Exhibit",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "c_report",
      "name": "dei:EntityRegistrantName",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "sonoma_ex107.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c_report",
      "name": "dei:EntityRegistrantName",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "sonoma_ex107.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
     "longName": "995211 - Document - Offerings",
     "shortName": "Offerings",
     "isDefault": "false",
     "groupType": "Fee_Exhibit",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "2",
     "firstAnchor": {
      "contextRef": "c_offering_1",
      "name": "ffd:FeesOthrRuleFlg",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "sonoma_ex107.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c_offering_1",
      "name": "ffd:FeesOthrRuleFlg",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "sonoma_ex107.htm",
      "first": true,
      "unique": true
     }
    },
    "R3": {
     "role": "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable",
     "longName": "995215 - Document - Fees Summary",
     "shortName": "Fees Summary",
     "isDefault": "false",
     "groupType": "Fee_Exhibit",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "3",
     "firstAnchor": {
      "contextRef": "c_report",
      "name": "ffd:TtlOfferingAmt",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "sonoma_ex107.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c_report",
      "name": "ffd:TtlOfferingAmt",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "sonoma_ex107.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "ffd_AggtRedRpPricFsclYr": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AggtRedRpPricFsclYr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Redeemed or Repurchased Price, Fiscal Year",
        "terseLabel": "Aggregate Redeemed or Repurchased, FY"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_AggtRedRpPricPrrFsclYr": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AggtRedRpPricPrrFsclYr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Redeemed or Repurchased Price, Prior Fiscal Year",
        "terseLabel": "Aggregate Redeemed or Repurchased, Prior FY"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_AggtSalesPricFsclYr": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AggtSalesPricFsclYr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Sales Price, Fiscal Year",
        "terseLabel": "Aggregate Sales Price"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_AmtRedCdts": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AmtRedCdts",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amount of Redemption Credits",
        "terseLabel": "Redemption Credits"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_AmtSctiesRcvd": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AmtSctiesRcvd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amount of Securities Received",
        "terseLabel": "Amount of Securities Received",
        "documentation": "Amount of securities to be received by the registrant (or cancelled upon issuance of securities to be registered on the form)"
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "ffd_AmtSctiesRegd": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AmtSctiesRegd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amount of Securities Registered",
        "terseLabel": "Amount Registered",
        "documentation": "The amount of securities being registered."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_CeasedOprsDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CeasedOprsDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ceased Operations Date",
        "terseLabel": "Ceased Operations Date"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_CfwdFormTp": {
     "xbrltype": "formTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CfwdFormTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carry Forward Form Type",
        "terseLabel": "Carry Forward Form Type",
        "documentation": "The Form Type of the prior shelf registration statement from which unsold securities are carried forward under 415(a)(6). This should be an EDGAR submission type (S-3, S-3/A, S-3ASR, etc.), which means there is a fixed set of possible responses. Note that while the XBRL response should be an EDGAR submission type, the human-readable Ex. 107 could include a simpler label (e.g., \"Form S-3\" in the human-readable and \"S-3ASR\" in the XBRL)."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_CfwdPrevslyPdFee": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CfwdPrevslyPdFee",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carry Forward Previously Paid Fee",
        "terseLabel": "Filing Fee Previously Paid in Connection with Unsold Securities to be Carried Forward",
        "documentation": "The fee previously paid in connection with the securities being brought forward from the prior shelf registration statement on which unsold securities are carried forward under 415(a)(6)."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_CfwdPrrFctvDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CfwdPrrFctvDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carry Forward Prior Effective Date",
        "terseLabel": "Carry Forward Initial Effective Date",
        "documentation": "The initial effective date of the prior shelf registration statement from which unsold securities are carried forward under 415(a)(6)."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_CfwdPrrFileNb": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CfwdPrrFileNb",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carry Forward File Number",
        "terseLabel": "Carry Forward File Number",
        "documentation": "The EDGAR File Number of the prior shelf registration statement from which unsold securities are carried forward under 415(a)(6). If the prior registration statement has a Securities Act File Number and an Investment Company Act File Number, the Securities Act File Number should be used."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_CmbndPrspctsItemAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CmbndPrspctsItemAxis",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Combined Prospectus Item [Axis]",
        "terseLabel": "Combined Prospectus",
        "documentation": "A sequence number (1, 2, 3...) used to distinguish different references to earlier prospectuses on a single fee bearing submission."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_CmbndPrspctsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CmbndPrspctsLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Combined Prospectus [Line Items]",
        "terseLabel": "Combined Prospectus:"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_CmbndPrspctsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CmbndPrspctsTable",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Combined Prospectus [Table]",
        "terseLabel": "Combined Prospectus Table"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_CombinedProspectusTableNa": {
     "xbrltype": "naItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CombinedProspectusTableNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Combined Prospectus Table [N/A]",
        "terseLabel": "Combined Prospectus Table N/A"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_CshPdByRegistrantInTx": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CshPdByRegistrantInTx",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Paid by Registrant in Transaction",
        "terseLabel": "Cash Consideration Paid",
        "documentation": "Amount of cash consideration paid by registrant in connection with the exchange or other transaction being registered (in a 457(f) calculation)."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "ffd_CshRcvdByRegistrantInTx": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CshRcvdByRegistrantInTx",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Received by Registrant in Transaction",
        "terseLabel": "Cash Consideration Received",
        "documentation": "Amount of cash consideration received by registrant in connection with the exchange or other transaction being registered (in a 457(f) calculation)."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Central Index Key",
        "terseLabel": "Central Index Key",
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK."
       }
      }
     },
     "auth_ref": [
      "r0"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Registrant Name",
        "terseLabel": "Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r0"
     ]
    },
    "ffd_FeeAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Amount",
        "terseLabel": "Amount of Registration Fee",
        "documentation": "Total amount of registration fee (amount due after offsets)."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeeExhibitTp": {
     "xbrltype": "feeExhibitTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeExhibitTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Exhibit Type",
        "terseLabel": "Fee Exhibit Type"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_FeeIntrstAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeIntrstAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Interest Amount",
        "terseLabel": "Interest Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeeNote": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeNote",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Note",
        "terseLabel": "Fee Note"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeeNoteMaxAggtOfferingPric": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeNoteMaxAggtOfferingPric",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Note Maximum Aggregate Offering Price",
        "terseLabel": "Fee Note MAOP"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeeRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeRate",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Rate",
        "terseLabel": "Fee Rate",
        "documentation": "The rate per dollar of fees that public companies and other issuers pay to register their securities with the Commission."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeesOthrRuleFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeesOthrRuleFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fees, Other Rule [Flag]",
        "terseLabel": "Other Rule",
        "documentation": "Checkbox indicating whether filer is using a rule other than 457(a), 457(o), or 457(f) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeesSummaryLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeesSummaryLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Fees Summary [Line Items]",
        "terseLabel": "Fees Summary:"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FnlPrspctsFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FnlPrspctsFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Final Prospectus [Flag]",
        "terseLabel": "Final Prospectus"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FormTp": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FormTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Form Type",
        "terseLabel": "Form Type"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_GnlInstrIIhiFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "GnlInstrIIhiFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "General Instruction II.H,I [Flag]",
        "terseLabel": "General Instruction II.H,I"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrCity": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrCity",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, City",
        "terseLabel": "City"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrStatOrCtryCd": {
     "xbrltype": "stateOrCountryCodeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrStatOrCtryCd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, State or Country Code",
        "terseLabel": "State or Country Code"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrStrt1": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrStrt1",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, Street 1",
        "terseLabel": "Street 1"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrStrt2": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrStrt2",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, Street 2",
        "terseLabel": "Street 2"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrZipCd": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrZipCd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, Zip Code",
        "terseLabel": "Zip Code"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrNm": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrNm",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Name",
        "terseLabel": "Issuer Name"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_MaxAggtOfferingPric": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "MaxAggtOfferingPric",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum Aggregate Offering Price",
        "terseLabel": "Maximum Aggregate Offering Price",
        "documentation": "The maximum aggregate offering price for the offering that is being registered."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_MaxOfferingPricPerScty": {
     "xbrltype": "nonNegativeDecimal4lItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "MaxOfferingPricPerScty",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum Offering Price per Security",
        "terseLabel": "Proposed Maximum Offering Price per Unit",
        "documentation": "The maximum offering price per share/unit being registered."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NetFeeAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NetFeeAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Fee Amount",
        "terseLabel": "Net Fee"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NetSalesAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NetSalesAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Sales Amount",
        "terseLabel": "Net Sales"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NrrtvDsclsr": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NrrtvDsclsr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Narrative Disclosure",
        "terseLabel": "Narrative Disclosure"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NrrtvMaxAggtAmt": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NrrtvMaxAggtAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Narrative Disclosure, Maximum Aggregate Offering Amount",
        "terseLabel": "Narrative - Max Aggregate Offering Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NrrtvMaxAggtOfferingPric": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NrrtvMaxAggtOfferingPric",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Narrative Disclosure, Maximum Aggregate Offering Price",
        "terseLabel": "Narrative - Max Aggregate Offering Price"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OfferingAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingAxis",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering [Axis]",
        "terseLabel": "Offering",
        "documentation": "A sequence number (1, 2, 3...) used to distinguish different security offerings on a single fee bearing submission."
       }
      }
     },
     "auth_ref": []
    },
    "ffd_OfferingLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering [Line Items]",
        "terseLabel": "Offering:"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_OfferingNote": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingNote",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering Note",
        "terseLabel": "Offering Note"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OfferingSctyTitl": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingSctyTitl",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering Security Title",
        "terseLabel": "Security Class Title",
        "documentation": "The title of the class of securities being registered (for each class being registered)."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OfferingSctyTp": {
     "xbrltype": "securityTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingSctyTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering Security Type",
        "terseLabel": "Security Type",
        "documentation": "Type of securities: \"Asset-backed Securities\", \"ADRs/ADSs\", \"Debt\", \"Debt Convertible into Equity\", \"Equity\", \"Face Amount Certificates\", \"Limited Partnership Interests\", \"Mortgage Backed Securities\", \"Non-Convertible Debt\", \"Unallocated (Universal) Shelf\", \"Exchange Traded Vehicle Securities\", \"Other\""
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OfferingTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingTable",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering [Table]",
        "terseLabel": "Offering:"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_OfferingTableNa": {
     "xbrltype": "naItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingTableNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering Table [N/A]",
        "terseLabel": "Offering Table N/A"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_OffsetAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetAxis",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset [Axis]",
        "terseLabel": "Offset",
        "documentation": "A sequence number (1, 2, 3...) used to distinguish different offsets as applied to a fee bearing submission."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetClmInitlFilgDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetClmInitlFilgDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Claim Initial Filing Date",
        "terseLabel": "Initial Filing Date",
        "documentation": "The initial filing date of the earlier registration statement with which the earlier (offsetting) fee was paid for a claimed offset. If the offset fee was paid with an amendment, do not provide the amendment date under this element; instead, provide the date of the initial filing (i.e. the \"parent\" filing) ."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetClmdAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetClmdAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Claimed Amount",
        "terseLabel": "Fee Offset Claimed",
        "documentation": "The amount of offsetting fees being claimed."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetClmdInd": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetClmdInd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Claimed Indicator",
        "terseLabel": "Offset Claimed"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetExpltnForClmdAmt": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetExpltnForClmdAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Explanation for Claimed Amount",
        "terseLabel": "Explanation for Claimed Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetLineItems",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Offset:",
        "label": "Offset [Line Items]"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetNote": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetNote",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Note",
        "terseLabel": "Offset Note"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetPrrFeeAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrFeeAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Fee Amount",
        "terseLabel": "Fee Paid with Fee Offset Source",
        "documentation": "The fee previously paid from which an offset is being derived."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrFileNb": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrFileNb",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior File Number",
        "terseLabel": "File Number",
        "documentation": "The EDGAR File Number of the earlier registration statement with which the earlier (offsetting) fee was paid. If the offset filing for the offset has a Securities Act File Number and an Investment Company Act File Number, the Securities Act File Number should be used."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrFilerNm": {
     "xbrltype": "filerNameItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrFilerNm",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Filer Name",
        "terseLabel": "Registrant or Filer Name",
        "documentation": "The name of the registrant that filed the earlier registration statement with which the earlier (offsetting) fee was paid."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrFormTp": {
     "xbrltype": "formTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrFormTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Form Type",
        "terseLabel": "Form or Filing Type",
        "documentation": "The Form Type of the offset filing."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrNbOfUnsoldScties": {
     "xbrltype": "nonNegativeIntegerItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrNbOfUnsoldScties",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Unsold Number of Securities",
        "terseLabel": "Unsold Securities Associated with Fee Offset Claimed",
        "documentation": "The number of unsold securities registered on the prior registration statement that are associated with the claimed offset."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrSctyTitl": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrSctyTitl",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Security Title",
        "terseLabel": "Security Title Associated with Fee Offset Claimed",
        "documentation": "The title of the class of securities from which offset fees were derived."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrSctyTp": {
     "xbrltype": "securityTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrSctyTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Security Type",
        "terseLabel": "Security Type Associated with Fee Offset Claimed",
        "documentation": "Type of securities: \"Asset-backed Securities\", \"ADRs/ADSs\", \"Debt\", \"Debt Convertible into Equity\", \"Equity\", \"Face Amount Certificates\", \"Limited Partnership Interests\", \"Mortgage Backed Securities\", \"Non-Convertible Debt\", \"Unallocated (Universal) Shelf\", \"Exchange Traded Vehicle Securities\", \"Other\""
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrUnsoldOfferingAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrUnsoldOfferingAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Unsold Offering Amount",
        "terseLabel": "Unsold Aggregate Offering Amount Associated with Fee Offset Claimed",
        "documentation": "The aggregate offering amount of unsold securities registered on the prior registration statement that are associated with the claimed offset."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetSrcFilgDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetSrcFilgDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Source Filing Date",
        "terseLabel": "Filing Date",
        "documentation": "The filing date of the earlier registration statement with which the earlier (offsetting) fee was paid in an offset."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetTable",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Offset Payment:",
        "label": "Offset [Table]"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetTableNa": {
     "xbrltype": "naItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetTableNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Table [N/A]",
        "terseLabel": "Offset Table N/A"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_PrevslyPdFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "PrevslyPdFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Previously Paid [Flag]",
        "terseLabel": "Fee Previously Paid"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_RegnFileNb": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "RegnFileNb",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Registration File Number",
        "terseLabel": "Registration File Number"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_RptgFsclYrEndDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "RptgFsclYrEndDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reporting Fiscal Year End Date",
        "terseLabel": "Reporting FY End Date"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_Rule011Flg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule011Flg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 0-11 [Flag]",
        "terseLabel": "Rule 0-11"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_Rule011a2OffsetFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule011a2OffsetFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Rule 0-11(a)(2) Offset",
        "label": "Rule 0-11(a)(2) Offset [Flag]"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_Rule415a6Flg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule415a6Flg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 415(a)(6) [Flag]",
        "terseLabel": "Rule 415(a)(6)",
        "documentation": "Checkbox indicating whether filer is claiming a 415(a)(6) carryforward."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_Rule429AggtOfferingAmt": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429AggtOfferingAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Aggregate Offering Amount",
        "terseLabel": "Maximum Aggregate Offering Price of Securities Previously Registered",
        "documentation": "The maximum aggregate offering amount of unsold securities registered on the prior registration statement that are carried forward under Rule 429. Only applicable if 457(o) was used in the fee calculation for the prior registration statement."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429CmbndPrspctsFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429CmbndPrspctsFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Combined Prospectus [Flag]",
        "terseLabel": "Rule 429",
        "documentation": "Checkbox indicating whether filer is using a combined prospectus under Rule 429."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429EarlierFileNb": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429EarlierFileNb",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Earlier File Number",
        "terseLabel": "File Number",
        "documentation": "The Securities Act File Number of the earlier effective registration statement(s) from which securities may be offered and sold using the combined prospectus pursuant to Rule 429."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429EarlierFormTp": {
     "xbrltype": "formTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429EarlierFormTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Earlier Form Type",
        "terseLabel": "Form Type",
        "documentation": "The Form Type of the earlier registration statement from which unsold securities are carried forward under Rule 429. This should be an EDGAR submission type (S-3, S-3/A, S-3ASR, etc.), which means there is a fixed set of possible responses. Note that while the XBRL response should be an EDGAR submission type, the human-readable Ex. 107 could include a simpler label (e.g., \"Form S-3\" in the human-readable and \"S-3ASR\" in the XBRL)."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429InitlFctvDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429InitlFctvDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Initial Effective Date",
        "terseLabel": "Initial Effective Date",
        "documentation": "The filing date of the earlier registration statement from which unsold securities are carried forward under Rule 429."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429NbOfUnsoldScties": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429NbOfUnsoldScties",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Number Of Unsold Securities",
        "terseLabel": "Amount of Securities Previously Registered",
        "documentation": "The number of securities registered on the prior registration statement that are carried forward under Rule 429."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429PrspctsNote": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429PrspctsNote",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Prospectus Note",
        "terseLabel": "Combined Prospectus Note"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Rule429SctyTitl": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429SctyTitl",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Security Title",
        "terseLabel": "Security Class Title"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Rule429SctyTp": {
     "xbrltype": "securityTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429SctyTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Security Type",
        "terseLabel": "Security Type"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Rule457aFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457aFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(a) [Flag]",
        "terseLabel": "Rule 457(a)",
        "documentation": "Checkbox indicating whether filer is using Rule 457(a) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "ffd_Rule457bOffsetFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457bOffsetFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(b) Offset [Flag]",
        "terseLabel": "Rule 457(b) Offset",
        "documentation": "Checkbox indicating whether filer is claiming an offset under Rule 457(b) or 0-11(a)(2)."
       }
      }
     },
     "auth_ref": [
      "r5"
     ]
    },
    "ffd_Rule457fFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457fFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(f) [Flag]",
        "terseLabel": "Rule 457(f)",
        "documentation": "Checkbox indicating whether filer is using Rule 457(f) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "ffd_Rule457oFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457oFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(o) [Flag]",
        "terseLabel": "Rule 457(o)",
        "documentation": "Checkbox indicating whether filer is using Rule 457(o) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "ffd_Rule457pOffsetFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457pOffsetFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(p) Offset [Flag]",
        "terseLabel": "Rule 457(p) Offset",
        "documentation": "Checkbox indicating whether filer is claiming an offset under Rule 457(p)."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "ffd_Rule457rFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457rFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(r) [Flag]",
        "terseLabel": "Rule 457(r)"
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "ffd_Rule457sFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457sFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(s) Flag",
        "terseLabel": "Rule 457(s)"
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "ffd_Rule457uFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457uFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(u) [Flag]",
        "terseLabel": "Rule 457(u)",
        "documentation": "Checkbox indicating whether filer is using Rule 457(u) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r11"
     ]
    },
    "ffd_Scties424iAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Scties424iAxis",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities, 424I [Axis]",
        "terseLabel": "Securities, 424I"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Scties424iLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Scties424iLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities, 424I [Line Items]",
        "terseLabel": "Securities, 424I:"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Scties424iTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Scties424iTable",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities, 424I [Table]",
        "terseLabel": "Securities, 424I Table"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Securities424iTableNa": {
     "xbrltype": "naItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Securities424iNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities 424I [N/A]",
        "terseLabel": "Securities 424I N/A"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_SubmissionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "SubmissionLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Submission [Line Items]",
        "terseLabel": "Items"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_SubmissnTp": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "SubmissnTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Submission Type",
        "terseLabel": "Submission Type"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_TermntnCmpltnWdrwl": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TermntnCmpltnWdrwl",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Termination / Completion / Withdrawal Statement",
        "terseLabel": "Termination / Withdrawal Statement"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_TtlFeeAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlFeeAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Fee Amount",
        "terseLabel": "Total Fee Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlFeeAndIntrstAmt": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlFeeAndIntrstAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Fee and Interest Amount",
        "terseLabel": "Total Fee and Interest Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlOfferingAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlOfferingAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Offering Amount",
        "terseLabel": "Total Offering"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlOffsetAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlOffsetAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Offset Amount",
        "terseLabel": "Total Offset Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlPrevslyPdAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlPrevslyPdAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Previously Paid Amount",
        "terseLabel": "Previously Paid Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlTxValtn": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlTxValtn",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Transaction Valuation",
        "terseLabel": "Total Transaction Valuation"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TxValtn": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TxValtn",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Transaction Valuation",
        "terseLabel": "Transaction Valuation"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_ValSctiesRcvd": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "ValSctiesRcvd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Value of Securities Received",
        "terseLabel": "Value of Securities Received",
        "documentation": "Value of securities to be received by the registrant (or cancelled upon issuance of securities to be registered on the form)"
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "ffd_ValSctiesRcvdPerShr": {
     "xbrltype": "nonNegativeDecimal4lItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "ValSctiesRcvdPerShr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Value of Securities Received, Per Share",
        "terseLabel": "Value of Securities Received, Per Share",
        "documentation": "Value per share of securities to be received by the registrant (or cancelled upon issuance of securities to be registered on the form). This is included in the explanation of 457(f) fee calculation."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r1": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230"
  },
  "r2": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "415",
   "Subsection": "a"
  },
  "r3": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "429"
  },
  "r4": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457"
  },
  "r5": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "b"
  },
  "r6": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "f"
  },
  "r7": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "o"
  },
  "r8": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "p"
  },
  "r9": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "r"
  },
  "r10": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "s"
  },
  "r11": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "u"
  },
  "r12": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Subsection": "f",
   "Section": "457"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>16
<FILENAME>0001683168-26-005405-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001683168-26-005405-xbrl.zip
M4$L#!!0    ( ,&CZ5R>\).3#0P  #)$   0    <V]N;VUA7V5X,3 W+FAT
M;>T;:7/:2/9[?D6O9G:25'%(XC!@FRWL& \3&WM\Q![75J4:J8%>ZQIU8R"_
M?M_3A<!@P 8[F\W4E(/4K]_9[^C7K;U_C6R+/#!?<-?9?Z_EU/>$.89K<J>W
M_[YQ>=AJO?]7_=W>/[)9<L5LSZ*2D0_&1Z*K>C$+?TJD[3[0H>O?BPPY.3DD
MV6P$WN3,,FODDLE=TJ8VJY&&Q:EH<HM=C3VV2[Y0:P!OFZYO"_*%L^%N0@+>
M,D:.1GW>X?+?J=^DV<B-3/$4E7- T 6<"8&$P312<F1RZ?H %,I>(UJN2)_"
M>^@ZTG>M!.V7XR_2.![US>/K<NNP?W]W<]<W;T;JYS_A?[OY[>[RX+BCE]0S
M?G!-;S3+&!^<W=T:O6N[*O^Z*8I6\\+KW'SY=G)X<'5W^X=WUX-Y>G-H'EL/
M'7YP16\]ZXPW1J?.@?KI3^_ZKYL_!."\IK<7^.]D_'9JO'5WT[QO-=L>LX&O
M3_VAV5 _?SEN\L[Q=>]/NWK/TG-_/U"?DOGT4RF1EQ4UU: JU;1"I=0I532U
MJ)4*K-2M%$MF92?275_">H(UY8A]I2^E5\OGA\-A;EC(N7XOKU6KU?P(8900
MJ#:RN'._&!1'$]"Y*'55U?*WIR>71I_9-,L=(:ECL&12Q[?XU#Q\$\\LY.?!
MFY,):>!R/AR,0;EPB[JV\Q3R$"*9,%H$JR$C("N[/;@XF8#+^? 3T+STJ2-P
MM5,)BQ@QE;*JGM7+*219P8PI1/"<Z[D/2_%4L@4MQO/(3-.2XG"'BD2-)IO1
M84P3!O(8-F+ ;M><#P@#(2 N*D;-^CM"]B27%JM#"('PE/;FO7PX@C VDY0@
MQBS[>\ ?]A5T7.;(+$8=A1CAT[XBV4CF@Z68#^;E0RI['=<<$R''%MM7N@ ,
MD4'U)+GB-A.DS8;DPK6IDPE?9,!;?-X%)M_MF?PAGF=R 7%L7"..ZS E0,]'
M-23 ?'R*GKEI,B=\#M\ >'M@ T:#.." P$#7K%T..C87PKGR(NY'\H)U]Q7C
MJ\\\UY<*X:##+F-?P164^F6VLI>?PK64 F@R4N0J-'2E?G2;;;9.6NUCTCPZ
MNER''-B_=N2 M<:'8 6?6BW'9*//;+R<;D&IJR!AH;RC5@KKBGCNLP=AC<_-
MIM6;)>5VNP#M]+[":@]]8%\!OZEU7-=BU.E2"Q?VA)&B4@>-"2)=TF'DG')S
M*]SHJW%3>C$W9Q'%*]JQ6)LNLL1(U!QN@>/X@RD&RDK]&10%DTOH32CL*/5V
MOK&(2'[&E9"JST D*&282, P1-5$D"6 $ E22ZWO(TV,%F)1 ,(?0:63&PE3
MB>9)B"7[BN!0KK P?B2LS)(.V1'NP$]S$^2E6B1X(.K4.HSA$D@6^,SD=3+
M31SJ<N:30#@V-]0?MCY/>\_LY#F8!>O9,)P>B<9,'BC /&5V!^B:$ F=H("<
M6DZ-$1>P--#C,<^TW;JVET\][>4?XYHAEE_(23PTJY>(=P\X<,UY0DGJRT]0
M8M;!I.6LN@-I+B&3C#V>QQQSP:QX9 YSLUS$[R.SK[88]!]T,>@_%\/*BR$*
MB6^[$'X\)0\<'FKX^O+38^7:C(J!S^I1%5\#H!A=//2(#F)<1,2#&8NI1/S#
MSQ<1$7T*R689F1!J/4+YQWDL3+U)50L.S1^P$O:FZ^>.:YE$TY<5T;O$IGZ/
M.UGI>C4"-7?RHN-*Z=JU ,<N04-FJ<5[L&GW>:\/?G$TRDXV!2"7MTTNRK-,
M&. 2S%?JAXV3P^N3QE7KK$W.FF12(9.KQL$)ULEOP]?BNA_*RU4J_LK<7<66
MQ7EL["?EF6PL+EB/"]S02FQB+)>N"M*=M<].&^3\]\;%:>/PZ/JJ!;:\S)!6
M^S"WCMC:<K$[K@_N$HI][-,Q*< <TQU *;Q+/&IBYRT<76#/Y9HK>N 207%-
MM!IR8HU)J!0H3$U@Q!CX7/+$460 :C#+BNCO*ZH2/ N/&O'SFEOB1%+#M2SJ
M"0;\1[]VR9";LH]8U'_B_E[Z:>Q9P;\!=&#^!^9+;E K5D$HXGRU!'.'#"-"
M:(]PXRW-&'E,M0Q$?_M%*ZN[>WEI+@!:!::R(40[&\)3W91@ZJ80K0!3>D5:
M&Q/L-9F>L2K\\1?Y3&7C/A,Y<1Q:#BQJW!,,<\*U.$!'P61,L+LV1X8XHB51
M'6/30HE7IG9H42$@WDAK^T3;KL10N64JV,T\I)8QL((6[%['S]?)Q> 5Y&O8
M[L"1J0R1PC$'*T1Q2 NPO=.552F<^Z[G"D@]IW3$[8%-XEUA*.4YI%5&SF&O
M<NT$O=S-4H^)-GH]G_7P "LF'U)^%=-> -V-2Q99SNV2N.;!I8,U\-)(,3>[
M0D4Q'28LUI7*0I9_OMGLFT?V6LL^2=;H<\FR6+DQ/'\8^M1[8@L0N\*E(<>/
MMP+ISGA2,&LJ;+C^'D 8?EP:/R7I:CQ 2%^-"PTV7*YMPWJ_E*YQGX'BV2</
M>%9)?E5SV-4@'K8_<*N;(5R( 02@@0,.162?D4O7@:*5G,.P#:H:!(J&XK7E
M&#FBJUJ9A#+B"VQY/# \67;6$CDVR;Q-S ?MX[/G/G60(\YDW\>\L?Y!QTQC
M7].5.B!C_HMECG;I$=M-GQI!G)KPW; E&!]V)!#'3(5@WR%@.>IF$),9W ;S
M!!N1-.?.P#9=&0VOMFX*2ETK%C)5O1C+%3.T9/W^^E(I(1'%2QT3#R0\7/$I
M<;$-E9*UU6Z^6-HB2)O3]#<0%=*M3(N[73E+(&=9RVC58JY264_:%3QMCH3@
M:IC34U(%_;T-BU56ZF$L*U2TU[8A2 A^N5VS[2AU7<_IY?FR?<<)44]+47FK
MA#C%176K"5$O;CLAZF^8$.>?M<\D1%W]41)B>MWH4$A5JIEJZ2V2Q&ODPREA
M]1\W'T[)B56.JF9VBN7<NH7.=Y8/I\0J_GCY<$H^+&,*N>H"V9[:T!?7WM#/
MMB(WU876-]4<W12>3;7I-X7G561_NG<T.8+9 (Y-Z>5_6.875JI)[T^;-/_F
MQ*8K5U)KTKT,VW^BMN6X=R6MY!8/QK\EYZEX]WCUH#@53.LZ;.&JQ6<DZ&>]
M>:XVXD2P3!$[SU=$H9S3=K:R*5IKJ6'G.KRKN6R5;>W-JKWP9SOT,WP!]+'2
M J@\?P%@E?.6]F\S&5C_TX!]EY:?W)I0YD:X)9/6-#MH8U6GKV[3Z?/!58U%
MUT\J(%[#Y]3*D-^9]<!P563()75$-KJ2 <9W?9"WU_E04C.:JF7T4NGC\ALE
M:OK\:^'UE\IZEW[*\^\P*?6O*_\7G!^^2Q(BGM1^$!^W>ZUEI6M8"R^X+'76
M_PR$Y-WQHB*]M. &7'R<,*>J I7FG\AX"<&E[2A4KT*8,"A>?M=6ZO 55*5^
M/O#%@#H2/U' 1@PI:N5TXRFYCT0:1G":J54+A0RA@@ + &9FYL#A.RZ(GS[X
M%!)VH'@YF(#WN< >?MA(J#,FN  0!'*:F*"1?2K!?&/\<"+@GIG$]>/6&'=0
M0(>%P6#(93] );"Y1H1G<> A?##Y ]Z9!3Y]!LKAD#KYMY E0(>37&P;$<%M
M;E&0&K^VBH(, [J&!')(P!U(1,&X%^@!R M '$J7(<,^-_HP+@:6%,@>=>"O
MX3,J&#ZBDB# X"ULF(Q/DZMPO_U2T;6=74& !'[QAOX0M@(% J<;ASG2<A*%
M98@WQWKX!>@B ZYC&.#:9)+Y-G?P7)XFY]D<VPU,R/BSEI1U!(::-%,O.,V#
M4"T,GW< ,]B'<2<71)3@SQ&X!<1M& **S!IC'"?&Y(9&K.,I06'-/U*8(,72
M#FH,M$X^]#^"JSZA//R*#N0,K4E!3[3'8E)]\/4 B^4.B8=W%T3 U0)3IXV*
M&/\8.(SHY0QV<\N!?X7I:T*O385)_R:'X1HFI]2_9S*EDPOF@55 @2*U=HR0
M3.@*@4L-09>X@@!Q9)\ FM !+'&??X/WW<C/\-O+E#8 I8<.!_;QT#YI7:)<
MNKK+0"<]GS$G>-9V01'N \<O#D3L!#@U1ZYCK. =$YC,C)M$<BQB+?8ODW3&
M)#HW3&1W2 .L8!$M5&E*47,[Q&$2AT \2>/_7SE*_WYR5+KK5M!^YJB?.>IG
MCOJ9HWZ '!4>Y6TN1<&F$[^(Q\TG?BQ?_R]02P$"% ,4    " #!H^E<GO"3
MDPT,   R1   $               @ $     <V]N;VUA7V5X,3 W+FAT;5!+
4!08      0 ! #X    [#      !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>sonoma_ex107_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2025"
  xmlns:ffd="http://xbrl.sec.gov/ffd/2025"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef
      xlink:href="https://xbrl.sec.gov/ffd/2025/ffd-2025.xsd"
      xlink:type="simple"/>
    <context id="c_offering_1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001367083</identifier>
            <segment>
                <xbrldi:typedMember dimension="ffd:OfferingAxis">
                    <dei:lineNo>1</dei:lineNo>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-07-08</startDate>
            <endDate>2026-07-08</endDate>
        </period>
    </context>
    <context id="c_offering_2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001367083</identifier>
            <segment>
                <xbrldi:typedMember dimension="ffd:OfferingAxis">
                    <dei:lineNo>2</dei:lineNo>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-07-08</startDate>
            <endDate>2026-07-08</endDate>
        </period>
    </context>
    <context id="c_report">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001367083</identifier>
        </entity>
        <period>
            <startDate>2026-07-08</startDate>
            <endDate>2026-07-08</endDate>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="pure">
        <measure>pure</measure>
    </unit>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <ffd:SubmissnTp contextRef="c_report" id="fee_001">S-8</ffd:SubmissnTp>
    <ffd:FeeExhibitTp contextRef="c_report" id="fee_002">EX-FILING FEES</ffd:FeeExhibitTp>
    <dei:EntityCentralIndexKey contextRef="c_report" id="fee_003">0001367083</dei:EntityCentralIndexKey>
    <ffd:PrevslyPdFlg contextRef="c_offering_1" id="fee_004">false</ffd:PrevslyPdFlg>
    <ffd:PrevslyPdFlg contextRef="c_offering_2" id="fee_005">false</ffd:PrevslyPdFlg>
    <ffd:OfferingTableNa contextRef="c_report" id="fee_006" xsi:nil="true"/>
    <ffd:OffsetTableNa contextRef="c_report" id="fee_007">N/A</ffd:OffsetTableNa>
    <ffd:FormTp contextRef="c_report" id="fee_008">S-8</ffd:FormTp>
    <dei:EntityRegistrantName contextRef="c_report" id="fee_009">SONOMA PHARMACEUTICALS, INC.</dei:EntityRegistrantName>
    <ffd:OfferingSctyTp contextRef="c_offering_1" id="fee_010">Equity</ffd:OfferingSctyTp>
    <ffd:OfferingSctyTitl contextRef="c_offering_1" id="fee_011">Common Stock, par value $0.0001 per share, issued under the Sonoma Pharmaceuticals, Inc. 2016 Equity Incentive Plan</ffd:OfferingSctyTitl>
    <ffd:FeesOthrRuleFlg contextRef="c_offering_1" id="fee_012">true</ffd:FeesOthrRuleFlg>
    <ffd:AmtSctiesRegd
      contextRef="c_offering_1"
      decimals="0"
      id="fee_013"
      unitRef="shares">143924</ffd:AmtSctiesRegd>
    <ffd:MaxOfferingPricPerScty
      contextRef="c_offering_1"
      decimals="INF"
      id="fee_014"
      unitRef="USD">1.12</ffd:MaxOfferingPricPerScty>
    <ffd:MaxAggtOfferingPric
      contextRef="c_offering_1"
      decimals="INF"
      id="fee_015"
      unitRef="USD">161194.88</ffd:MaxAggtOfferingPric>
    <ffd:FeeRate
      contextRef="c_offering_1"
      decimals="INF"
      id="fee_016"
      unitRef="pure">0.0001381</ffd:FeeRate>
    <ffd:FeeAmt
      contextRef="c_offering_1"
      decimals="INF"
      id="fee_017"
      unitRef="USD">22.26</ffd:FeeAmt>
    <ffd:OfferingSctyTp contextRef="c_offering_2" id="fee_018">Equity</ffd:OfferingSctyTp>
    <ffd:OfferingSctyTitl contextRef="c_offering_2" id="fee_019">Common Stock, par value $0.0001 per share, issued under the Sonoma Pharmaceuticals, Inc. 2024 Equity Incentive Plan</ffd:OfferingSctyTitl>
    <ffd:FeesOthrRuleFlg contextRef="c_offering_2" id="fee_020">true</ffd:FeesOthrRuleFlg>
    <ffd:AmtSctiesRegd
      contextRef="c_offering_2"
      decimals="0"
      id="fee_021"
      unitRef="shares">89952</ffd:AmtSctiesRegd>
    <ffd:MaxOfferingPricPerScty
      contextRef="c_offering_2"
      decimals="INF"
      id="fee_022"
      unitRef="USD">1.12</ffd:MaxOfferingPricPerScty>
    <ffd:MaxAggtOfferingPric
      contextRef="c_offering_2"
      decimals="INF"
      id="fee_023"
      unitRef="USD">100746.24</ffd:MaxAggtOfferingPric>
    <ffd:FeeRate
      contextRef="c_offering_2"
      decimals="INF"
      id="fee_024"
      unitRef="pure">0.0001381</ffd:FeeRate>
    <ffd:FeeAmt
      contextRef="c_offering_2"
      decimals="INF"
      id="fee_025"
      unitRef="USD">13.91</ffd:FeeAmt>
    <ffd:TtlOfferingAmt
      contextRef="c_report"
      decimals="INF"
      id="fee_026"
      unitRef="USD">261941.12</ffd:TtlOfferingAmt>
    <ffd:TtlFeeAmt
      contextRef="c_report"
      decimals="INF"
      id="fee_027"
      unitRef="USD">36.17</ffd:TtlFeeAmt>
    <ffd:TtlOffsetAmt
      contextRef="c_report"
      decimals="INF"
      id="fee_028"
      unitRef="USD">0.00</ffd:TtlOffsetAmt>
    <ffd:NetFeeAmt
      contextRef="c_report"
      decimals="INF"
      id="fee_029"
      unitRef="USD">36.17</ffd:NetFeeAmt>
    <ffd:OfferingNote contextRef="c_offering_1" id="fee_030">Pursuant to Rule 416 under the Securities Act of 1933, as amended, the Securities Act, this registration statement also covers any additional securities that may be offered or issued in connection with any stock split, stock dividend, recapitalization or any other similar transaction effected without receipt of consideration, which results in an increase in the number of the Registrant&#x2019;s outstanding shares of Common Stock. In addition, pursuant to Rule 416(c) under the Securities Act, this registration statement also covers an indeterminate amount of interests to be offered or sold pursuant to the Sonoma Pharmaceuticals, Inc. 2016 Equity Incentive Plan described herein.&lt;br/&gt;&lt;br/&gt;Estimated solely for calculation of the registration fee pursuant to Rules 457(c) and (h)(1) under the Securities Act, based on the average of the high and low prices for the Registrant&#x2019;s Common Stock on June 26, 2026, as reported on the Nasdaq Capital Market.&lt;br/&gt;&lt;br/&gt;Represents shares of common stock that were added to the share authorized for issuance under the respective plan pursuant to &#x201c;evergreen&#x201d; provisions in the plan. Under these provisions, the number of shares authorized for issuance increased by 143,924 shares on April 1, 2026.&lt;br/&gt;&lt;br/&gt;</ffd:OfferingNote>
    <ffd:OfferingNote contextRef="c_offering_2" id="fee_031">Pursuant to Rule 416 under the Securities Act of 1933, as amended, the Securities Act, this registration statement also covers any additional securities that may be offered or issued in connection with any stock split, stock dividend, recapitalization or any other similar transaction effected without receipt of consideration, which results in an increase in the number of the Registrant&#x2019;s outstanding shares of Common Stock. In addition, pursuant to Rule 416(c) under the Securities Act, this registration statement also covers an indeterminate amount of interests to be offered or sold pursuant to the Sonoma Pharmaceuticals, Inc. 2016 Equity Incentive Plan described herein.&lt;br/&gt;&lt;br/&gt;Estimated solely for calculation of the registration fee pursuant to Rules 457(c) and (h)(1) under the Securities Act, based on the average of the high and low prices for the Registrant&#x2019;s Common Stock on June 26, 2026, as reported on the Nasdaq Capital Market.&lt;br/&gt;&lt;br/&gt;Represents shares of common stock that were added to the share authorized for issuance under the respective plan pursuant to &#x201c;evergreen&#x201d; provisions in the plan. Under these provisions, the number of shares authorized for issuance increased by 89,952 shares on April 1, 2026.&lt;br/&gt;&lt;br/&gt;</ffd:OfferingNote>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
