This is an automated email from the ASF dual-hosted git repository.

solomax pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openmeetings.git


The following commit(s) were added to refs/heads/master by this push:
     new 72e8a285c [OPENMEETINGS-2804] initial version of dark mode
72e8a285c is described below

commit 72e8a285c5eca2007660b6255d3509a8f127a2cd
Author: Maxim Solodovnik <[email protected]>
AuthorDate: Tue Nov 4 12:23:54 2025 +0700

    [OPENMEETINGS-2804] initial version of dark mode
---
 CONTRIBUTING.md                                    |   2 +-
 README.md                                          |   2 +-
 openmeetings-core/src/site/site.xml                |   3 +-
 openmeetings-db/src/site/site.xml                  |   3 +-
 openmeetings-install/src/site/site.xml             |   3 +-
 openmeetings-screenshare/src/site/site.xml         |   3 +-
 .../src/site/markdown/LogoAndIcons.md              |   2 +-
 .../src/site/resources/css/netcalc.css             |  11 +-
 .../src/site/resources/css/site.css                |  15 ++-
 .../src/site/resources/images/logo.png             | Bin 12649 -> 0 bytes
 openmeetings-server/src/site/xdoc/CallForLogo.xml  |   2 +-
 openmeetings-service/src/site/site.xml             |   3 +-
 openmeetings-util/src/site/site.xml                |   3 +-
 .../src/main/front/src/css/_activities.scss        |   4 +-
 openmeetings-web/src/main/front/src/css/_chat.scss |  16 +--
 .../src/main/front/src/css/_cssemoticons.scss      |   4 +-
 .../src/main/front/src/css/_general.scss           | 123 ++++++++++++++-------
 .../src/main/front/src/css/_interview.scss         |   6 +-
 .../src/main/front/src/css/_nettest.scss           |  17 ---
 .../src/main/front/src/css/_polls.scss             |   2 +-
 openmeetings-web/src/main/front/src/css/_room.scss |  63 ++++++-----
 .../src/main/front/src/css/_signin.scss            |   2 +-
 openmeetings-web/src/main/front/src/css/_tree.scss |  14 +--
 openmeetings-web/src/main/front/src/css/_wb.scss   |  28 ++---
 openmeetings-web/src/main/front/src/main/index.js  |   2 +
 .../openmeetings/web/common/FormActionsPanel.html  |   2 +-
 .../openmeetings/web/common/menu/MenuPanel.java    |   2 +
 .../openmeetings/web/common/tree/FolderPanel.java  |   5 +-
 .../apache/openmeetings/web/pages/BasePage.html    |   2 +-
 .../org/apache/openmeetings/web/pages/loader.css   |   2 +-
 .../apache/openmeetings/web/room/NetTestPanel.html |   8 +-
 .../web/room/activities/ActivitiesPanel.html       |  12 +-
 .../web/room/activities/ActivitiesPanel.java       |   2 +-
 .../apache/openmeetings/web/room/raw-nettest.js    |   4 +-
 .../apache/openmeetings/web/room/wb/WbPanel.html   |   4 +-
 .../apache/openmeetings/web/user/chat/Chat.html    |   2 +-
 .../openmeetings/web/user/chat/ChatPanel.html      |   2 +-
 .../openmeetings/web/user/chat/ChatToolbar.html    |   2 +-
 .../web/user/profile/MessagesContactsPanel.html    |   2 +-
 .../web/user/profile/UserSearchPanel.html          |   2 +-
 .../src/main/webapp/css/images/logo.png            | Bin 3428 -> 0 bytes
 openmeetings-web/src/site/site.xml                 |   3 +-
 .../apache/openmeetings/ws/TestUserService.java    |   2 +-
 openmeetings-webservice/src/site/site.xml          |   3 +-
 src/site/site.xml                                  |   5 +-
 45 files changed, 225 insertions(+), 174 deletions(-)

diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 087905ffa..fb8376b04 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,7 +1,7 @@
 <!--
 # Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0 -->
 
-![About Openmeetings 
Logo](/openmeetings-server/src/site/resources/images/logo.png)
+![About Openmeetings 
Logo](/openmeetings-server/src/site/resources/images/logo.svg)
 
 How to get involved
 ===============
diff --git a/README.md b/README.md
index e60e5ab72..d97e604c8 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
 ## Apache OpenMeetings
 
-![About Openmeetings 
Logo](/openmeetings-server/src/site/resources/images/logo.png)
+![About Openmeetings 
Logo](/openmeetings-server/src/site/resources/images/logo.svg)
 
 [Apache OpenMeetings](https://openmeetings.apache.org) provides:
  - [x] **video conferencing**
diff --git a/openmeetings-core/src/site/site.xml 
b/openmeetings-core/src/site/site.xml
index 0b1eb89c0..8f2676ccb 100644
--- a/openmeetings-core/src/site/site.xml
+++ b/openmeetings-core/src/site/site.xml
@@ -12,7 +12,8 @@
    See the License for the specific language governing permissions and
    limitations under the License.
  -->
-<project xmlns="http://maven.apache.org/DECORATION/1.8.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+<project xmlns="http://maven.apache.org/DECORATION/1.8.0";
+               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
                xsi:schemaLocation="http://maven.apache.org/DECORATION/1.8.0 
http://maven.apache.org/xsd/decoration-1.8.0.xsd";
                name="Apache OpenMeetings Project">
        <body>
diff --git a/openmeetings-db/src/site/site.xml 
b/openmeetings-db/src/site/site.xml
index 0b1eb89c0..8f2676ccb 100644
--- a/openmeetings-db/src/site/site.xml
+++ b/openmeetings-db/src/site/site.xml
@@ -12,7 +12,8 @@
    See the License for the specific language governing permissions and
    limitations under the License.
  -->
-<project xmlns="http://maven.apache.org/DECORATION/1.8.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+<project xmlns="http://maven.apache.org/DECORATION/1.8.0";
+               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
                xsi:schemaLocation="http://maven.apache.org/DECORATION/1.8.0 
http://maven.apache.org/xsd/decoration-1.8.0.xsd";
                name="Apache OpenMeetings Project">
        <body>
diff --git a/openmeetings-install/src/site/site.xml 
b/openmeetings-install/src/site/site.xml
index c7da49860..9305f6c42 100644
--- a/openmeetings-install/src/site/site.xml
+++ b/openmeetings-install/src/site/site.xml
@@ -12,7 +12,8 @@
    See the License for the specific language governing permissions and
    limitations under the License.
  -->
-<project xmlns="http://maven.apache.org/DECORATION/1.8.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+<project xmlns="http://maven.apache.org/DECORATION/1.8.0";
+               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
                xsi:schemaLocation="http://maven.apache.org/DECORATION/1.8.0 
http://maven.apache.org/xsd/decoration-1.8.0.xsd";
                name="Apache OpenMeetings Project">
        <body>
diff --git a/openmeetings-screenshare/src/site/site.xml 
b/openmeetings-screenshare/src/site/site.xml
index c7da49860..9305f6c42 100644
--- a/openmeetings-screenshare/src/site/site.xml
+++ b/openmeetings-screenshare/src/site/site.xml
@@ -12,7 +12,8 @@
    See the License for the specific language governing permissions and
    limitations under the License.
  -->
-<project xmlns="http://maven.apache.org/DECORATION/1.8.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+<project xmlns="http://maven.apache.org/DECORATION/1.8.0";
+               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
                xsi:schemaLocation="http://maven.apache.org/DECORATION/1.8.0 
http://maven.apache.org/xsd/decoration-1.8.0.xsd";
                name="Apache OpenMeetings Project">
        <body>
diff --git a/openmeetings-server/src/site/markdown/LogoAndIcons.md 
b/openmeetings-server/src/site/markdown/LogoAndIcons.md
index 926f722ac..94a0c2060 100644
--- a/openmeetings-server/src/site/markdown/LogoAndIcons.md
+++ b/openmeetings-server/src/site/markdown/LogoAndIcons.md
@@ -7,7 +7,7 @@ Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache
 If you want to set up your logo in Openmeetings header you can do the 
following:
 
 1. Create your logo image as PNG 40px height
-2. Replace `/opt/om/webapps/openmeetings/css/images/logo.png` with your logo 
file
+2. Replace `/opt/om/webapps/openmeetings/css/images/logo.svg` with your logo 
file
 
 # Customize OpenMeetings mobile icons
 
diff --git a/openmeetings-server/src/site/resources/css/netcalc.css 
b/openmeetings-server/src/site/resources/css/netcalc.css
index 752e20c11..97fee3727 100644
--- a/openmeetings-server/src/site/resources/css/netcalc.css
+++ b/openmeetings-server/src/site/resources/css/netcalc.css
@@ -39,7 +39,7 @@
 .result-area {
        text-align: left;
        font-size: 14pt;
-       padding-left: 30px;
+       padding-inline-start: 30px;
 }
 .result-area #bandwidth {
        padding-top: 0px;
@@ -78,14 +78,7 @@ input#submitbtn {
        background: #47b2e8;
        color: #000;
        font-size: 14pt;
-       -moz-border-radius-topleft: 3px;
-       -moz-border-radius-topright: 3px;
-       -moz-border-radius-bottomleft: 3px;
-       -moz-border-radius-bottomright: 3px;
-       -webkit-border-top-left-radius: 3px;
-       -webkit-border-top-right-radius: 3px;
-       -webkit-border-bottom-right-radius: 3px;
-       -webkit-border-bottom-left-radius: 3px;
+       border-radius: 3px;
 }
 p {
        font-size: 9pt;
diff --git a/openmeetings-server/src/site/resources/css/site.css 
b/openmeetings-server/src/site/resources/css/site.css
index c97c559b7..e312a7bd2 100644
--- a/openmeetings-server/src/site/resources/css/site.css
+++ b/openmeetings-server/src/site/resources/css/site.css
@@ -41,7 +41,7 @@ iframe {
        height: 130px;
        width: 130px;
        top: 37px;
-       left: 37px;
+       inset-inline-start: 37px;
 }
 .example-image-link {
        display: block;
@@ -62,7 +62,7 @@ iframe {
 }
 .install-steps .step {
        background-repeat: no-repeat;
-       padding-left: 40px;
+       padding-inline-start: 40px;
 }
 .install-steps .step.unpack {
        background-image: url(../images/box_open.png);
@@ -112,10 +112,19 @@ iframe {
        display: inline-block;
        position: absolute;
        top: 10px;
-       right: 20px;
+       inset-inline-end: 20px;
        font-weight: bold;
        color: var(--info);
 }
 .grid-striped .row:nth-of-type(odd) {
        background-color: rgba(0,0,0,.05);
 }
+/**
+ * commented for now
+ **
+@media (prefers-color-scheme: dark) {
+       .bannerLeft img {
+               content:url("../images/logo-dark.svg");
+       }
+}
+*/
diff --git a/openmeetings-server/src/site/resources/images/logo.png 
b/openmeetings-server/src/site/resources/images/logo.png
deleted file mode 100644
index 657e7f8f5..000000000
Binary files a/openmeetings-server/src/site/resources/images/logo.png and 
/dev/null differ
diff --git a/openmeetings-server/src/site/xdoc/CallForLogo.xml 
b/openmeetings-server/src/site/xdoc/CallForLogo.xml
index 7a15cf032..d3cf32f62 100644
--- a/openmeetings-server/src/site/xdoc/CallForLogo.xml
+++ b/openmeetings-server/src/site/xdoc/CallForLogo.xml
@@ -50,7 +50,7 @@
                                <li>
                                        <table>
                                                <tr>
-                                                       <td><img 
class="logo-big" src="images/logo.png" alt="Apache OpenMeetings"/></td>
+                                                       <td><img 
class="logo-big" src="images/logo.svg" alt="Apache OpenMeetings"/></td>
                                                        <td><span class="btn 
btn-primary btn-logo-big">Apply</span></td>
                                                </tr>
                                                <tr>
diff --git a/openmeetings-service/src/site/site.xml 
b/openmeetings-service/src/site/site.xml
index 0b1eb89c0..8f2676ccb 100644
--- a/openmeetings-service/src/site/site.xml
+++ b/openmeetings-service/src/site/site.xml
@@ -12,7 +12,8 @@
    See the License for the specific language governing permissions and
    limitations under the License.
  -->
-<project xmlns="http://maven.apache.org/DECORATION/1.8.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+<project xmlns="http://maven.apache.org/DECORATION/1.8.0";
+               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
                xsi:schemaLocation="http://maven.apache.org/DECORATION/1.8.0 
http://maven.apache.org/xsd/decoration-1.8.0.xsd";
                name="Apache OpenMeetings Project">
        <body>
diff --git a/openmeetings-util/src/site/site.xml 
b/openmeetings-util/src/site/site.xml
index 0b1eb89c0..8f2676ccb 100644
--- a/openmeetings-util/src/site/site.xml
+++ b/openmeetings-util/src/site/site.xml
@@ -12,7 +12,8 @@
    See the License for the specific language governing permissions and
    limitations under the License.
  -->
-<project xmlns="http://maven.apache.org/DECORATION/1.8.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+<project xmlns="http://maven.apache.org/DECORATION/1.8.0";
+               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
                xsi:schemaLocation="http://maven.apache.org/DECORATION/1.8.0 
http://maven.apache.org/xsd/decoration-1.8.0.xsd";
                name="Apache OpenMeetings Project">
        <body>
diff --git a/openmeetings-web/src/main/front/src/css/_activities.scss 
b/openmeetings-web/src/main/front/src/css/_activities.scss
index e7476d980..ce6b5aa6a 100644
--- a/openmeetings-web/src/main/front/src/css/_activities.scss
+++ b/openmeetings-web/src/main/front/src/css/_activities.scss
@@ -16,8 +16,8 @@
                }
        }
        .ctrl {
-               padding-left: 20px;
-               padding-right: 20px;
+               padding-inline-start: 20px;
+               padding-inline-end: 20px;
        }
        .area {
                height: calc(100% - 46px);
diff --git a/openmeetings-web/src/main/front/src/css/_chat.scss 
b/openmeetings-web/src/main/front/src/css/_chat.scss
index bbdea48e3..19bb775cd 100644
--- a/openmeetings-web/src/main/front/src/css/_chat.scss
+++ b/openmeetings-web/src/main/front/src/css/_chat.scss
@@ -93,8 +93,8 @@
                        }
                }
                .from {
-                       margin-left: 5px;
-                       margin-right: 5px;
+                       margin-inline-start: 5px;
+                       margin-inline-end: 5px;
                        font-weight: bold;
                }
                .date-row {
@@ -133,10 +133,10 @@
        }
        .send {
                width: 16px;
-               padding-left: 0;
-               padding-right: 0;
-               margin-right: 0;
-               margin-left: 0;
+               padding-inline-start: 0;
+               padding-inline-end: 0;
+               margin-inline-end: 0;
+               margin-inline-start: 0;
        }
        .tool-container {
                min-height: var(--chat-tools-height);
@@ -186,7 +186,7 @@
 /* room mode */
 .main.room #chatPanel {
        margin: 0 !important;
-       right: 0px;
+       inset-inline-end: 0px;
        top: var(--room-menu-height);
 
        #chat form {
@@ -213,7 +213,7 @@
                                transform-origin: -15% 68% 0;
                                position: absolute;
                                top: 0;
-                               right: -67px;
+                               inset-inline-end: -67px;
                        }
                }
        }
diff --git a/openmeetings-web/src/main/front/src/css/_cssemoticons.scss 
b/openmeetings-web/src/main/front/src/css/_cssemoticons.scss
index a3108709f..7ee020c36 100644
--- a/openmeetings-web/src/main/front/src/css/_cssemoticons.scss
+++ b/openmeetings-web/src/main/front/src/css/_cssemoticons.scss
@@ -36,12 +36,12 @@ span.css-emoticon {
 
        /* Styles for two-character emoticons that need more letter-spacing for 
proportionality */
        &.spaced-emoticon {
-               padding-left: 0.2em;
+               padding-inline-start: 0.2em;
                width: 1.34em;
                letter-spacing: 0.2em;
 
                &.small-emoticon {
-                       padding-left: 0;
+                       padding-inline-start: 0;
                        width: 1.82em;
                        letter-spacing: 0.1em;
                }
diff --git a/openmeetings-web/src/main/front/src/css/_general.scss 
b/openmeetings-web/src/main/front/src/css/_general.scss
index 1d6a978b8..9d07e321f 100644
--- a/openmeetings-web/src/main/front/src/css/_general.scss
+++ b/openmeetings-web/src/main/front/src/css/_general.scss
@@ -29,19 +29,24 @@ html, body {
 
        .logo {
                display: inline-block;
-               background-image: url(images/logo.png);
+               content: url(images/logo.svg);
                background-repeat: no-repeat;
                height: var(--header-height);
                width: 80px;
        }
 }
+@media (prefers-color-scheme: dark) {
+       #header .logo {
+               content: url(images/logo-dark.svg);
+       }
+}
 #topLinks {
        --bs-border-width: 1px;
        --bs-border-style: solid;
        --bs-border-color: black;
        span {
-               padding-right: 5px;
-               padding-left: 5px;
+               padding-inline-end: 5px;
+               padding-inline-start: 5px;
                white-space: nowrap;
        }
 }
@@ -53,6 +58,9 @@ html, body {
        font-size: 2em;
        line-height: 1.2em;
 }
+#menu .navbar {
+       background-color: var(--bs-secondary-bg-subtle) !important;
+}
 .clickable {
        cursor: pointer;
 }
@@ -245,7 +253,7 @@ table.messages {
                        i {
                                position: absolute;
                                top: 1px;
-                               left: 3px;
+                               inset-inline-start: 3px;
                        }
                }
        }
@@ -261,8 +269,8 @@ table.messages {
        display: block;
 
        &.selected {
-               border: 1px solid #cccccc;
-               background-color:var(--bs-light);
+               border: 1px solid var(--bs-highlight-color);
+               background-color: var(--bs-highlight-bg);
        }
        &.folder {
                font-weight: normal;
@@ -280,7 +288,7 @@ table.messages {
                        i {
                                top: 2px;
                                position: absolute;
-                               left: 4px;
+                               inset-inline-start: 4px;
                        }
                }
        }
@@ -423,7 +431,6 @@ table.messages {
        }
 }
 .main-container #wicketDebugBar {
-       right: initial;
        top: initial;
        z-index: 2;
        position: fixed;
@@ -483,7 +490,7 @@ table.messages {
                display: block;
                overflow-y: scroll;
                overflow-x: hidden;
-               background-color: white;
+               background-color: var(--bs-table-bg);
 
                tr {
                        width: 100%;
@@ -514,8 +521,8 @@ table.messages {
        opacity: .8;
 }
 .tableWrapper {
-       background-color: #FFFFFF;
-       border: solid 1px #aacfe4;
+       background-color: var(--bs-body-bg);
+       border: solid 1px var(--bs-border-color);
        width: 536px;
        height: 100px;
 }
@@ -523,7 +530,9 @@ table.messages {
        overflow-y: auto;
        height: 100%;
 }
-.dragbox .dragbox-header .dragbox-toggle, .dragbox .dragbox-header 
.dragbox-actions .icon, .sort-icon a {
+.dragbox .dragbox-header .dragbox-toggle,
+.dragbox .dragbox-header .dragbox-actions .icon,
+.sort-icon a {
        font-family: "Font Awesome 7 Free";
        font-weight: 900;
        display: inline-block;
@@ -535,40 +544,55 @@ table.messages {
        vertical-align: super;
        margin: 0;
 }
-.dragbox .dragbox-header {
-       .dragbox-actions .icon {
-               vertical-align: middle;
+.dashboard .dragbox {
+       background-color: var(--bs-body-bg);
+       border-color: var(--bs-border-color);
+
+       .dragbox-header {
+               background-color: var(--bs-secondary-bg-subtle);
+               border-color: var(--bs-secondary-border-subtle);
+               color: var(--bs-body-color);
+
+               .dragbox-actions .icon {
+                       vertical-align: middle;
 
-               &.refresh::before {
-                       content: "\f2f1";
+                       &.refresh::before {
+                               content: "\f2f1";
+                       }
+                       &.delete::before {
+                               content: "\f00d";
+                               color: var(--bs-danger);
+                       }
                }
-               &.delete::before {
-                       content: "\f00d";
-                       color: var(--bs-danger);
+               .dragbox-toggle {
+                       &.expanded::before {
+                               content: "\f0d7";
+                       }
+                       &.collapsed::before {
+                               content: "\f0d8";
+                       }
                }
        }
-       .dragbox-toggle {
-               &.expanded::before {
-                       content: "\f0d7";
+       .dragbox-content {
+               background-color: var(--bs-body-bg);
+
+               .tableWrapper {
+                       /* room users on dashboard */
+                       width: auto;
+                       height: 100px;
+
+                       .list-table {
+                               min-width: auto;
+                       }
                }
-               &.collapsed::before {
-                       content: "\f0d8";
+               .rooms-widget {
+                       display: flex;
                }
        }
 }
-.dragbox-content {
-       .tableWrapper {
-               /* room users on dashboard */
-               width: auto;
-               height: 100px;
-
-               .list-table {
-                       min-width: auto;
-               }
-       }
-       .rooms-widget {
-               display: flex;
-       }
+.main-container .wysiwyg-editor {
+       background-color: var(--bs-body-bg);
+       border-color: var(--bs-border-color);
 }
 .sort-icon {
        a {
@@ -675,3 +699,26 @@ table.messages {
 .overflow-break-word {
        overflow-wrap: break-word;
 }
+.om-body {
+       .select2-container--default.select2-container--focus 
.select2-selection--multiple {
+               border-color: var(--bs-border-color);
+       }
+       .select2-container--default .select2-selection--multiple {
+               background-color: var(--bs-body-bg);
+       }
+       .select2-container--default .select2-selection--multiple 
.select2-selection__choice {
+               background-color: var(--bs-secondary-bg);
+               border-color: var(--bs-secondary-border-subtle);
+       }
+       .select2-container--default 
.select2-results__option--highlighted.select2-results__option--selectable {
+               background-color: var(--bs-highlight-bg);
+               color: var(--bs-highlight-color);
+       }
+       .select2-container--default.select2-container--disabled 
.select2-selection--multiple {
+               background-color: var(--bs-secondary-bg);
+       }
+       .select2-dropdown {
+               border-color: var(--bs-border-color);
+               background-color: var(--bs-body-bg);
+       }
+}
diff --git a/openmeetings-web/src/main/front/src/css/_interview.scss 
b/openmeetings-web/src/main/front/src/css/_interview.scss
index ac98b1d61..2324e5dfd 100644
--- a/openmeetings-web/src/main/front/src/css/_interview.scss
+++ b/openmeetings-web/src/main/front/src/css/_interview.scss
@@ -8,7 +8,7 @@
                z-index: 100;
                border-radius: 30px;
                position: absolute;
-               right: 50%;
+               inset-inline-end: 50%;
                bottom: 0px;
                width: 40px;
                height: var(--rec-btn-height);
@@ -88,7 +88,7 @@
        }
        .pod-big {
                grid-area: a;
-               border: 1px solid #cccccc;
+               border: 1px solid var(--bs-secondary-border-subtle);
                border-radius: 8px;
                background-image: url(images/drop.png);
                background-repeat: no-repeat;
@@ -100,7 +100,7 @@
                }
        }
        .pod.ui-sortable-placeholder {
-               background-color: whitesmoke;
+               background-color: var(--bs-secondary-bg);
                visibility: visible !important;
        }
 }
diff --git a/openmeetings-web/src/main/front/src/css/_nettest.scss 
b/openmeetings-web/src/main/front/src/css/_nettest.scss
index d496ee00b..e667518f5 100644
--- a/openmeetings-web/src/main/front/src/css/_nettest.scss
+++ b/openmeetings-web/src/main/front/src/css/_nettest.scss
@@ -13,24 +13,7 @@
                width: 200px;
 
                button {
-                       &.not-started, &.started {
-                               color: var(--bs-secondary);
-                               border-color: var(--bs-secondary);
-                       }
-                       &:hover {
-                               color: var(--bs-white);
-                               border-color: transparent;
-                       }
-                       &.not-started:hover, &.started:hover {
-                               background-color: var(--bs-secondary);
-                       }
                        &.complete {
-                               color: var(--bs-success);
-                               border-color: var(--bs-success);
-
-                               &:hover {
-                                       background-color: var(--bs-success);
-                               }
                                i::before {
                                        content: '\f00c';
                                }
diff --git a/openmeetings-web/src/main/front/src/css/_polls.scss 
b/openmeetings-web/src/main/front/src/css/_polls.scss
index 196eab074..39bc4832e 100644
--- a/openmeetings-web/src/main/front/src/css/_polls.scss
+++ b/openmeetings-web/src/main/front/src/css/_polls.scss
@@ -41,7 +41,7 @@
 }
 .main.room.INTERVIEW #quick-vote {
        z-index: 100;
-       right: 10px;
+       inset-inline-end: 10px;
        bottom: 0;
        padding: 0px 5px 0px 5px;
        height: 40px;
diff --git a/openmeetings-web/src/main/front/src/css/_room.scss 
b/openmeetings-web/src/main/front/src/css/_room.scss
index 90c783316..7281a1a2f 100644
--- a/openmeetings-web/src/main/front/src/css/_room.scss
+++ b/openmeetings-web/src/main/front/src/css/_room.scss
@@ -16,7 +16,7 @@
                                display: inline-block;
                                width: 16px;
                                height: 16px;
-                               right: 0px;
+                               inset-inline-end: 0px;
                                bottom: 0px;
                                overflow: hidden;
                                background: none;
@@ -28,8 +28,7 @@
                                        transform: rotate(-45deg);
                                        position: absolute;
                                        top: 0;
-                                       right: 0;
-                                       right: -21px;
+                                       inset-inline-end: -21px;
                                        bottom: -16px;
                                        background: repeating-linear-gradient(
                                                var(--bs-dark), var(--bs-dark) 
3px, transparent 3px, transparent 5px
@@ -141,7 +140,7 @@
        .wait-moder {
                position: fixed;
                bottom: 30px;
-               right: 30px;
+               inset-inline-end: 30px;
 
                strong {
                        display: block;
@@ -219,6 +218,7 @@
 }
 .user-list {
        overflow-y: auto;
+       overflow-x: hidden;
        height: calc(100% - var(--room-sidebar-header-height) - 
var(--buffer-size));
 
        .user.name {
@@ -258,7 +258,7 @@
                        .video-container {
                                position: absolute;
                                top: 0;
-                               left: 0;
+                               inset-inline-start: 0;
 
                                &, .video.audio-only {
                                        width: 50px;
@@ -274,7 +274,7 @@
                }
                &.current {
                        font-weight: bold;
-                       background-color: var(--bs-light);
+                       background-color: var(--bs-secondary-bg);
                }
                .om-icon {
                        &.user-status {
@@ -293,7 +293,7 @@
                        &.audio-activity {
                                position: absolute;
                                bottom: 2px;
-                               right: 2px;
+                               inset-inline-end: 2px;
                        }
                }
        }
@@ -305,7 +305,7 @@
 
        i {
                position: absolute;
-               left: 0;
+               inset-inline-start: 0;
                animation: typing-ani 2s infinite;
                color: var(--bs-primary);
        }
@@ -315,13 +315,13 @@
 }
 @keyframes typing-ani {
        0% {
-               left: 0;
+               inset-inline-start: 0;
        }
        50% {
-               left: 10px;
+               inset-inline-start: 10px;
        }
        100% {
-               left: 0;
+               inset-inline-start: 0;
        }
 }
 .om-icon {
@@ -335,7 +335,7 @@
                height: 14px;
                min-height: 14px;
                margin-inline-end: 2px;
-               margin-left: unset;
+               margin-inline-start: unset;
        }
        &.audio-activity {
                opacity: 0.2;
@@ -393,7 +393,7 @@
                i {
                        position: absolute;
                        bottom: 1px;
-                       right: 1px;
+                       inset-inline-end: 1px;
                        font-size: .6em;
 
                        &::before {
@@ -465,8 +465,9 @@
 .user-video .ui-dialog-titlebar
 , .sharer .ui-dialog-titlebar
 , .wb-tool-settings .ui-dialog-titlebar
+, .wb-formula .ui-dialog-titlebar
 {
-       background-color: var(--bs-white);
+       background-color: var(--bs-secondary-bg-subtle);
 }
 .user-video {
        .om-icon.volume-control, .btn.btn-refresh, .btn.btn-toggle, 
.btn.btn-wclose {
@@ -491,7 +492,7 @@
                }
        }
        .buttonpane {
-               background-color: var(--bs-white);
+               background-color: var(--bs-secondary-bg);
        }
        &.ui-dialog {
                &.video.user-speaks {
@@ -526,7 +527,7 @@
                border-radius: 0;
                border: 0;
                box-shadow: initial;
-               left: 70px;
+               inset-inline-start: 70px;
                top: -50px;
                background-color: transparent;
        }
@@ -559,21 +560,32 @@
                        overflow: hidden;
                }
                .ui-dialog-titlebar {
+                       background-color: var(--bs-secondary-bg);
+                       color: var(--bs-body-color);
                        padding-inline-start: 10px;
                        border: none;
                }
        }
+       &.ui-widget.ui-widget-content {
+               border-color: var(--bs-border-color);
+               background-color: var(--bs-body-bg);
+       }
+}
+.ui-dialog .ui-dialog-titlebar-close,
+.ui-widget-content .ui-dialog-titlebar-close {
+       right: unset;
+       inset-inline-end: .3em;
+       top: 20px;
 }
-.sharer .ui-dialog-titlebar-close {
-       position: absolute;
-       top: 20px
+.ui-dialog-titlebar.ui-widget-header .ui-dialog-title {
+       float: inline-start;
 }
 .video-container {
        .level-meter {
                display: inline-block;
                position: absolute;
                bottom: 5px;
-               left: 5px;
+               inset-inline-start: 5px;
                width: 10px;
        }
        .video .level-meter {
@@ -598,7 +610,7 @@
                        display: inline-block;
                        position: absolute;
                        top: 0;
-                       left: 0;
+                       inset-inline-start: 0;
                }
                .vid-block {
                        min-width: 300px;
@@ -634,7 +646,7 @@
        .mute-others {
                position: absolute;
                top: calc(50% - 32px);
-               left: calc(50% - 32px);
+               inset-inline-start: calc(50% - 32px);
                width: 64px;
                height: 64px;
                background-size: 64px;
@@ -650,7 +662,7 @@
        }
        &.audio-only .mute-others {
                top: calc(50% - 16px);
-               left: calc(50% - 10px);
+               inset-inline-start: calc(50% - 10px);
                width: 32px;
                height: 32px;
        }
@@ -683,8 +695,3 @@
                display: block;
        }
 }
-
-html[dir="rtl"] .main.room #chatPanel {
-       right: initial;
-       left: 0px;
-}
diff --git a/openmeetings-web/src/main/front/src/css/_signin.scss 
b/openmeetings-web/src/main/front/src/css/_signin.scss
index 3af28875d..8e24f1995 100644
--- a/openmeetings-web/src/main/front/src/css/_signin.scss
+++ b/openmeetings-web/src/main/front/src/css/_signin.scss
@@ -20,7 +20,7 @@
 
                i {
                        padding: 0 10px;
-                       background: #ffffff;
+                       background: var(--bs-body-bg);
                        position: relative;
                        top: -11px;
                        z-index: 1;
diff --git a/openmeetings-web/src/main/front/src/css/_tree.scss 
b/openmeetings-web/src/main/front/src/css/_tree.scss
index 9bad6ba57..d08deeaff 100644
--- a/openmeetings-web/src/main/front/src/css/_tree.scss
+++ b/openmeetings-web/src/main/front/src/css/_tree.scss
@@ -23,7 +23,7 @@
                        display: none;
                        position: absolute;
                        bottom: 1px;
-                       left: 5px;
+                       inset-inline-start: 5px;
                        font-size: .8em;
                }
                .tree-theme-windows {
@@ -46,7 +46,7 @@
                                        vertical-align: top;
 
                                        .name, .name span {
-                                               color: black;
+                                               color: var(--bs-body-text);
                                                display: block;
                                                /* Required for text-overflow 
to do anything */
                                                text-overflow: ellipsis;
@@ -59,7 +59,7 @@
                                        .errors {
                                                position: absolute;
                                                top: 0px;
-                                               right: 1px;
+                                               inset-inline-end: 1px;
                                                width: 32px;
                                                height: 32px;
                                                margin: 0px;
@@ -95,7 +95,7 @@
 
                                &::before {
                                        position: absolute;
-                                       left: 3px;
+                                       inset-inline-start: 3px;
                                }
                        }
                        .processing i {
@@ -245,9 +245,3 @@
                margin: 0;
        }
 }
-
-
-html[dir="rtl"] .trees .om-icon.big::before {
-       left: initial;
-       right: 3px;
-}
diff --git a/openmeetings-web/src/main/front/src/css/_wb.scss 
b/openmeetings-web/src/main/front/src/css/_wb.scss
index 0d0850173..6c2d55649 100644
--- a/openmeetings-web/src/main/front/src/css/_wb.scss
+++ b/openmeetings-web/src/main/front/src/css/_wb.scss
@@ -4,7 +4,7 @@
        height: 100%;
        width: calc(100% - var(--sidebar-width) - var(--buffer-size));
        top: 0;
-       left: calc(var(--sidebar-width) + var(--buffer-size));
+       inset-inline-start: calc(var(--sidebar-width) + var(--buffer-size));
 
        &.droppable-hover {
                border: 0;
@@ -179,7 +179,7 @@
                        height: 28px;
 
                        .caret {
-                               left: -1px;
+                               inset-inline-start: -1px;
                                bottom: -7px;
                        }
                }
@@ -188,7 +188,7 @@
                        height: 23px;
 
                        .caret {
-                               left: -1px;
+                               inset-inline-start: -1px;
                                bottom: -12px;
                        }
                }
@@ -199,8 +199,8 @@
                        .caret {
                                position: absolute;
                                border-top: 8px solid transparent;
-                               border-left: 8px solid blue;
-                               border-right: 8px solid transparent;
+                               border-inline-start: 8px solid blue;
+                               border-inline-end: 8px solid transparent;
                        }
                }
        }
@@ -232,6 +232,10 @@
        position: absolute;
        z-index: 95;
 
+       &.ui-widget-content {
+               border-color: var(--bs-border-color);
+               background-color: var(--bs-body-bg);
+       }
        .ui-dialog-titlebar-close {
                position: absolute;
                margin-inline-end: .3em;
@@ -299,6 +303,10 @@
        }
 }
 .wb-formula {
+       &.ui-widget-content {
+               border-color: var(--bs-border-color);
+               background-color: var(--bs-body-bg);
+       }
        .text-container {
                margin: 0 5px 5px 0;
                padding: 5px;
@@ -317,8 +325,8 @@
        }
 }
 .dropdown-menu.om-left {
-       right: 0;
-       left: auto !important;
+       inset-inline-end: 0;
+       inset-inline-start: auto !important;
 }
 .wb-tabbar {
        padding-inline-start: 70px !important;
@@ -379,9 +387,3 @@
 #wb-rename-menu {
        display: none;
 }
-
-
-html[dir="rtl"] .room-block .sb-wb .wb-block {
-       left: initial;
-       right: calc(var(--sidebar-width) + var(--buffer-size));
-}
diff --git a/openmeetings-web/src/main/front/src/main/index.js 
b/openmeetings-web/src/main/front/src/main/index.js
index 82fd2c11b..1c5fd7e59 100644
--- a/openmeetings-web/src/main/front/src/main/index.js
+++ b/openmeetings-web/src/main/front/src/main/index.js
@@ -13,6 +13,8 @@ $(window).on('resize', _updateResize);
 //initial resize
 _updateResize();
 
+document.documentElement.setAttribute('data-bs-theme', 
(window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'))
+
 Object.assign(window, {
        Settings: require('./settings')
        , OmUtil: require('./omutils')
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/FormActionsPanel.html
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/FormActionsPanel.html
index 766ad28fc..b7980b22b 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/FormActionsPanel.html
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/FormActionsPanel.html
@@ -21,7 +21,7 @@
 <!DOCTYPE html>
 <html xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-9.xsd";>
 <wicket:panel>
-       <div class="bg-white">
+       <div class="bg-body">
                <div class="btn btn-outline-primary btn-sm" 
wicket:id="btn-save" wicket:message="title:144">
                        <i class="fas fa-save"></i>
                </div>
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MenuPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MenuPanel.java
index bc561faab..fe99c785d 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MenuPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MenuPanel.java
@@ -25,6 +25,7 @@ import org.apache.wicket.markup.html.panel.Panel;
 
 import 
de.agilecoders.wicket.core.markup.html.bootstrap.navbar.INavbarComponent;
 import de.agilecoders.wicket.core.markup.html.bootstrap.navbar.Navbar;
+import 
de.agilecoders.wicket.core.markup.html.bootstrap.utilities.BackgroundColorBehavior;
 
 /**
  * Loads the menu items into the main area
@@ -40,6 +41,7 @@ public class MenuPanel extends Panel {
                super(id);
                setOutputMarkupPlaceholderTag(true);
                setMarkupId(id);
+               navbar.setBackgroundColor(BackgroundColorBehavior.Color.Body);
                navbar.addComponents(menus);
        }
 
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
index 68584307d..b76c0d71f 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
@@ -30,6 +30,7 @@ import 
org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
 import org.apache.openmeetings.db.entity.file.FileItem;
 import org.apache.openmeetings.db.entity.record.Recording;
 import org.apache.openmeetings.db.entity.record.Recording.Status;
+import org.apache.openmeetings.web.app.WebSession;
 import org.apache.wicket.AttributeModifier;
 import org.apache.wicket.Component;
 import org.apache.wicket.ajax.AjaxEventBehavior;
@@ -86,7 +87,7 @@ public class FolderPanel extends Panel implements 
IDraggableListener, IDroppable
                        add(new DroppableBehavior(
                                        selector
                                        , new Options()
-                                               .set("hoverClass", 
Options.asString("bg-light"))
+                                               .set("hoverClass", 
Options.asString("bg-body"))
                                                .set("accept", 
Options.asString(getDefaultModelObject() instanceof Recording ? ".recorditem" : 
".fileitem"))
                                        , this));
                }
@@ -97,7 +98,7 @@ public class FolderPanel extends Panel implements 
IDraggableListener, IDroppable
                                                .set("revert", 
"OmFileTree.treeRevert")
                                                .set("cursor", 
Options.asString("move"))
                                                .set("helper", 
"OmFileTree.dragHelper")
-                                               .set("cursorAt", "{left: 40, 
top: 18}")
+                                               .set("cursorAt", "{" + 
(WebSession.get().isRtlLocale() ? "right" : "left") + ": 40, top: 18}")
                                                .set("containment", 
Options.asString(treePanel.getContainment()))
                                        , this));
                }
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BasePage.html
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BasePage.html
index 2cdc69089..6dcc1f5a1 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BasePage.html
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BasePage.html
@@ -58,7 +58,7 @@
        <title wicket:id="pageTitle">[title]</title>
        <wicket:container wicket:id="customCSS"></wicket:container>
 </head>
-<body>
+<body class="om-body">
        <div wicket:id="main-loader" class="main-loader">
                <div class="sk-chasing-dots">
                        <div class="sk-child sk-dot1"></div>
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/loader.css 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/loader.css
index 47ad92019..38b32d7af 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/loader.css
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/loader.css
@@ -13,7 +13,7 @@
        display: inline-block;
        position: absolute;
        top: 0;
-       background-color: #333;
+       background-color: var(--bs-body-color, #333);
        border-radius: 100%;
        animation: sk-chasingDotsBounce 2s infinite ease-in-out;
 }
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NetTestPanel.html
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NetTestPanel.html
index e138bf387..3ee9d1aa4 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NetTestPanel.html
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NetTestPanel.html
@@ -32,7 +32,7 @@
                                <h5 class="card-title"><i class="far 
fa-clock"></i>&nbsp;<wicket:message key="network.test.ping"/></h5>
                                <p class="card-text value"></p>
                                <div class="d-grid gap-2">
-                                       <button class="test-btn btn btn-outline 
not-started" data-measure="ping" data-start="true" data-next="jitter" 
wicket:message="data-lbl:network.test.ping">
+                                       <button class="test-btn btn 
btn-outline-secondary not-started" data-measure="ping" data-start="true" 
data-next="jitter" wicket:message="data-lbl:network.test.ping">
                                                <i class="fas"></i>
                                        </button>
                                </div>
@@ -43,7 +43,7 @@
                                <h5 class="card-title"><i class="far 
fa-clock"></i>&nbsp;<wicket:message key="network.test.jitter"/></h5>
                                <p class="card-text value"></p>
                                <div class="d-grid gap-2">
-                                       <button class="test-btn btn btn-outline 
not-started" data-measure="jitter" data-next="upload" 
wicket:message="data-lbl:network.test.jitter">
+                                       <button class="test-btn btn 
btn-outline-secondary not-started" data-measure="jitter" data-next="upload" 
wicket:message="data-lbl:network.test.jitter">
                                                <i class="fas"></i>
                                        </button>
                                </div>
@@ -54,7 +54,7 @@
                                <h5 class="card-title"><i class="fas 
fa-file-upload"></i>&nbsp;<wicket:message key="network.test.upl"/></h5>
                                <p class="card-text value"></p>
                                <div class="d-grid gap-2">
-                                       <button class="test-btn btn btn-outline 
not-started" data-measure="upload" data-next="download" 
wicket:message="data-lbl:network.test.upl">
+                                       <button class="test-btn btn 
btn-outline-secondary not-started" data-measure="upload" data-next="download" 
wicket:message="data-lbl:network.test.upl">
                                                <i class="fas"></i>
                                        </button>
                                </div>
@@ -65,7 +65,7 @@
                                <h5 class="card-title"><i class="fas 
fa-file-download"></i>&nbsp;<wicket:message key="network.test.dwn"/></h5>
                                <p class="card-text value"></p>
                                <div class="d-grid gap-2">
-                                       <button class="test-btn btn btn-outline 
not-started" data-measure="download" wicket:message="data-lbl:network.test.dwn">
+                                       <button class="test-btn btn 
btn-outline-secondary not-started" data-measure="download" 
wicket:message="data-lbl:network.test.dwn">
                                                <i class="fas"></i>
                                        </button>
                                </div>
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.html
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.html
index 34212e2f0..d39d4b488 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.html
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.html
@@ -26,17 +26,19 @@
                <span class="badge bg-secondary">42</span>
                <div class="label"><wicket:message key="1363"/></div>
        </div>
-       <div class="ctrl bg-white">
-               <input type="checkbox" id="activity-auto-clean"/>
-               <label class="m-0" for="activity-auto-clean"><wicket:message 
key="activities.autoclean"/></label>
+       <div class="ctrl bg-body">
+               <label class="m-0" for="activity-auto-clean">
+                       <input type="checkbox" id="activity-auto-clean"/>
+                       <wicket:message key="activities.autoclean"/>
+               </label>
        </div>
-       <div class="area bg-white">
+       <div class="area bg-body">
                <div class="actions"></div>
                <div class="activities"></div>
        </div>
        <div class="d-none">
                <div id="activity-stub" class="activity item clearfix">
-                       <div class="btn-group float-end bg-white rounded" 
role="group">
+                       <div class="btn-group float-end bg-body rounded" 
role="group">
                                <button class="activity-close btn 
btn-outline-secondary btn-small float-end" wicket:message="title:85">
                                        <i class="fas fa-times"></i>
                                </button>
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
index 8890d4b51..a0f1a65cd 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
@@ -275,7 +275,7 @@ public class ActivitiesPanel extends Panel {
                                cls.append("bg-warning");
                                break;
                        case ROOM_ENTER, ROOM_EXIT:
-                               cls.append("bg-white auto-clean");
+                               cls.append("bg-body auto-clean");
                                break;
                        default:
                                break;
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-nettest.js
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-nettest.js
index 93df303b6..f5b1d2f0f 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-nettest.js
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-nettest.js
@@ -12,7 +12,7 @@ const NetTest = (function() {
                $('.nettest button')
                        .click(function() {
                                const btn = $(this);
-                               
btn.removeClass('complete').removeClass('not-started').addClass('started');
+                               btn[0].className = 'test-btn btn 
btn-outline-secondary started'
                                testLabel = btn.data('lbl');
                                testName = btn.data('measure');
                                tests[testName].start();
@@ -219,7 +219,7 @@ const NetTest = (function() {
        }
        function _setResult(val) {
                const btn = _btn();
-               btn.addClass('complete').removeClass('started');
+               btn[0].className = 'test-btn btn btn-outline-success complete'
                btn.parent().parent().find('.value').html(val);
                testNext = btn.data('next');
                if (!testNext) {
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.html
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.html
index dd8b069c8..b2cf0bba9 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.html
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.html
@@ -157,7 +157,7 @@
                        <div wicket:message="title:843" class="header 
ui-dialog-titlebar ui-widget-header ui-helper-clearfix ui-draggable-handle">
                                <span class="ui-dialog-title"><wicket:message 
key="843"/></span>
                        </div>
-                       <button type="button" class="ui-button ui-corner-all 
ui-widget ui-button-icon-only ui-dialog-titlebar-close" 
wicket:message="title:85">
+                       <button type="button" class="ui-button btn 
btn-outline-secondary ui-widget ui-button-icon-only ui-dialog-titlebar-close 
close" wicket:message="title:85">
                                <span class="ui-button-icon ui-icon 
ui-icon-closethick"></span>
                                <span class="ui-button-icon-space"> </span>
                                <wicket:message key="85"/>
@@ -189,7 +189,7 @@
                        <div wicket:message="title:wb.tool.math.formula" 
class="header ui-dialog-titlebar ui-corner-all ui-widget-header 
ui-helper-clearfix ui-draggable-handle">
                                <span class="ui-dialog-title"><wicket:message 
key="wb.tool.math.formula"/></span>
                        </div>
-                       <button type="button" class="ui-button ui-corner-all 
ui-widget ui-button-icon-only ui-dialog-titlebar-close end-0" 
wicket:message="title:85">
+                       <button type="button" class="ui-button btn 
btn-outline-secondary ui-widget ui-button-icon-only ui-dialog-titlebar-close 
close" wicket:message="title:85">
                                <span class="ui-button-icon ui-icon 
ui-icon-closethick"></span>
                                <span class="ui-button-icon-space"> </span>
                                <wicket:message key="85"/>
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/Chat.html
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/Chat.html
index 3e9314b72..33bc005f8 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/Chat.html
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/Chat.html
@@ -57,7 +57,7 @@
                        <i class="fas fa-times"></i>
                        <span class="visually-hidden"><wicket:message 
key="85"/></span>
                </button>
-               <div id="chat-msg-area-template" class="messageArea bg-white 
tab-pane h-100"></div>
+               <div id="chat-msg-area-template" class="messageArea bg-body 
tab-pane h-100"></div>
        </div>
 </wicket:panel>
 </html>
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatPanel.html
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatPanel.html
index 46bc53402..f0ce34539 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatPanel.html
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatPanel.html
@@ -20,7 +20,7 @@
 <!DOCTYPE html>
 <html xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-9.xsd";>
 <wicket:panel>
-       <div id="chatPopup" class="bg-light">
+       <div id="chatPopup" class="bg-body">
                <div class="control block clickable bg-secondary" 
wicket:message="data-ttl-dock:label.dock.panel,data-ttl-undock:label.undock.panel,data-new-msg:notification.chat.message">
                        <i class="fas me-1"></i>
                        <div class="label"><wicket:message key="244"/></div>
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatToolbar.html
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatToolbar.html
index e6f3b6476..3aad5fd21 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatToolbar.html
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatToolbar.html
@@ -21,7 +21,7 @@
 <!DOCTYPE html>
 <html xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-9.xsd";>
 <wicket:panel>
-       <nav wicket:id="toolbar" class="btn-toolbar chat-toolbar navbar 
navbar-expand navbar-light bg-light p-0" data-role="editor-toolbar">
+       <nav wicket:id="toolbar" class="btn-toolbar chat-toolbar navbar 
navbar-expand navbar-light bg-body p-0" data-role="editor-toolbar">
                <button class="navbar-toggler" type="button" 
data-bs-toggle="collapse" data-bs-target="#navbarChatContent" 
aria-controls="navbarChatContent" aria-expanded="false">
                        <span class="navbar-toggler-icon"></span>
                </button>
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.html
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.html
index 51452ed72..867081aa0 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.html
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.html
@@ -90,7 +90,7 @@
                                                </div>
                                        </div>
                                        <div wicket:id="selectedMessage">
-                                               <table class="w-100 bg-light">
+                                               <table class="w-100 bg-body">
                                                        <tr>
                                                                <td class="ps-4 
col-1"><wicket:message key="1202"/></td>
                                                                <td 
class="col-10" wicket:id="from"></td>
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserSearchPanel.html
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserSearchPanel.html
index 01b02d0b5..37bbc4316 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserSearchPanel.html
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserSearchPanel.html
@@ -47,7 +47,7 @@
                                </thead>
                                <tbody>
                                        <tr wicket:id="users">
-                                               <td class="col-3"><span 
class="om-icon" wicket:id="status"></span><span wicket:id="name"></span></td>
+                                               <td class="col-3"><span 
class="om-icon me-2" wicket:id="status"></span><span 
wicket:id="name"></span></td>
                                                <td class="col-2" 
wicket:id="tz"></td>
                                                <td class="col-2" 
wicket:id="offer"></td>
                                                <td class="col-3" 
wicket:id="search"></td>
diff --git a/openmeetings-web/src/main/webapp/css/images/logo.png 
b/openmeetings-web/src/main/webapp/css/images/logo.png
deleted file mode 100644
index 73d3d88bd..000000000
Binary files a/openmeetings-web/src/main/webapp/css/images/logo.png and 
/dev/null differ
diff --git a/openmeetings-web/src/site/site.xml 
b/openmeetings-web/src/site/site.xml
index c7da49860..9305f6c42 100644
--- a/openmeetings-web/src/site/site.xml
+++ b/openmeetings-web/src/site/site.xml
@@ -12,7 +12,8 @@
    See the License for the specific language governing permissions and
    limitations under the License.
  -->
-<project xmlns="http://maven.apache.org/DECORATION/1.8.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+<project xmlns="http://maven.apache.org/DECORATION/1.8.0";
+               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
                xsi:schemaLocation="http://maven.apache.org/DECORATION/1.8.0 
http://maven.apache.org/xsd/decoration-1.8.0.xsd";
                name="Apache OpenMeetings Project">
        <body>
diff --git 
a/openmeetings-web/src/test/java/org/apache/openmeetings/ws/TestUserService.java
 
b/openmeetings-web/src/test/java/org/apache/openmeetings/ws/TestUserService.java
index ca63734a8..1f86a238f 100644
--- 
a/openmeetings-web/src/test/java/org/apache/openmeetings/ws/TestUserService.java
+++ 
b/openmeetings-web/src/test/java/org/apache/openmeetings/ws/TestUserService.java
@@ -55,7 +55,7 @@ import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.ValueSource;
 
 class TestUserService extends AbstractWebServiceTest {
-       private static final String DUMMY_PICTURE_URL = 
"https://openmeetings.apache.org/images/logo.png";;
+       private static final String DUMMY_PICTURE_URL = 
"https://openmeetings.apache.org/images/logo.svg";;
 
        @Test
        void invalidLoginTest() {
diff --git a/openmeetings-webservice/src/site/site.xml 
b/openmeetings-webservice/src/site/site.xml
index 0b1eb89c0..8f2676ccb 100644
--- a/openmeetings-webservice/src/site/site.xml
+++ b/openmeetings-webservice/src/site/site.xml
@@ -12,7 +12,8 @@
    See the License for the specific language governing permissions and
    limitations under the License.
  -->
-<project xmlns="http://maven.apache.org/DECORATION/1.8.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+<project xmlns="http://maven.apache.org/DECORATION/1.8.0";
+               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
                xsi:schemaLocation="http://maven.apache.org/DECORATION/1.8.0 
http://maven.apache.org/xsd/decoration-1.8.0.xsd";
                name="Apache OpenMeetings Project">
        <body>
diff --git a/src/site/site.xml b/src/site/site.xml
index c0e0d1d91..e76da57f7 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -12,13 +12,14 @@
    See the License for the specific language governing permissions and
    limitations under the License.
 -->
-<project xmlns="http://maven.apache.org/DECORATION/1.8.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+<project xmlns="http://maven.apache.org/DECORATION/1.8.0";
+               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
                xsi:schemaLocation="http://maven.apache.org/DECORATION/1.8.0 
http://maven.apache.org/xsd/decoration-1.8.0.xsd";
                name="Apache OpenMeetings Project">
        <bannerLeft>
                <title>Apache OpenMeetings</title>
                <alt>Apache OpenMeetings</alt>
-               <src>https://openmeetings.apache.org/images/logo.png</src>
+               <src>https://openmeetings.apache.org/images/logo.svg</src>
                <href>https://openmeetings.apache.org/index.html</href>
        </bannerLeft>
        <bannerRight>

Reply via email to