Index: .gitattributes
===================================================================
--- .gitattributes	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
+++ .gitattributes	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -0,0 +1,2 @@
+# Auto detect text files and perform LF normalization
+* text=auto
Index: .gitignore
===================================================================
--- .gitignore	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
+++ .gitignore	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -0,0 +1,34 @@
+HELP.md
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**/target/
+!**/src/test/**/target/
+
+### STS ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### IntelliJ IDEA ###
+.idea
+*.iws
+*.iml
+*.ipr
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+build/
+!**/src/main/**/build/
+!**/src/test/**/build/
+
+### VS Code ###
+.vscode/
+/frontend/node_modules/
Index: .mvn/wrapper/maven-wrapper.properties
===================================================================
--- .mvn/wrapper/maven-wrapper.properties	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
+++ .mvn/wrapper/maven-wrapper.properties	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.7/apache-maven-3.8.7-bin.zip
+wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar
Index: frontend/package-lock.json
===================================================================
--- frontend/package-lock.json	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/package-lock.json	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -13,5 +13,4 @@
         "@testing-library/user-event": "^13.5.0",
         "axios": "^1.5.0",
-        "axios-extensions": "^3.1.6",
         "bootstrap": "^5.3.0",
         "file-loader": "^6.2.0",
@@ -5350,25 +5349,4 @@
       }
     },
-    "node_modules/axios-extensions": {
-      "version": "3.1.6",
-      "resolved": "https://registry.npmjs.org/axios-extensions/-/axios-extensions-3.1.6.tgz",
-      "integrity": "sha512-CmwMYxxAw4DcQDJ7/2Iv4GJj1Ao48lJEPieycgZQH6m1KcYZqf9zm2HM/CsULqheCpYxZbiGrCfZf5tVjXqoLg==",
-      "dependencies": {
-        "lru-cache": "^7.14.0",
-        "tslib": "^2.1.0",
-        "util": "^0.12.3"
-      },
-      "peerDependencies": {
-        "axios": "*"
-      }
-    },
-    "node_modules/axios-extensions/node_modules/lru-cache": {
-      "version": "7.18.3",
-      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
-      "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
-      "engines": {
-        "node": ">=12"
-      }
-    },
     "node_modules/axios/node_modules/form-data": {
       "version": "4.0.0",
@@ -9447,4 +9425,5 @@
       "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz",
       "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==",
+      "peer": true,
       "dependencies": {
         "call-bind": "^1.0.2",
@@ -9585,18 +9564,4 @@
       "engines": {
         "node": ">=6"
-      }
-    },
-    "node_modules/is-generator-function": {
-      "version": "1.0.10",
-      "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz",
-      "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==",
-      "dependencies": {
-        "has-tostringtag": "^1.0.0"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
@@ -16835,16 +16800,4 @@
       }
     },
-    "node_modules/util": {
-      "version": "0.12.5",
-      "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz",
-      "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==",
-      "dependencies": {
-        "inherits": "^2.0.3",
-        "is-arguments": "^1.0.4",
-        "is-generator-function": "^1.0.7",
-        "is-typed-array": "^1.1.3",
-        "which-typed-array": "^1.1.2"
-      }
-    },
     "node_modules/util-deprecate": {
       "version": "1.0.2",
Index: frontend/package.json
===================================================================
--- frontend/package.json	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/package.json	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -8,5 +8,4 @@
     "@testing-library/user-event": "^13.5.0",
     "axios": "^1.5.0",
-    "axios-extensions": "^3.1.6",
     "bootstrap": "^5.3.0",
     "file-loader": "^6.2.0",
Index: frontend/src/App.js
===================================================================
--- frontend/src/App.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/App.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -5,5 +5,5 @@
 import 'bootstrap/dist/js/bootstrap.js';
 import HomeCarousel from './Components/Layout/CarouselHome/Carousel';
-import {Card, Container} from 'react-bootstrap';
+import { Card, Container } from 'react-bootstrap';
 import TabComponent from './Components/Tab/Tab';
 import Offers from './Components/Layout/Offers/Offers';
@@ -27,57 +27,35 @@
 import TransportEditPage from './Pages/TransportEditPage';
 import RestaurantDetailsPage from './Pages/RestaurantDetailsPage';
-import {BrowserRouter, Route, Routes} from 'react-router-dom';
+import { BrowserRouter, Route, Routes } from 'react-router-dom';
 import LoginErrorPage from "./Pages/LoginErrorPage";
-import {AuthProvider} from "./Components/Context/AuthContext";
-import PrivateRoute from "./Components/Misc/PrivateRoute";
-import ProfilesManagementPage from "./Pages/ProfilesManagementPage";
-import UserReservationsManagement from "./Pages/UserReservationsManagement";
-import LoginCallback from "./Components/LoginCallback";
-import ConnectedAccountsPage from "./Pages/ConnectedAccountsPage";
 
 
 function App() {
 
-    return (
-        <div className="App" style={{overflow: 'hidden'}}>
-            <AuthProvider>
-                <BrowserRouter>
-                    <Routes>
-                        <Route path='/login' element={<LoginPage/>}/>
-                        <Route path='/register' element={<RegistrationPage/>}/>
-                        <Route path='/profile' element={<PrivateRoute><ProfilePage/></PrivateRoute>}/>
-                        <Route path='/profiles' element={<PrivateRoute><ProfilesManagementPage/></PrivateRoute>}/>
-                        <Route path='/reservations' element={<PrivateRoute><UserReservationsManagement/></PrivateRoute>}/>
-                        <Route path="/resources" exact element={<PrivateRoute><NoBusinessRegisteredError
-                            hasRegistration="false"/></PrivateRoute>}/>
-                        <Route path="/resources/hotel"
-                               element={<PrivateRoute><ResourcesPage tab="/hotel"/></PrivateRoute>}/>
-                        <Route path="/resources/hotel/:hotelId" element={<PrivateRoute><HotelEditPage/></PrivateRoute>}/>
-                        <Route path="/resources/restaurant"
-                               element={<PrivateRoute><ResourcesPage tab="/restaurant"/></PrivateRoute>}/>
-                        <Route path='/resources/restaurant/:restaurantId'
-                               element={<PrivateRoute><RestaurantEditPage/></PrivateRoute>}/>
-                        <Route path="/resources/transport"
-                               element={<PrivateRoute><ResourcesPage tab="/transport"/></PrivateRoute>}/>
-                        <Route path="/resources/transport/:transportId"
-                               element={<PrivateRoute><TransportEditPage/></PrivateRoute>}/>
-                        <Route path="/home" element={<HomePage/>}/>
-                        <Route path="/error" element={<LoginErrorPage/>}/>
-                        <Route path='/details/transport' element={<TransportDetailsPage></TransportDetailsPage>}/>
-                        <Route path='/details/hotel' element={<HotelDetailsPage></HotelDetailsPage>}/>
-                        <Route path='/details/restaurant' element={<RestaurantDetailsPage></RestaurantDetailsPage>}/>
-                        <Route path="/search/hotel/:hotelLocation/:dateFrom/:dateTo/:numBeds/:flexible"
-                               element={<SearchPage type="hotel"/>}/>
-                        <Route path="/search/transport/:from/:to/:date/:numPassengers"
-                               element={<SearchPage type="transport"/>}/>
-                        <Route path="/search/restaurant/:restaurantLocation/:date/:hourFrom/:hourTo/:numPeople"
-                               element={<SearchPage type="restaurant"/>}/>
-                        <Route path="/login-callback" element={<LoginCallback/>}></Route>
-                        <Route path="/connected" element={<PrivateRoute><ConnectedAccountsPage/></PrivateRoute>}></Route>
-                    </Routes>
-                </BrowserRouter>
-            </AuthProvider>
-        </div>
-    );
+  return (
+    <div className="App" style={{overflow: 'hidden'}}>
+      <BrowserRouter>
+        <Routes>
+          <Route path='/login' element={<LoginPage/>}/>
+          <Route path='/register' element={<RegistrationPage/>}/>
+          <Route path='/profile' element={<ProfilePage/>}/>
+          <Route path="/resources" exact element={<NoBusinessRegisteredError hasRegistration="false"/>} />
+          <Route path="/resources/hotel" element={<ResourcesPage tab="/hotel"/>}/>
+          <Route path="/resources/hotel/:hotelId" element={<HotelEditPage />}/>
+          <Route path="/resources/restaurant" element={<ResourcesPage tab="/restaurant"/>}/>
+          <Route path='/resources/restaurant/:restaurantId' element={<RestaurantEditPage />}/>
+          <Route path="/resources/transport" element={<ResourcesPage tab="/transport"/>}/>
+          <Route path="/resources/transport/:transportId" element={<TransportEditPage/>}/>
+          <Route path="/home" element={<HomePage/> }/>
+          <Route path="/error" element={<LoginErrorPage/> }/>
+          <Route path='/details/transport' element={<TransportDetailsPage></TransportDetailsPage>}/>
+          <Route path='/details/hotel' element={<HotelDetailsPage></HotelDetailsPage>}/>
+          <Route path='/details/restaurant' element={<RestaurantDetailsPage></RestaurantDetailsPage>}/>
+          <Route path="/search/hotel/:hotelLocation/:dateFrom/:dateTo/:numBeds" element={<SearchPage type="hotel"/> }/>
+          <Route path="/search/transport/:from/:to/:date" element={<SearchPage type="transport"/> }/>
+        </Routes>
+      </BrowserRouter>
+    </div>
+  );
 }
 
Index: ontend/src/Components/AdminPanel/AllProfilesTable.js
===================================================================
--- frontend/src/Components/AdminPanel/AllProfilesTable.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,77 +1,0 @@
-import useGet from "../Hooks/useGet";
-import {Container} from "react-bootstrap";
-import { FaLock, FaLockOpen } from "react-icons/fa";
-import React from "react";
-import useApprove from "../Hooks/useApprove";
-
-const AllProfilesTable = () => {
-
-    const { data, isLoading, setData, getData, setChanged } = useGet('/user')
-    const { getData: approveProfile} = useApprove()
-
-    !isLoading && console.log(data)
-
-    const dateFormatter = (str) => {
-        const inputDate = new Date(str);
-
-        const options = {
-            year: '2-digit',
-            month: '2-digit',
-            day: '2-digit',
-            hour12: false,
-        };
-
-        return inputDate.toLocaleString('mk-MK', options);
-
-    }
-
-    return (
-        <>
-            <Container fluid >
-                <table className="table table-hover">
-                    <thead>
-                    <tr>
-                        <th scope="col"></th>
-                        <th scope="col">Име и презиме</th>
-                        <th scope="col">Адреса</th>
-                        <th scope="col">Email</th>
-                        <th scope="col">Датум на раѓање</th>
-                        <th scope="col">Контакт телефон</th>
-                        <th>Акции</th>
-                    </tr>
-                    </thead>
-                    <tbody>
-                    {!isLoading && data.map((f, i) => { return <tr key={f.userID}>
-                        <th style={{verticalAlign: "middle"}} scope="row">{i + 1}</th>
-                        <td style={{verticalAlign: "middle"}}>{f.name + ' ' + f.surname}</td>
-                        <td style={{verticalAlign: "middle"}}>{f.address}</td>
-                        <td style={{verticalAlign: "middle"}}>{f.email}</td>
-                        <td style={{verticalAlign: "middle"}}>{dateFormatter(f.birthDate)}</td>
-                        <td style={{verticalAlign: "middle"}}>{f.contact}</td>
-                        <td style={{verticalAlign: "middle"}}>
-                            {f.accountNonLocked &&
-                                <FaLock size={'2.2em'} color={'#159895'} onClick={() => {
-                                    approveProfile('/users/unlock/' + f.userID).then(() => {
-                                        setChanged((prev) => {
-                                            return Math.random();
-                                        })
-                                    })
-                                }}/>}
-                            {!f.accountNonLocked &&
-                                <FaLockOpen size={'2.2em'} color={'#159895'} onClick={() => {
-                                    approveProfile('/users/unlock/' + f.userID).then(() => {
-                                        setChanged((prev) => {
-                                            return Math.random();
-                                        })
-                                    })
-                                }}/>}
-                        </td>
-                    </tr>})}
-                    </tbody>
-                </table>
-            </Container>
-        </>
-    )
-}
-
-export default AllProfilesTable;
Index: ontend/src/Components/AdminPanel/UnapprovedBusinessesTable.js
===================================================================
--- frontend/src/Components/AdminPanel/UnapprovedBusinessesTable.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,48 +1,0 @@
-import useGet from "../Hooks/useGet";
-import {Container} from "react-bootstrap";
-import {FaCheckCircle} from "react-icons/fa";
-import React from "react";
-import useApprove from "../Hooks/useApprove";
-
-const UnapprovedBusinessesTable = () => {
-
-    const { data, isLoading, setData, getData, setChanged } = useGet('/business/unapproved');
-    const { getData: approveBusiness} = useApprove();
-
-    return (
-        <>
-            <Container fluid >
-                <table className="table table-hover">
-                    <thead>
-                    <tr>
-                        <th scope="col">Ред. бр.</th>
-                        <th scope="col">Име на фирма</th>
-                        <th scope="col">Адреса</th>
-                        <th scope="col">Даночен број</th>
-                        <th scope="col">Одговорно лице</th>
-                        <th>Одобри</th>
-                    </tr>
-                    </thead>
-                    <tbody>
-                    {!isLoading && data.map((f, i) => { return <tr key={f.businessId}>
-                        <th style={{verticalAlign: "middle"}} scope="row">{i + 1}</th>
-                        <td style={{verticalAlign: "middle"}}>{f.name}</td>
-                        <td style={{verticalAlign: "middle"}}>{f.address}</td>
-                        <td style={{verticalAlign: "middle"}}>{f.edbs}</td>
-                        <td style={{verticalAlign: "middle"}}>{f.user.name + " " + f.user.surname}</td>
-                        <td style={{verticalAlign: "middle"}}><FaCheckCircle size={'2.2em'} color={'#159895'} onClick={() => {
-                            approveBusiness('/business/approve/' + f.businessId).then(() => {
-                                setChanged((prev) => {
-                                    return Math.random();
-                                })
-                            })
-                        }}/></td>
-                    </tr>})}
-                    </tbody>
-                </table>
-            </Container>
-        </>
-    )
-}
-
-export default UnapprovedBusinessesTable;
Index: ontend/src/Components/AdminPanel/UnapprovedProfilesTable.js
===================================================================
--- frontend/src/Components/AdminPanel/UnapprovedProfilesTable.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,66 +1,0 @@
-import useGet from "../Hooks/useGet";
-import {Container} from "react-bootstrap";
-import {FaCheckCircle} from "react-icons/fa";
-import React from "react";
-import useApprove from "../Hooks/useApprove";
-
-const UnapprovedProfilesTable = () => {
-
-    const { data, isLoading, setData, getData, setChanged } = useGet('/users/unapproved')
-    const { getData: approveProfile} = useApprove()
-
-    !isLoading && console.log(data)
-
-    const dateFormatter = (str) => {
-        const inputDate = new Date(str);
-
-        const options = {
-            year: '2-digit',
-            month: '2-digit',
-            day: '2-digit',
-            hour12: false,
-        };
-
-        return inputDate.toLocaleString('mk-MK', options);
-
-    }
-
-    return (
-        <>
-            <Container fluid >
-                <table className="table table-hover">
-                    <thead>
-                    <tr>
-                        <th scope="col"></th>
-                        <th scope="col">Име и презиме</th>
-                        <th scope="col">Адреса</th>
-                        <th scope="col">Email</th>
-                        <th scope="col">Датум на раѓање</th>
-                        <th scope="col">Контакт телефон</th>
-                        <th>Одобри</th>
-                    </tr>
-                    </thead>
-                    <tbody>
-                    {!isLoading && data.map((f, i) => { return <tr key={f.userID}>
-                        <th style={{verticalAlign: "middle"}} scope="row">{i + 1}</th>
-                        <td style={{verticalAlign: "middle"}}>{f.name + ' ' + f.surname}</td>
-                        <td style={{verticalAlign: "middle"}}>{f.address}</td>
-                        <td style={{verticalAlign: "middle"}}>{f.email}</td>
-                        <td style={{verticalAlign: "middle"}}>{dateFormatter(f.birthDate)}</td>
-                        <td style={{verticalAlign: "middle"}}>{f.contact}</td>
-                        <td style={{verticalAlign: "middle"}}><FaCheckCircle size={'2.2em'} color={'#159895'} onClick={() => {
-                            approveProfile('/users/approve/' + f.userID).then(() => {
-                                setChanged((prev) => {
-                                    return Math.random();
-                                })
-                            })
-                        }}/></td>
-                    </tr>})}
-                    </tbody>
-                </table>
-            </Container>
-        </>
-    )
-}
-
-export default UnapprovedProfilesTable;
Index: frontend/src/Components/BecomeAHost/Review.js
===================================================================
--- frontend/src/Components/BecomeAHost/Review.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/BecomeAHost/Review.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -7,5 +7,5 @@
     const generateStars = () => {
         const stars = [];
-        for (let i = 0; i < props.review.numStar; i++) {
+        for (let i = 0; i < 3; i++) {
           stars.push(
             <Col key={i} style={{display: "inline-block"}} className="w-20 px-0">
@@ -14,5 +14,5 @@
           );
         }
-        for (let i = 0; i < 5 - props.review.numStar; i++) {
+        for (let i = 0; i < 5 - 3; i++) {
           stars.push(
             <Col key={i + 3} style={{display: "inline-block"}} className="w-20 px-0">
@@ -25,5 +25,5 @@
     
     return (
-        <Container style={{padding: '2em', width: '18em', height: '15em', backgroundColor: 'lightgray', borderRadius: '1rem', position: "aboslute", top: "-410px", left: "-600px"}}>
+        <Container style={{padding: '2em', width: '18em', height: 'auto', backgroundColor: 'lightgray', borderRadius: '1rem', position: "aboslute", top: "-410px", left: "-600px"}}>
             <Row>
                 <Col>
@@ -31,9 +31,9 @@
                 </Col>
                 <Col className="my-auto">
-                    <span>{props.review.title}</span>
+                    <span>Ime Prezime</span>
                 </Col>
             </Row>
             <Row>
-                <span className="my-3 border">{props.review.description}</span>
+                <span className="my-3 border">Lorem Ipsum is simply dummy text of the printing and typesetting industry. </span>
             </Row>
             <Row className="w-100 mx-auto" style={{maxWidth: "100%"}}>
Index: ontend/src/Components/ConnectedAccounts/ConnectedAccountsTable.js
===================================================================
--- frontend/src/Components/ConnectedAccounts/ConnectedAccountsTable.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,47 +1,0 @@
-import useGet from "../Hooks/useGet";
-import useApprove from "../Hooks/useApprove";
-import {Container} from "react-bootstrap";
-import {FaCheckCircle} from "react-icons/fa";
-import React from "react";
-import {useAuth} from "../Context/AuthContext";
-import profilePage from "../../Pages/ProfilePage";
-
-const ConnectedAccountsTable = (props) => {
-
-    const data = props.data;
-    const isLoading = props.isLoading;
-
-    const { getData: approveBusiness} = useApprove();
-
-    return (
-        <>
-            <Container fluid >
-                <table className="table table-hover">
-                    <thead>
-                    <tr>
-                        <th scope="col">Ред. бр.</th>
-                        <th scope="col">User ID</th>
-                        <th scope="col">Име</th>
-                        <th scope="col">Презиме</th>
-                        <th scope="col">Username</th>
-                        <th>Дисконектирај</th>
-                    </tr>
-                    </thead>
-                    <tbody>
-                    {data.map((f, i) => { return <tr key={f.userID}>
-                        <th style={{verticalAlign: "middle"}} scope="row">{i + 1}</th>
-                        <td style={{verticalAlign: "middle"}}>{f.userID}</td>
-                        <td style={{verticalAlign: "middle"}}>{f.name}</td>
-                        <td style={{verticalAlign: "middle"}}>{f.surname}</td>
-                        <td style={{verticalAlign: "middle"}}>{f.username}</td>
-                        <td style={{verticalAlign: "middle"}}><FaCheckCircle size={'2.2em'} color={'#159895'} onClick={() => {
-                        }}/></td>
-                    </tr>})}
-                    </tbody>
-                </table>
-            </Container>
-        </>
-    )
-}
-
-export default ConnectedAccountsTable;
Index: ontend/src/Components/Context/AuthContext.js
===================================================================
--- frontend/src/Components/Context/AuthContext.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,52 +1,0 @@
-import React, { createContext, useContext, useState, useEffect } from 'react'
-
-const AuthContext = createContext()
-
-const AuthProvider = ({ children }) => {
-    const [user, setUser] = useState(null)
-
-    useEffect(() => {
-        const storedUser = JSON.parse(localStorage.getItem('user'))
-        setUser(storedUser)
-    }, [])
-
-    const getUser = () => {
-        return JSON.parse(localStorage.getItem('user'))
-    }
-
-    const userIsAuthenticated = () => {
-        return localStorage.getItem('user') !== null
-    }
-
-    const userLogin = user => {
-        localStorage.setItem('user', JSON.stringify(user))
-        setUser(user)
-    }
-
-    const userLogout = () => {
-        localStorage.removeItem('user')
-        setUser(null)
-    }
-
-    const contextValue = {
-        user,
-        getUser,
-        userIsAuthenticated,
-        userLogin,
-        userLogout,
-    }
-
-    return (
-        <AuthContext.Provider value={contextValue}>
-            {children}
-        </AuthContext.Provider>
-    )
-}
-
-export default AuthContext
-
-export function useAuth() {
-    return useContext(AuthContext)
-}
-
-export { AuthProvider }
Index: frontend/src/Components/Forms/AddHotelForm.js
===================================================================
--- frontend/src/Components/Forms/AddHotelForm.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Forms/AddHotelForm.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -119,6 +119,4 @@
                   return prevState + 1;
                 })
-                if(!edit)
-                  props.closeModal()
               }}
             >
Index: frontend/src/Components/Forms/AddItemMenuForm.js
===================================================================
--- frontend/src/Components/Forms/AddItemMenuForm.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Forms/AddItemMenuForm.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -4,5 +4,4 @@
 import useFormData from "../Hooks/useFormData";
 import useCreateMenu from "../Hooks/Restaurant/useCreateMenu"
-import useCreate from "../Hooks/useCreate";
 
 const AddItemMenuForm = (props) => {
@@ -10,5 +9,4 @@
 
   const edit = props.menu
-  console.log(props.menu)
   const dummy =     {
     name: "",
@@ -25,5 +23,4 @@
     edit ? props.menu : dummy
   );
-  const { createEntity } = useCreate();
 
   return (
@@ -75,11 +72,8 @@
               onClick={(e) => {
                 e.preventDefault();
-                if(!edit) {
-                  createMenu(props.Id, formData, props.refresh)
-                }
-                else {
-                  createEntity(`/menu/${props.menu.menuId}/edit`, formData, props.refresh)
-                }
-
+                createMenu(props.Id, formData)
+                props.refresh((prevState) => {
+                  return prevState + 1;
+                })
               }}
             >
Index: frontend/src/Components/Forms/AddRestaurantForm.js
===================================================================
--- frontend/src/Components/Forms/AddRestaurantForm.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Forms/AddRestaurantForm.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -82,6 +82,7 @@
                 e.preventDefault()
                 createRestaurant(formData, edit);
-                props.refresh(Math.random())
-                if(!edit) props.closeModal()
+                props.refresh((prevState) => {
+                  return prevState + 1;
+                })
               }}
             >
Index: frontend/src/Components/Forms/AddRoomForm.js
===================================================================
--- frontend/src/Components/Forms/AddRoomForm.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Forms/AddRoomForm.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -13,5 +13,5 @@
     hotelRoomDescription: "",
     hotelRoomName: "",
-    numOfBeds: "",
+    numBeds: "",
     price: "",
     kitchenAvailable: false,
@@ -58,6 +58,6 @@
             type="number" 
             placeholder="Внесете го бројот на кревети" 
-            value={formData.numOfBeds}
-            name="numOfBeds"
+            value={formData.numBeds}
+            name="numBeds"
             onChange={onFormChange}
             />
@@ -117,11 +117,7 @@
               style={{ backgroundColor: "#159895" }}
               size="md"
-              onClick={(e) => {
-                e.preventDefault();
-                props.refresh((prev) => {
-                  return ++prev;
-                })
+              onClick={() => {
+                console.log(formData);
                 createHotelRoom(formData);
-                props.closeModal();
               }}
             >
Index: frontend/src/Components/Forms/AddTableAvailabilityForm.js
===================================================================
--- frontend/src/Components/Forms/AddTableAvailabilityForm.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Forms/AddTableAvailabilityForm.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -62,6 +62,4 @@
               onClick={() => {
                 createTableAvailability(formData, props.table.tableId)
-                props.refresh(Math.random())
-                props.close()
               }}
             >
Index: frontend/src/Components/Forms/AddTransportForm.js
===================================================================
--- frontend/src/Components/Forms/AddTransportForm.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Forms/AddTransportForm.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -11,5 +11,5 @@
       transportName: "",
       carBrand: "",
-      carType: "",
+      carType: false,
       carManufacturedYear: 1900,
       noPassengers: 0,
@@ -107,8 +107,6 @@
                 createTransport(formData, edit);
                 props.refresh((prev) => {
-                  return ++prev;
+                  return prev + 1;
                 })
-                if(!edit)
-                    props.closeModal()
               }}
             >
Index: frontend/src/Components/Forms/AddTripForm.js
===================================================================
--- frontend/src/Components/Forms/AddTripForm.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Forms/AddTripForm.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -232,5 +232,4 @@
                                     console.log(wayPointNames);
                                     for (let i = 0; i < routeCount - 1; i++) {
-                                        console.log(wayPoints[i])
                                         wayPointNames.push(wayPoints[i].value);
                                     }
@@ -272,6 +271,9 @@
 
                                     for (let i = 0; i < Object.values(routesForm).length; i++) {
+                                        console.log(findDependantRoutes(wayPointNames, routesForm, i))
                                         setDependencies(prevState => [...prevState, findDependantRoutes(wayPointNames, routesForm, i)])
                                     }
+                                    console.log('VO STATEOOOO')
+                                    console.log(dependencies)
                                     routesSetFormData(routesForm)
                                     setRoutes(routesVar)
Index: ontend/src/Components/Forms/EditMainRouteForm.js
===================================================================
--- frontend/src/Components/Forms/EditMainRouteForm.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,85 +1,0 @@
-import React from "react";
-import useGet from "../Hooks/useGet";
-import {Col, Container, Row, Table} from "react-bootstrap";
-import AddRoomForm from "./AddRoomForm";
-import AddTripForm from "./AddTripForm";
-
-
-const EditMainRouteForm = (props) => {
-
-    console.log(props.route)
-
-    const dateFormatter = (str) => {
-        const inputDate = new Date(str);
-
-        const options = {
-            year: '2-digit',
-            month: '2-digit',
-            day: '2-digit',
-            hours: '2-digit',
-            minutes: '2-digit'
-        };
-
-        return inputDate.toLocaleString('en-GB', options);
-    }
-
-    const {
-        data,
-        isLoading,
-        setData,
-        getData
-    } = useGet(`/transport/${props.route.id}/available`)
-
-    !isLoading && console.log(data)
-
-    return (
-        <>
-            <Row>
-                <Col>
-                    <AddTripForm transportId={props.route.id} refresh={props.refresh}/>
-                </Col>
-                <Col>
-                    <Container>
-                        <Table>
-                            <thead>
-                            <tr>
-                                <th>#</th>
-                                <th>Од - До</th>
-                                <th>Време тргање</th>
-                                <th>Време пристигање</th>
-                                <th>Број патници</th>
-                                <th>Цена</th>
-                            </tr>
-                            </thead>
-                            <tbody>
-                            {!isLoading && data != null && data.map((avail) => {
-                                return (
-                                    avail.routes.map((route, i) => {
-                                        return (<tr>
-                                            <td>
-                                                {i + 1}
-                                            </td>
-                                            <td>
-                                                {route.from} - {route.to}
-                                            </td>
-                                            <td>
-                                                {dateFormatter(route.departure)}
-                                            </td>
-                                            <td>
-                                                {dateFormatter(route.arrival)}
-                                            </td>
-                                            <td>
-                                                {route.freeSpace}
-                                            </td>
-                                        </tr>)
-                            }))})}
-                            </tbody>
-                        </Table>
-                    </Container>
-                </Col>
-            </Row>
-        </>
-    )
-}
-
-export default EditMainRouteForm
Index: frontend/src/Components/Forms/EditRoomForm.js
===================================================================
--- frontend/src/Components/Forms/EditRoomForm.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Forms/EditRoomForm.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -28,6 +28,4 @@
     } = useGet(`/hotel/rooms/${props.room.hotelRoomId}/available`)
 
-    console.log(`/hotel/rooms/${props.room.hotelRoomId}/available`)
-
     !isLoading && console.log(data)
 
@@ -44,7 +42,7 @@
                             <tr>
                                 <th>#</th>
-                                <th>Oд</th>
-                                <th>До</th>
-                                <th>Цена</th>
+                                <th>Достапно од</th>
+                                <th>Достапно до</th>
+                                <th>Број на соби</th>
                             </tr>
                             </thead>
Index: ontend/src/Components/Hooks/FilesUpload/useFileChange.js
===================================================================
--- frontend/src/Components/Hooks/FilesUpload/useFileChange.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,43 +1,0 @@
-import axios from "../../../axios";
-import { useState } from "react";
-
-const useFileChange = () => {
-    const [selectedFiles, setSelectedFiles] = useState([]);
-
-    const onFileChangeHandler = (files, type, id, refresh) => {
-        setSelectedFiles(files);
-
-        const formData = new FormData();
-
-        files.forEach((x) => formData.append('files', x))
-        //
-        // for (let i = 0; i < files.length; i++) {
-        //
-        // }
-
-
-        axios.post(`/upload/${type}/${id}`, formData, {
-            headers: {
-                'Content-Type': 'multipart/form-data'
-            }
-        })
-            .then(res => {
-                if (res.status === 200) {
-                    console.log(res.data);
-                    refresh((prev) => ++prev)
-                    alert("File(s) uploaded successfully.");
-                } else {
-                    console.error("File upload failed:", res.data);
-                    alert("File upload failed.");
-                }
-            })
-            .catch(error => {
-                console.error("Error uploading file(s):", error);
-                alert("An error occurred while uploading files.");
-            });
-    };
-
-    return { onFileChangeHandler, selectedFiles };
-};
-
-export default useFileChange;
Index: frontend/src/Components/Hooks/Hotel/useCreateHotel.js
===================================================================
--- frontend/src/Components/Hooks/Hotel/useCreateHotel.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Hooks/Hotel/useCreateHotel.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -6,8 +6,8 @@
 const useCreateHotel = () => {
 
+    //const history = useNavigate();
     const createHotel = async (hotel, edit) => {
 		console.log({hotel})
 		console.log(hotel)
-		console.log("vo createhotel")
 
 		if(!edit)
@@ -16,5 +16,5 @@
 			.post(`/hotel/add`, hotel, {
 				params: {
-					userId: JSON.parse(localStorage.getItem("user")).userId
+					userId: localStorage.getItem("userId")
 				}
 			}) 
Index: frontend/src/Components/Hooks/Restaurant/useCreateMenu.js
===================================================================
--- frontend/src/Components/Hooks/Restaurant/useCreateMenu.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Hooks/Restaurant/useCreateMenu.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -7,5 +7,5 @@
 	const navigator = useNavigate();
 
-    const createMenu = async (id, menu, dep) => {
+    const createMenu = async (id, menu) => {
 		console.log(menu)
         console.log(id)
@@ -18,5 +18,4 @@
 					//navigator("/resources/restaurant/" + id)
 	                //history.push('/restaurant');
-					dep(prev => ++prev)
 	            })
 	            .catch((err) => {
Index: frontend/src/Components/Hooks/Restaurant/useCreateRestaurant.js
===================================================================
--- frontend/src/Components/Hooks/Restaurant/useCreateRestaurant.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Hooks/Restaurant/useCreateRestaurant.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -15,5 +15,5 @@
 			.post(`/restaurant/add`, restaurant, {
 				params: {
-					userId: JSON.parse(localStorage.getItem('user')).userId,
+					userId: localStorage.getItem('userId')
 				}
 			}) 
Index: frontend/src/Components/Hooks/Restaurant/useCreateTable.js
===================================================================
--- frontend/src/Components/Hooks/Restaurant/useCreateTable.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Hooks/Restaurant/useCreateTable.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -13,5 +13,5 @@
 	            .then((res) => {
 					console.log(res)
-					refresh(Math.random())
+					refresh(prev => ++prev)
 	                //history.push('/restaurant');
 	            })
Index: frontend/src/Components/Hooks/Transport/useCreateTransport.js
===================================================================
--- frontend/src/Components/Hooks/Transport/useCreateTransport.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Hooks/Transport/useCreateTransport.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -4,10 +4,10 @@
 
 const useCreateTransport = () => {
-	const userId = JSON.parse(localStorage.getItem('user')).userId
+
     const createTransport = async (transport, edit) => {
 			if(!edit)
 			{
 				await axios
-	            .post(`/transport/add/` + userId, transport)
+	            .post(`/transport/add`, transport) 
 	            .then((res) => {
 	                //history.push('/transport');
Index: frontend/src/Components/Hooks/User/useCreateUser.js
===================================================================
--- frontend/src/Components/Hooks/User/useCreateUser.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Hooks/User/useCreateUser.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -10,5 +10,5 @@
 	            .post(`/register`, user) 
 	            .then((res) => {
-	                window.location.href = "http://localhost:8080/login"
+	                navigator("/login")
 	            })
 	            .catch((err) => {
Index: frontend/src/Components/Hooks/User/useLogin.js
===================================================================
--- frontend/src/Components/Hooks/User/useLogin.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Hooks/User/useLogin.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,35 +1,47 @@
-import { useState } from "react";
+import React from "react";
+
 import axios from "../../../axios.js";
-import {useAuth} from "../../Context/AuthContext"; // Assuming you have axios configured
+import { Navigate, useAsyncValue, useNavigate } from "react-router-dom";
+import LoginForm from "../../Login/LoginForm.js";
 
 const useLogin = () => {
-	const [loading, setLoading] = useState(false);
-	const [error, setError] = useState(null);
-	const Auth = useAuth();
 
-	const handleLoginCallback = async () => {
-		setLoading(true);
+    const navigator = useNavigate()
+    //const history = useNavigate();
+    const login = async (loginData) => {
+		console.log({loginData})
+		console.log(loginData)
+        await axios
+	            .post(`/api/login`, {
+                    username: loginData.email,
+                    password: loginData.password
+                }, {
+                    headers: { 
+                        "Content-Type": "application/x-www-form-urlencoded"
+                    }
+                }) 
+	            .then((res) => {
+					const sessionId = res.data.auth.details.sessionId;
+					const userId = res.data.auth.principal.userID;
+					
+					localStorage.setItem("sessionId", sessionId);
+					localStorage.setItem("userId", userId);
+					if(sessionId === null)
+					{
+					}
+                    navigator("/home")
+	            })
+	            .catch((err) => {
+	                console.log(err);
+	            })
+	            .finally(() => {
+	            });
+    }
 
-		try {
-			const response = await axios.get("http://localhost:8080/principal");
-
-			// Extract the needed attributes from the response
-			const { id, role, username } = response.data;
-
-			Auth.userLogin({userId: id, username: username, role: role})
-
-		} catch (err) {
-			setError(err.message);
-		} finally {
-			setLoading(false);
-		}
+	return {
+		login
 	};
 
-	return {
-		loading,
-		error,
-		handleLoginCallback,
-	};
-};
+}
 
 export default useLogin;
Index: ontend/src/Components/Hooks/useApprove.js
===================================================================
--- frontend/src/Components/Hooks/useApprove.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,31 +1,0 @@
-import axios from "../../axios";
-import { useState, useEffect, useContext } from 'react';
-
-const useApprove = (url, dep) => {
-
-    const [data, setData] = useState(null);
-    const [isLoading, setIsLoading] = useState(true);
-    const [changed, setChanged] = useState(0)
-    const getData = async (uurl) => {
-        await axios.
-        get(uurl).then((res) => {
-            setData(res.data);
-        }).catch((error) => {
-            console.log(error)
-        })
-            .finally(() => {
-                setIsLoading(false);
-            });
-    };
-
-    return {
-        data,
-        setData,
-        isLoading,
-        getData,
-        setChanged
-    };
-};
-
-
-export default useApprove;
Index: frontend/src/Components/Hooks/useCreate.js
===================================================================
--- frontend/src/Components/Hooks/useCreate.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Hooks/useCreate.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -15,4 +15,5 @@
             .then((res) => {
                 //history.push('/hotel');
+                console.log(res)
                 getData(prev => ++prev)
                 getData2(prev => ++prev)
Index: frontend/src/Components/Hooks/useGet.js
===================================================================
--- frontend/src/Components/Hooks/useGet.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Hooks/useGet.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,4 +1,4 @@
 import axios from "../../axios";
-import {useState, useEffect, useContext} from 'react';
+import { useState, useEffect, useContext } from 'react';
 
 const useGet = (url, dep) => {
@@ -11,15 +11,10 @@
         console.log(localStorage.getItem("sessionId"))
         console.log("url od get " + uurl)
-        await axios.get(uurl, {maxRedirects: 0}).then((res) => {
-            console.log(res);
-            // if(res.request.responseURL.includes('8080'))
-            // {
-            //     window.location.href = "/login"
-            // }
-            setData(res.data);
-        }).catch((error) => {
-            console.log(error)
-            // window.location.href = '/error'
-        })
+        await axios.
+            get(uurl).then((res) => {
+                setData(res.data);
+            }).catch((err) => {
+                console.log(err)
+            })
             .finally(() => {
                 setIsLoading(false);
@@ -31,5 +26,5 @@
         getData(url);
     }, [dep, url, changed]);
-
+    
     return {
         data,
Index: frontend/src/Components/HotelDetails/ReviewsCarousel.js
===================================================================
--- frontend/src/Components/HotelDetails/ReviewsCarousel.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/HotelDetails/ReviewsCarousel.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -2,33 +2,29 @@
 import Carousel from "react-bootstrap/Carousel";
 import Review from "../BecomeAHost/Review";
-import {useState} from "react";
-import {Container} from "react-bootstrap";
-import review from "../BecomeAHost/Review";
+import { useState } from "react";
+import { Container } from "react-bootstrap";
 
-const ReviewsCarousel = (props) => {
+const ReviewsCarousel = () => {
     document.body.style.backgroundColor = "white";
 
     const [index, setIndex] = useState(0);
-
+  
     const handleSelect = (selectedIndex) => {
-        setIndex(selectedIndex);
+      setIndex(selectedIndex);
     };
     return (<>
-        <Container
-            className="py-3 px-1 my-4">
-            <Carousel className="w-100" activeIndex={index} onSelect={handleSelect} indicators={false}>
-                {props.reviews.length === 0 && <Carousel.Item>
-                    <Container>
-                        <h4>За избраниот ресурс се уште не се достапни оценки!</h4>
-                    </Container>
-                </Carousel.Item>}
-                {props.reviews.map((rev) => {
-                    return (
-                        <Carousel.Item>
-                            <Review key={review.reviewId} review={rev}></Review>
-                        </Carousel.Item>
-                    )
-                })}
-            </Carousel>
+                    <Container
+        className="py-3 px-1 my-4">
+                <Carousel className="w-100" activeIndex={index} onSelect={handleSelect}>
+                  <Carousel.Item>
+                  <Review></Review>
+                  </Carousel.Item>
+                  <Carousel.Item>
+                  <Review></Review>
+                  </Carousel.Item>
+                  <Carousel.Item>
+                    <Review></Review>
+                  </Carousel.Item>
+                </Carousel>
         </Container>
     </>)
Index: frontend/src/Components/HotelDetails/Room.js
===================================================================
--- frontend/src/Components/HotelDetails/Room.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/HotelDetails/Room.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,104 +1,92 @@
-import React, {useState} from "react";
-import {Container, Row, Col, Image} from "react-bootstrap";
-import {LuFan} from "react-icons/lu";
-import {TbToolsKitchen2} from "react-icons/tb"
-import {MdBalcony} from "react-icons/md"
-import Carousel from "react-bootstrap/Carousel";
+import React from "react";
+import { Container, Row, Col, Image } from "react-bootstrap";
+import { LuFan } from "react-icons/lu";
+import { TbToolsKitchen2 } from "react-icons/tb"
+import { MdBalcony } from "react-icons/md"
 
 const Room = (props) => {
-    console.log("OD SOBATA")
-    const [index, setIndex] = useState(0);
-    const handleSelect = (selectedIndex) => {
-        setIndex(selectedIndex);
-    };
-    console.log(props)
-    return (
-        <>
-            <Container style={{width: "100%"}}>
-                <Row className="g-0">
-                    <Col
-                        className="d-flex justify-content-center"
-                        style={{maxWidth: "40%"}}
-                    >
-                        <Carousel activeIndex={index} onSelect={handleSelect}>
-                            {props.data.images.map(img => {
-                                let link = img.url;
-                                if (img.url.includes('Desktop')) {
-                                    link = 'http://localhost:8080/download?fileName=' + encodeURIComponent(img.url);
-                                }
-                                return (<Carousel.Item>
-                                    <Image src={link}/>
-                                </Carousel.Item>)
-                            })}
-                            {props.data.images.length === 0 && <h4>
-                                Не се достапни слики!
-                            </h4>}
-                        </Carousel>
-                    </Col>
-                    <Col>
-                        <Container className="m-auto">
-                            <Row>
-                                <h5 style={{textAlign: "left"}}>
-                                    {props.data.hotelRoomName}
-                                </h5>
-                            </Row>
-                            <Row>
-                                {props.data.airCondition && <Col className="col-auto">
-                                    <Container className="py-1 px-1">
-                                        <Row className="d-flex flex-row">
-                                            <Col className="m-0 w-25 py-1">
-                                                <LuFan
-                                                    className="my-0 "
-                                                    color="#159895"
-                                                    size={25}
-                                                ></LuFan>
-                                            </Col>
-                                            <Col className="w-75 d-flex p-0">
-                                                <h6 style={{fontSize: "10px"}} className="m-auto">
-                                                    Климатизирано
-                                                </h6>
-                                            </Col>
-                                        </Row>
-                                    </Container>
-                                </Col>}
-                                {props.data.kitchenAvailable && <Col className="col-auto">
-                                    <Container
-                                        className="py-1 px-1">
-                                        <Row className="d-flex flex-row">
-                                            <Col className="m-0 w-25 py-1">
-                                                <TbToolsKitchen2 className="my-0 " color="#159895"
-                                                                 size={25}></TbToolsKitchen2>
-                                            </Col>
-                                            <Col className="w-75 d-flex p-0">
-                                                <h6 style={{fontSize: "10px"}} className="m-auto">Кујна</h6>
-                                            </Col>
-                                        </Row>
-                                    </Container>
-                                </Col>}
-                                {props.data.balcony && <Col className="col-auto">
-                                    <Container
-                                        className="py-1 px-1">
-                                        <Row className="d-flex flex-row">
-                                            <Col className="m-0 w-25 py-1">
-                                                <MdBalcony className="my-0 " color="#159895" size={25}></MdBalcony>
-                                            </Col>
-                                            <Col className="w-75 d-flex p-0">
-                                                <h6 style={{fontSize: "10px"}} className="m-auto">Тераса</h6>
-                                            </Col>
-                                        </Row>
-                                    </Container>
-                                </Col>}
-                            </Row>
-                            <Row>
-                                <p style={{textAlign: "left", textDecoration: "none"}}>
-                                    {props.data.hotelRoomDescription}
-                                </p>
-                            </Row>
-                        </Container>
-                    </Col>
-                </Row>
+  return (
+    <>
+      <Container style={{ width: "100%" }}>
+        <Row className="g-0">
+          <Col
+            className="d-flex justify-content-center"
+            style={{ maxWidth: "40%" }}
+          >
+            <Image
+              src="https://img.freepik.com/free-photo/luxury-classic-modern-bedroom-suite-hotel_105762-1787.jpg?w=2000"
+              style={{
+                height: "10em",
+                borderRadius: "1em",
+                boxShadow: "0 4px 20px lightblue",
+                maxWidth: "100%",
+              }}
+              className="m-auto"
+            ></Image>
+          </Col>
+          <Col>
+            <Container className="m-auto">
+              <Row>
+                <h5 style={{ textAlign: "left" }}>
+                  {props.data.hotelRoomName}
+                </h5>
+              </Row>
+              <Row>
+                {props.data.airCondition && <Col className="col-auto">
+                  <Container className="py-1 px-1">
+                    <Row className="d-flex flex-row">
+                      <Col className="m-0 w-25 py-1">
+                        <LuFan
+                          className="my-0 "
+                          color="#159895"
+                          size={25}
+                        ></LuFan>
+                      </Col>
+                      <Col className="w-75 d-flex p-0">
+                        <h6 style={{ fontSize: "10px" }} className="m-auto">
+                          Климатизирано
+                        </h6>
+                      </Col>
+                    </Row>
+                  </Container>
+                </Col>}
+                {props.data.kitchenAvailable && <Col className="col-auto">
+                  <Container
+                    className="py-1 px-1">
+                                          <Row className="d-flex flex-row">
+                        <Col className="m-0 w-25 py-1">
+                        <TbToolsKitchen2 className="my-0 " color="#159895" size={25}></TbToolsKitchen2>
+                        </Col>
+                        <Col className="w-75 d-flex p-0" >
+                        <h6 style={{fontSize: "10px"}} className="m-auto">Кујна</h6>
+                        </Col>
+                      </Row>
+                  </Container>
+                </Col>}
+                {props.data.balcony && <Col className="col-auto">
+                <Container
+                    className="py-1 px-1">
+                                          <Row className="d-flex flex-row">
+                        <Col className="m-0 w-25 py-1">
+                        <MdBalcony className= "my-0 " color="#159895" size={25}></MdBalcony>
+                        </Col>
+                        <Col className="w-75 d-flex p-0" >
+                        <h6 style={{fontSize: "10px"}} className="m-auto">Тераса</h6>
+                        </Col>
+                      </Row>
+                  </Container>
+                </Col>}
+              </Row>
+              <Row>
+                <p style={{ textAlign: "left", textDecoration: "none" }}>
+                  {props.data.hotelRoomDescription}
+                </p>
+              </Row>
             </Container>
-        </>
-);
+          </Col>
+        </Row>
+      </Container>
+    </>
+  );
 };
 
Index: frontend/src/Components/HotelDetails/RoomRow.js
===================================================================
--- frontend/src/Components/HotelDetails/RoomRow.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/HotelDetails/RoomRow.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -8,7 +8,5 @@
     const [getData, setData] = useState(0);
     const room = props.room
-    console.log("dasdaskjdhaskdjashdkajk")
     console.log(props.data)
-    console.log(Array(props.data.find(x => x.hotelRoom.hotelRoomId === room.hotelRoomId)))
     return (
         <>
@@ -24,5 +22,5 @@
                     }}>
                         <option></option>
-                        {[...Array(props.data.filter(x => x.hotelRoom.hotelRoomId === room.hotelRoomId).reduce((sum, x) => x.numberOfBeds)).keys()].map(x => {
+                        {[...Array(props.data.find(x => x.hotelRoom.hotelRoomId === room.hotelRoomId).numberOfBeds).keys()].map(x => {
                             return (
                                 <option value={x+1}  >{x + 1}</option>
Index: frontend/src/Components/HotelDetails/RoomsTable.js
===================================================================
--- frontend/src/Components/HotelDetails/RoomsTable.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/HotelDetails/RoomsTable.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,3 +1,4 @@
 import React from "react";
+import Room from "./Room";
 import Form from "react-bootstrap/Form";
 import FaHotel from "react-icons/fa";
@@ -8,4 +9,7 @@
 const RoomsTable = (props) => {
 
+
+    console.log(props.data[0].hotelRoomAvailableId)
+    console.log([...Array(props.data[0].numberOfBeds).keys()])
     return (
         <>
@@ -20,7 +24,5 @@
                 </thead>
                 <tbody>
-                {Array.from(
-                    new Set(props.data.map((x) => JSON.stringify(x.hotelRoom)))
-                ).map((roomString) => JSON.parse(roomString)).map((room) => {
+                {Array.from(new Set(props.data.map(x => x.hotelRoom))).map((room) => {
                     return (
                         <>
Index: frontend/src/Components/HotelEdit/HotelEditTab.js
===================================================================
--- frontend/src/Components/HotelEdit/HotelEditTab.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/HotelEdit/HotelEditTab.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,119 +1,99 @@
 import React from "react";
-import {Container, Col, Row, Image, Nav, Tab} from "react-bootstrap";
-import {useState} from "react";
-import {FaTaxi, FaHotel} from "react-icons/fa";
-import {MdOutlineStickyNote2} from "react-icons/md";
+import { Container, Col, Row, Image, Nav, Tab } from "react-bootstrap";
+import { useState } from "react";
+import { FaTaxi, FaHotel } from "react-icons/fa";
+import { MdOutlineStickyNote2 } from "react-icons/md";
 import AddNew from "../Resources/AddNew";
-import {BiData} from "react-icons/bi"
+import { BiData } from "react-icons/bi"
 import RoomListing from "./RoomListing";
 import HotelEditForm from "./HotelEditForm";
 import AddHotelForm from "../Forms/AddHotelForm";
 import EditModal from "../Resources/EditModal";
-import AddAvailability from "../Resources/AddAvailability";
-import useGet from "../Hooks/useGet";
-import ReservationListing from "./ReservationListing";
 
 function HotelEditTab(props) {
-    const [activeTab, setActiveTab] = useState("/hotel");
-    const [modalData, setModalData] = useState("");
-    const [show, setShow] = useState(false);
+  const [activeTab, setActiveTab] = useState("/hotel");
+  const [modalData, setModalData] = useState("");
+  const [show, setShow] = useState(false);
 
-    console.log(props)
+  const handleClose = () => setShow(false);
+  const handleShow = () => {
+    //e.preventDefault();
+    setShow(true);
 
-    const {
-        data,
-        isLoading,
-        setData,
-        getData,
-        setChanged
-    } = useGet(`/hotel/${props.displayRoom.hotelId}/reservations/active`)
+  };
 
-    !isLoading && console.log(data)
+  const showModal = (modalData) => {
+    setModalData(modalData);
+    handleShow();
+  }
+  console.log(props.displayRoom)
 
-    const handleClose = () => setShow(false);
-    const handleShow = () => {
-        //e.preventDefault();
-        setShow(true);
+  const handleSelect = (eventKey) => {
+    setActiveTab(eventKey);
+  };
 
-    };
-
-    const showModal = (modalData) => {
-        setModalData(modalData);
-        handleShow();
-    }
-    console.log(props.displayRoom)
-
-    const handleSelect = (eventKey) => {
-        setActiveTab(eventKey);
-    };
-
-    return (
-        <Container className="rounded-5">
-            <Tab.Container
-                activeKey={activeTab}
-                onSelect={handleSelect}
-                className="bg-dark rounded-5"
-            >
-                <Nav
-                    fill
-                    variant="tabs"
-                    className="bg-body rounded-top-5"
-                    activeKey="/hotel"
-                    id="tab_item"
-                >
-                    <Nav.Item className="tab_item rounded-5">
-                        <Nav.Link eventKey="/hotel" className="text-left rounded-5">
+  return (
+    <Container className="rounded-5">
+      <Tab.Container
+        activeKey={activeTab}
+        onSelect={handleSelect}
+        className="bg-dark rounded-5"
+      >
+        <Nav
+          fill
+          variant="tabs"
+          className="bg-body rounded-top-5"
+          activeKey="/hotel"
+          id="tab_item"
+        >
+          <Nav.Item className="tab_item rounded-5">
+            <Nav.Link eventKey="/hotel" className="text-left rounded-5">
               <span className="ikona">
                 <FaHotel
-                    color="#159895"
-                    style={{lineHeight: "100em"}}
-                    size={"1.5em"}
-                    className="mx-3"
+                  color="#159895"
+                  style={{ lineHeight: "100em" }}
+                  size={"1.5em"}
+                  className="mx-3"
                 />
               </span>
-                            <span className="ikona">Соби</span>
-                        </Nav.Link>
-                    </Nav.Item>
-                    <Nav.Item className="tab_item">
-                        <Nav.Link eventKey="/restaurant">
+              <span className="ikona">Соби</span>
+            </Nav.Link>
+          </Nav.Item>
+          <Nav.Item className="tab_item">
+            <Nav.Link eventKey="/restaurant">
               <span className="ikona">
-                <MdOutlineStickyNote2 color="#159895" size={"1.5em"} className="mx-3"/>
+                <MdOutlineStickyNote2 color="#159895" size={"1.5em"} className="mx-3" />
               </span>
-                            <span className="ikona">Резервации</span>
-                        </Nav.Link>
-                    </Nav.Item>
-                    <Nav.Item className="tab_item rounded-5">
-                        <Nav.Link eventKey="/transport" className="text-left rounded-5">
+              <span className="ikona">Резервации</span>
+            </Nav.Link>
+          </Nav.Item>
+          <Nav.Item className="tab_item rounded-5">
+            <Nav.Link eventKey="/transport" className="text-left rounded-5">
               <span className="ikona">
-                <BiData color="#159895" size={"1.5em"} className="mx-3"/>
+                <BiData color="#159895" size={"1.5em"} className="mx-3" />
               </span>
-                            <span className="ikona">Општи податоци</span>
-                        </Nav.Link>
-                    </Nav.Item>
-                </Nav>
+              <span className="ikona">Општи податоци</span>
+            </Nav.Link>
+          </Nav.Item>
+        </Nav>
 
-                <Tab.Content className="py-5 px-3 border rounded-bottom-5 bg-light">
-                    <Tab.Pane eventKey="/hotel">
-                        {props.displayRoom.hotelRooms.map((room) => {
-                            return <RoomListing key={room.hotelRoomId} data={room} showModal={showModal}/>
-                        })}
-                        <EditModal show={show} handleClose={handleClose} type="room" room={modalData}></EditModal>
-                        <AddNew Id={props.displayRoom.hotelId} refresh={props.refresh} type="room"/>
-                    </Tab.Pane>
-                    <Tab.Pane eventKey="/restaurant">
-                        {!isLoading && data.map((res) => {
-                            return (
-                                <ReservationListing type={'hotel'} data={res}/>
-                            )
-                        })}
-                        {/*<AddNew type="restaurant"/>*/}
-                    </Tab.Pane>
-                    <Tab.Pane eventKey="/transport">
-                        <AddHotelForm refresh={props.refresh} hotel={props.displayRoom}/>
-                    </Tab.Pane>
-                </Tab.Content>
-            </Tab.Container>
-        </Container>
-    );
+        <Tab.Content className="py-5 px-3 border rounded-bottom-5 bg-light">
+          <Tab.Pane eventKey="/hotel">
+          {props.displayRoom.hotelRooms.map((room) => {
+              return <RoomListing key={room.hotelRoomId} data={room} showModal={showModal}/>
+            })}
+            <EditModal show={show} handleClose={handleClose} type="room" room={modalData}></EditModal>
+            <AddNew Id={props.displayRoom.hotelId} refresh={props.refresh} type="room"/>
+          </Tab.Pane>
+          <Tab.Pane eventKey="/restaurant">
+            <AddNew type="restaurant"/>
+          </Tab.Pane>
+          <Tab.Pane eventKey="/transport">
+            <AddHotelForm refresh={props.refresh} hotel={props.displayRoom}/>
+          </Tab.Pane>
+        </Tab.Content>
+      </Tab.Container>
+    </Container>
+  );
 }
 
Index: ontend/src/Components/HotelEdit/ReservationListing.js
===================================================================
--- frontend/src/Components/HotelEdit/ReservationListing.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,47 +1,0 @@
-import {Col, Container, Row} from "react-bootstrap";
-import React from "react";
-
-const ReservationListing = (props) => {
-
-    const dateFormatter = (str) => {
-        const inputDate = new Date(str);
-
-        const options = {
-            year: '2-digit',
-            month: '2-digit',
-            day: '2-digit',
-        };
-
-        return inputDate.toLocaleString('de-DE', options);
-    }
-
-    return(
-        <>
-            <Container className="py-3 px-1 my-4"
-                       style={{
-                           border: "4px solid #159895",
-                           borderRadius: "1em",
-                           boxShadow: "0 3px 5px #159895",
-                           maxWidth: "90%",
-                       }}>
-                <Row>
-                    <Col md={8} className="d-flex flex-column justify-content-start ps-5">
-                        <h3 style={{fontWeight: "bold"}} className={'text-start'}>Резервација за:</h3>
-                        {props.type === 'hotel' && <h4 className={'text-start'}>{props.data.hotelRoom.hotelRoomName}</h4>}
-                        {props.type === 'restaurant' && <h4 className={'text-start'}>{'Маса за ' + props.data.restaurantsTable.noSeats}</h4>}
-                        {props.type === 'transport' && <h4 className={'text-start'}>{props.data.transportRoute.from + ' ' + props.data.transportRoute.to}</h4>}
-                        {props.type === 'transport' && <h4 className={'text-start'}>{props.data.noSeats + ' ' + 'патници'}</h4>}
-                        <h4 className={'text-start'}>{props.data.user.name + ' ' + props.data.user.surname}</h4>
-                        {props.type !== 'transport' && <h5
-                            className={'text-start'}>{dateFormatter(props.data.dateFrom) + ' - ' + dateFormatter(props.data.dateTo)}</h5>}
-                    </Col>
-                    <Col md={4} className="d-flex flex-column justify-content-center align-content-center">
-                        {props.type === 'hotel' && <h3>Вкупна цена: <br></br>{props.data.hotelRoom.price}$</h3>}
-                    </Col>
-                </Row>
-            </Container>
-        </>
-    )
-}
-
-export default ReservationListing;
Index: frontend/src/Components/HotelEdit/RoomListing.js
===================================================================
--- frontend/src/Components/HotelEdit/RoomListing.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/HotelEdit/RoomListing.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -6,5 +6,4 @@
 import {AiOutlinePlusCircle} from "react-icons/ai"
 import AddAvailability from "../Resources/AddAvailability";
-import AddImages from "../Resources/AddImages";
 
 
@@ -41,7 +40,4 @@
                         <h2>Цена по ноќ: {props.data.price}</h2>
                     </Col>
-                    <Col className="d-flex flex-column justify-content-center align-content-center">
-                        <AddImages type="room" Id={props.data.hotelRoomId} />
-                    </Col>
 
                     <Col className="d-flex flex-column justify-content-center align-content-center">
Index: ontend/src/Components/ImageUpload/ImageUpload.js
===================================================================
--- frontend/src/Components/ImageUpload/ImageUpload.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,37 +1,0 @@
-import React, { useState } from "react";
-import { Button, Container, FormControl, FormGroup, FormLabel, Image } from "react-bootstrap";
-import useFileChange from "../Hooks/FilesUpload/useFileChange";
-
-const ImageUpload = () => {
-    const { onFileChangeHandler } = useFileChange();
-    const [selectedFiles, setSelectedFiles] = useState([]);
-
-    return (
-        <Container>
-            <FormGroup className="mb-3">
-                <FormLabel>Upload Images:</FormLabel>
-                <FormControl
-                    type="file"
-                    multiple
-                    onChange={(e) => setSelectedFiles(Array.from(e.target.files))}
-                />
-            </FormGroup>
-            <Button onClick={() => onFileChangeHandler(selectedFiles)}>
-                Upload Files
-            </Button>
-            <Container>
-                {selectedFiles.map((file, index) => (
-                    <Image
-                        key={index}
-                        onClick={() => {}}
-                        fluid
-                        src={URL.createObjectURL(file)}
-                        alt={`Uploaded Image ${index + 1}`}
-                    />
-                ))}
-            </Container>
-        </Container>
-    );
-};
-
-export default ImageUpload;
Index: frontend/src/Components/Layout/Navbar/Navigation.js
===================================================================
--- frontend/src/Components/Layout/Navbar/Navigation.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Layout/Navbar/Navigation.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,4 +1,4 @@
-import {Button, Modal} from "react-bootstrap";
-import React, {useState} from "react";
+import { Button } from "react-bootstrap";
+import React from "react";
 import { Container, Image, Navbar } from "react-bootstrap";
 import { Nav } from "react-bootstrap";
@@ -7,6 +7,4 @@
 import useGet from "../../Hooks/useGet";
 import axios from "../../../axios.js";
-import {useAuth} from "../../Context/AuthContext";
-import ImageUpload from "../../ImageUpload/ImageUpload";
 //import logo from 'assets/images/logo.png';
 //src="https://upload.wikimedia.org/wikipedia/commons/0/08/Vergina_Sun_-_Golden_Larnax.png"
@@ -14,12 +12,7 @@
 function Navigation(props) {
   const navigator = useNavigate();
-  const Auth = useAuth();
-  const isLoggedIn = Auth.userIsAuthenticated();
 
-  const [show, setShow] = useState(false);
-
-  const handleClose = () => setShow(false);
-  const handleShow = () => setShow(true);
-
+  const { data, setData, isLoading, getData } = useGet("/username");
+  
   return (
     <>
@@ -31,5 +24,5 @@
       >
         <Container>
-          <Navbar.Brand href="/home">
+          <Navbar.Brand href="#home">
             <span className="ikona">
               <Image
@@ -55,7 +48,7 @@
               </Nav.Link>
               <Nav.Link className="m-2" href="#pricing">
-                <Button onClick={handleShow}></Button>
+                Pricing
               </Nav.Link>
-              {!isLoggedIn && (
+              {!isLoading && !data && (
                 <Button
                   className="m-2"
@@ -63,5 +56,5 @@
                   style={{ backgroundColor: "#159895" }}
                   onClick={() => {
-                    window.location.href = ("http://localhost:8080/login");
+                    navigator("/login");
                   }}
                 >
@@ -69,8 +62,8 @@
                 </Button>
               )}
-              {isLoggedIn && (
+              {!isLoading && data && (
                 <>
                   <Nav.Link className="m-2" href="/profile">
-                    {Auth.getUser().username}
+                    {data}
                   </Nav.Link>
                   <Button
@@ -81,6 +74,5 @@
                       await axios.get("/logout")
                       .then((res) => {
-                        console.log(res);
-                        Auth.userLogout();
+                        console.log(res)
                       })
                       .catch((err) => {
@@ -100,19 +92,4 @@
       </Navbar>
       <br />
-
-      <Modal show={show} onHide={handleClose}>
-        <Modal.Header closeButton>
-          <Modal.Title>Modal heading</Modal.Title>
-        </Modal.Header>
-        <Modal.Body><ImageUpload/></Modal.Body>
-        <Modal.Footer>
-          <Button variant="secondary" onClick={handleClose}>
-            Close
-          </Button>
-          <Button variant="primary" onClick={handleClose}>
-            Save Changes
-          </Button>
-        </Modal.Footer>
-      </Modal>
     </>
   );
Index: frontend/src/Components/Listings/HotelListing.js
===================================================================
--- frontend/src/Components/Listings/HotelListing.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Listings/HotelListing.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,3 +1,3 @@
-import {Col, Container, Image, Row, Button, Badge} from "react-bootstrap";
+import {Col, Container, Image, Row, Button} from "react-bootstrap";
 import {BsFillPersonFill} from "react-icons/bs";
 import {MdOutlineLocalOffer} from "react-icons/md";
@@ -5,18 +5,5 @@
 
 function HotelListing(props) {
-
-    const getMarketingMessage = (num) => {
-        switch (num){
-            case 1:
-                return "Достапно само денес"
-            case 2:
-                return "Последна соба"
-            case 3:
-                return "Специјална цена"
-        }
-    }
-
     console.log(props)
-    const randomInt = Math.floor(Math.random() * (3)) + 1;
     return (
         <>
@@ -28,5 +15,4 @@
                     boxShadow: "0 3px 5px lightblue",
                     maxWidth: "60%",
-                    backgroundColor: props.data.promoted ? "#e1f7fa" : ""
                 }}
             >
@@ -45,8 +31,5 @@
                     <Col>
                         <Row>
-                            <h3>{props.data.hotelName}
-                            {props.data.marketed && randomInt !== 3 && <h6><Badge bg="warning">{getMarketingMessage(randomInt)}</Badge></h6>}
-                            {props.data.promoted && <h6><Badge bg="primary">Најпопуларно</Badge></h6>}
-                            </h3>
+                            <h3>{props.data.hotelName}</h3>
                         </Row>
                         <Row>
@@ -97,5 +80,6 @@
                       }}
                   >
-                        {(props.data.hotelReviews.reduce((sum, r) => sum + r.numStar, 0) / props.data.hotelReviews.length).toFixed(1)}
+                    {/* {props.data.hotelRating} */}
+                      9.1
                   </span>
                                 </Col>
@@ -107,6 +91,5 @@
                                 >
                                     <Row>
-                                        <h4>{props.data.marketed && randomInt === 3 && <h6><Badge bg="warning">{getMarketingMessage(randomInt)}</Badge></h6>}
-                                            {props.data.totalPrice}$</h4>
+                                        <h4>{props.data.totalPrice}$</h4>
                                     </Row>
                                     <Row className="w-100">
Index: ontend/src/Components/Listings/RestaurantListing.js
===================================================================
--- frontend/src/Components/Listings/RestaurantListing.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,122 +1,0 @@
-import {Col, Container, Image, Row, Button} from "react-bootstrap";
-import {BsFillPersonFill} from "react-icons/bs";
-import {MdOutlineLocalOffer} from "react-icons/md";
-import {Link} from "react-router-dom";
-
-function RestaurantListing(props) {
-    console.log(props)
-    return (
-        <>
-            <Container
-                className="py-3 px-1 my-4"
-                style={{
-                    border: "4px solid lightblue",
-                    borderRadius: "1em",
-                    boxShadow: "0 3px 5px lightblue",
-                    maxWidth: "60%",
-                }}
-            >
-                <Row className="mx-1 my-1" style={{textAlign: "left"}}>
-                    <Col className="d-flex justify-content-center">
-                        <Image
-                            src="https://www.imgacademy.com/sites/default/files/legacyhotel.jpg"
-                            style={{
-                                height: "15em",
-                                borderRadius: "1em",
-                                boxShadow: "0 4px 20px lightblue",
-                                maxWidth: "100%",
-                            }}
-                        ></Image>
-                    </Col>
-                    <Col>
-                        <Row>
-                            <h3>{props.data.restaurantName}</h3>
-                        </Row>
-                        <Row>
-                            <h8>{props.data.restaurantLocation}, Македонија</h8>
-                        </Row>
-                        <Row className="mt-3 ml-2">
-                            <Col className="md-4">
-                                <h4 style={{fontWeight: "bold"}}></h4>
-                            </Col>
-                        </Row>
-                        <Row>
-                            <Col className="ml-5">
-                                {/* <h5>{props.data.hotelCaption}</h5> */}
-                                <h5>Тип на кујна</h5>
-                            </Col>
-                        </Row>
-                        <Row>
-                            <Col>
-                                <h6>{props.data.cousineType}</h6>
-                            </Col>
-                        </Row>
-                    </Col>
-                    <Col>
-                        <Container
-                            fluid
-                            className="px-0"
-                            style={{
-                                display: "flex",
-                                flexDirection: "column",
-                                alignItems: "flex-end",
-                                justifyContent: "space-between",
-                                height: "100%",
-                            }}
-                        >
-                            <Row className="justify-self-end" style={{textAlign: "right"}}>
-                                <Col style={{textAlign: "right"}}>
-                                    <h6>Многу добро</h6>
-                                </Col>
-                                <Col>
-                  <span
-                      style={{
-                          backgroundColor: "#159895",
-                          padding: "0.75em",
-                          fontWeight: "bold",
-                          fontSize: "1.25rem",
-                          borderRadius: "0.75em",
-                          color: "white",
-                      }}
-                  >
-                     {props.data.averageScore.toFixed(1)}
-                  </span>
-                                </Col>
-                            </Row>
-                            <Row className="w-75 justify-self-end">
-                                <Container
-                                    className="justify-self-end"
-                                    style={{textAlign: "right"}}
-                                >
-                                    <Row>
-
-                                    </Row>
-                                    <Row className="w-100">
-                                        <Link
-                                            to="/details/restaurant"
-                                            state={{data: props.data, params: props.params}}
-                                            className="w-100"
-                                        >
-                                            <Button
-                                                className="m-2"
-                                                size="md"
-                                                style={{backgroundColor: "#159895"}}
-                                                onClick={() => {
-                                                }}
-                                            >
-                                                <MdOutlineLocalOffer size={"1.5em"}></MdOutlineLocalOffer>{" "}
-                                                Кон понудата
-                                            </Button>
-                                        </Link>
-                                    </Row>
-                                </Container>
-                            </Row>
-                        </Container>
-                    </Col>
-                </Row>
-            </Container>
-        </>
-    );
-}
-
-export default RestaurantListing;
Index: frontend/src/Components/Listings/SortButton.js
===================================================================
--- frontend/src/Components/Listings/SortButton.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Listings/SortButton.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -3,10 +3,7 @@
 import { BsSortUp } from "react-icons/bs"
 
-const SortButton = (props) => {
+const SortButton = () => {
     return (
-        <Dropdown onSelect={(event, x) => {
-            console.log(event)
-            props.setSortingArg(event)
-        }}>
+        <Dropdown>
           <Dropdown.Toggle variant="success" id="dropdown-basic" size="lg">
           <span className="ikona my-1"><BsSortUp/></span>
@@ -14,9 +11,9 @@
           </Dropdown.Toggle>
     
-          <Dropdown.Menu >
-              {props.type !== 'restaurant' && <Dropdown.Item eventKey={'priceDesc'}>Цена растечки</Dropdown.Item>}
-              {props.type !== 'restaurant' && <Dropdown.Item eventKey={'priceAsc'}>Цена опаѓачки</Dropdown.Item>}
-              {props.type !== 'transport' && <Dropdown.Item eventKey={'nameAsc'}>Име растечки</Dropdown.Item>}
-              {props.type !== 'transport' && <Dropdown.Item eventKey={'nameDesc'}>Име опаѓачки</Dropdown.Item>}
+          <Dropdown.Menu>
+            <Dropdown.Item href="#/action-1">Цена растечки</Dropdown.Item>
+            <Dropdown.Item href="#/action-2">Цена опаѓачки</Dropdown.Item>
+            <Dropdown.Item href="#/action-3">Име растечки</Dropdown.Item>
+            <Dropdown.Item href="#/action-3">Име опаѓачки</Dropdown.Item>
           </Dropdown.Menu>
         </Dropdown>
Index: frontend/src/Components/Listings/TransportListing.js
===================================================================
--- frontend/src/Components/Listings/TransportListing.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Listings/TransportListing.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -9,5 +9,5 @@
 
 const TransportListing = (props) => {
-
+  
 
 
@@ -56,5 +56,5 @@
                     }}
                   >
-                      {(props.data.reviews.reduce((sum, r) => sum + r.numStar, 0) / props.data.reviews.length).toFixed(1)}
+                    9.1
                   </span>
                 </Col>
@@ -69,5 +69,5 @@
                   </Row>
                   <Row className="w-100">
-                    <Link to="/details/transport" state={ {data: props.data, params: props.params} }>
+                    <Link to="/details/transport" state={ {data: props.data} }>
                     <Button
                       className="m-2"
Index: frontend/src/Components/Login/LoginForm.js
===================================================================
--- frontend/src/Components/Login/LoginForm.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Login/LoginForm.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -5,17 +5,14 @@
 import useLogin from "../Hooks/User/useLogin";
 import { Link } from "react-router-dom";
-import useCreate from "../Hooks/useCreate";
-import {useAuth} from "../Context/AuthContext";
 
-const LoginForm = (props) => {
+const LoginForm = () => {
   const { formData, onFormChange, onCheckBoxChange, setFormData } = useFormData(
     {
-      username: "",
+      email: "",
       password: "",
     }
   );
 
-  const { createEntity } = useCreate();
-  const Auth = useAuth();
+  const { login } = useLogin();
 
   return (
@@ -30,8 +27,11 @@
             type="email"
             placeholder="Enter email"
-            name="username"
+            name="email"
             onChange={onFormChange}
             value={formData.email}
           />
+          <Form.Text className="text-muted">
+            Вашите податоци никогаш нема да бидат споделени.
+          </Form.Text>
         </Form.Group>
 
@@ -46,12 +46,12 @@
           />
         </Form.Group>
-        {/*<Form.Group className="mb-3" controlId="formBasicCheckbox">*/}
-        {/*  <Form.Check type="checkbox" label="Check me out" />*/}
-        {/*</Form.Group>*/}
-        {/*<Link to={"/register"} style={{textDecoration: "none"}}>*/}
-        {/*  <Form.Text className="text-muted" style={{color: "#159895!important"}} >*/}
-        {/*    Регистритрај се*/}
-        {/*  </Form.Text>*/}
-        {/*</Link>*/}
+        <Form.Group className="mb-3" controlId="formBasicCheckbox">
+          <Form.Check type="checkbox" label="Check me out" />
+        </Form.Group>
+        <Link to={"/register"} style={{textDecoration: "none"}}>
+          <Form.Text className="text-muted" style={{color: "#159895!important"}} >
+            Регистритрај се
+          </Form.Text>
+        </Link>
         <Form.Group className="my-1">
           <Button
@@ -62,5 +62,5 @@
               e.preventDefault();
               console.log(formData);
-              createEntity(`/users/${Auth.getUser().userId}/connect`, formData, props.refresh)
+              login(formData)
             }}
           >
@@ -68,5 +68,5 @@
               <AiFillLock />
             </span>
-            <span className="ikona mx-3">Поврзи</span>
+            <span className="ikona mx-3">Најави се</span>
           </Button>
         </Form.Group>
Index: ontend/src/Components/LoginCallback.js
===================================================================
--- frontend/src/Components/LoginCallback.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,23 +1,0 @@
-import React, { useEffect } from "react";
-import { useLocation, useNavigate } from "react-router-dom";
-import useLogin from "./Hooks/User/useLogin";
-
-const LoginCallbackComponent = () => {
-    const location = useLocation();
-    const navigator = useNavigate();
-    const { handleLoginCallback } = useLogin();
-
-    useEffect(() => {
-        // Call a function to handle the callback and extract data
-        handleLoginCallback();
-        navigator("/home");
-    }, []);
-
-    return (
-        <div>
-            Redirecting...
-        </div>
-    );
-};
-
-export default LoginCallbackComponent;
Index: ontend/src/Components/Misc/PrivateRoute.js
===================================================================
--- frontend/src/Components/Misc/PrivateRoute.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,18 +1,0 @@
-import React from 'react'
-import { Navigate } from 'react-router-dom'
-import {useAuth} from "../Context/AuthContext";
-
-function PrivateRoute({ children }) {
-  const { userIsAuthenticated } = useAuth()
-  if(userIsAuthenticated())
-  {
-    return children;
-  }
-  else
-  {
-    window.location.href = "http://localhost:8080/login";
-  }
-  return userIsAuthenticated() ? children : <Navigate to="http://localhost:8080/login" />
-}
-
-export default PrivateRoute
Index: frontend/src/Components/ProfilePage/DataForm.js
===================================================================
--- frontend/src/Components/ProfilePage/DataForm.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/ProfilePage/DataForm.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -11,5 +11,5 @@
 
   const handleClose = () =>  setShow(false);
-  const handleShow = (e) => {
+  const handleShow = (e) => { 
     e.preventDefault();
     setShow(true);
@@ -29,6 +29,5 @@
             <Form.Group as={Col} controlId="name">
               <Form.Label>Име</Form.Label>
-              <Form.Control type="text" value={props.data["name"]}
-              name={"name"}/>
+              <Form.Control type="text" value={props.data["name"]} />
             </Form.Group>
 
@@ -39,5 +38,4 @@
                 placeholder=""
                 value={props.data["surname"]}
-                name={"surname"}
               />
             </Form.Group>
@@ -47,6 +45,5 @@
             <Form.Group as={Col} controlId="name">
               <Form.Label>Датум на раѓање</Form.Label>
-              <Form.Control type="date" value={props.data["dateOfBirth"]}
-              name={"dateOfBirth"}/>
+              <Form.Control type="date" value={props.data["dateOfBirth"]} />
             </Form.Group>
 
@@ -57,5 +54,4 @@
                 placeholder=""
                 value={props.data["country"]}
-                name={"country"}
               />
             </Form.Group>
@@ -64,6 +60,5 @@
           <Form.Group className="mb-3" controlId="address">
             <Form.Label>Адреса</Form.Label>
-            <Form.Control type="text" value={props.data["address"]}
-            name={"address"}/>
+            <Form.Control type="text" value={props.data["address"]} />
           </Form.Group>
 
@@ -71,6 +66,5 @@
             <Form.Group as={Col} controlId="city">
               <Form.Label>Град</Form.Label>
-              <Form.Control type="text" value={props.data["city"]}
-              name={"city"}/>
+              <Form.Control type="text" value={props.data["city"]} />
             </Form.Group>
 
@@ -81,5 +75,4 @@
                 placeholder=""
                 value={props.data["zip"]}
-                name={"zip"}
               />
             </Form.Group>
@@ -89,6 +82,5 @@
             <Form.Group as={Col} controlId="email">
               <Form.Label>Email</Form.Label>
-              <Form.Control type="email" value={props.data["email"]}
-              name={"email"}/>
+              <Form.Control type="email" value={props.data["email"]} />
             </Form.Group>
 
@@ -99,5 +91,4 @@
                 placeholder=""
                 value={props.data["mobile"]}
-                name={"mobile"}
               />
             </Form.Group>
Index: frontend/src/Components/Resources/AddAvailability.js
===================================================================
--- frontend/src/Components/Resources/AddAvailability.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Resources/AddAvailability.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,4 +1,4 @@
- import React from "react";
-import { Container, Row, Modal, Im } from "react-bootstrap";
+import React from "react";
+import { Container, Row, Modal } from "react-bootstrap";
 import { useState } from "react";
 import { AiOutlinePlusCircle } from "react-icons/ai"
@@ -42,6 +42,6 @@
         <Modal.Body>
             {props.type === "hotel" && <AddHotelForm/>}
-            {props.type === "room" && <AddRoomAvailablityForm refresh={props.refresh} close={props.closeModal}  hotelRoomId={props.hotelRoomId}/>}
-            {props.type === "table" && <AddTableAvailablityForm refresh={props.refresh} close={props.closeModal} table={props.table}/>}
+            {props.type === "room" && <AddRoomAvailablityForm hotelRoomId={props.hotelRoomId}/>}
+            {props.type === "table" && <AddTableAvailablityForm table={props.table}/>}
             {props.type === "restaurant" && <AddRestaurantForm/>}
             {props.type === "transport" && <AddTransportForm/>}
Index: ontend/src/Components/Resources/AddImages.js
===================================================================
--- frontend/src/Components/Resources/AddImages.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,98 +1,0 @@
-import React from "react";
-import {Container, Row, Modal, Image, FormGroup, FormLabel, FormControl, Button} from "react-bootstrap";
-import {useState} from "react";
-import {AiOutlinePlusCircle} from "react-icons/ai"
-import AddHotelForm from "../Forms/AddHotelForm";
-import AddRoomForm from "../Forms/AddRoomForm";
-import AddRestaurantForm from "../Forms/AddRestaurantForm";
-import AddTransportForm from "../Forms/AddTransportForm";
-import AddItemMenuForm from "../Forms/AddItemMenuForm";
-import AddRoomAvailablityForm from "../Forms/AddRoomAvailablityForm";
-import AddTableAvailablityForm from "../Forms/AddTableAvailabilityForm";
-import {FaImage} from "react-icons/fa";
-import useGet from "../Hooks/useGet";
-import useFileChange from "../Hooks/FilesUpload/useFileChange";
-
-
-const AddImages = (props) => {
-
-    const [show, setShow] = useState(false);
-    const {data, isLoading, getData, setData, setChanged} = useGet(`/${props.type}/${props.Id}/images`)
-    const { onFileChangeHandler } = useFileChange();
-    const [selectedFiles, setSelectedFiles] = useState([]);
-
-    console.log(props.Id)
-
-    const handleClose = () => setShow(false);
-    const handleShow = (e) => {
-        e.preventDefault();
-        setShow(true);
-
-    };
-
-    !isLoading && console.log(data)
-
-
-    return (<>
-        <Container onClick={handleShow}>
-            <h5>Слики</h5>
-            <div className="d-flex justify-content-center align-content-center"><FaImage size={50}
-                                                                                         color="#159895"></FaImage>
-            </div>
-
-        </Container>
-
-        {handleShow && <Modal size={'xl'} show={show} onHide={handleClose}>
-            <Modal.Header closeButton>
-                <Modal.Title style={{color: "#159895"}}>
-                    Слики за ресурс
-                </Modal.Title>
-            </Modal.Header>
-            <Modal.Body>
-                <Container>
-                    {!isLoading && data.map((image) => {
-                        let link = image.url;
-                        if (image.url.includes('Desktop')) {
-                            link = 'http://localhost:8080/download?fileName=' + encodeURIComponent(image.url);
-                        }
-                        console.log(link)
-                        return (
-                            <Image src={link} thumbnail width={171} height={180}/>
-                        )
-                    })}
-                </Container>
-                <Container>
-                    <FormGroup className="mb-3">
-                        <FormLabel>Upload Images:</FormLabel>
-                        <FormControl
-                            type="file"
-                            multiple
-                            onChange={(e) => setSelectedFiles(Array.from(e.target.files))}
-                        />
-                    </FormGroup>
-                    <Button onClick={() => {
-                        // setChanged((prev) => ++prev)
-                        onFileChangeHandler(selectedFiles, props.type, props.Id, setChanged)
-                        // setChanged((prev) => ++prev)
-                    }}>
-                        Upload Files
-                    </Button>
-                    <Container>
-                        {selectedFiles.map((file, index) => (
-                            <Image
-                                key={index}
-                                onClick={() => {
-                                }}
-                                fluid
-                                src={URL.createObjectURL(file)}
-                                alt={`Uploaded Image ${index + 1}`}
-                            />
-                        ))}
-                    </Container>
-                </Container>
-            </Modal.Body>
-        </Modal>}
-    </>)
-}
-
-export default AddImages;
Index: frontend/src/Components/Resources/AddNew.js
===================================================================
--- frontend/src/Components/Resources/AddNew.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Resources/AddNew.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -56,8 +56,8 @@
         </Modal.Header>
         <Modal.Body>
-            {props.type === "hotel" && <AddHotelForm closeModal={handleClose} refresh={props.refresh}/>}
-            {props.type === "room" && <AddRoomForm closeModal={handleClose} refresh={props.refresh} hotelId={props.Id}/>}
-            {props.type === "restaurant" && <AddRestaurantForm edit="false" closeModal={handleClose} refresh={props.refresh}/>}
-            {props.type === "transport" && <AddTransportForm closeModal={handleClose} refresh={props.refresh}/>}
+            {props.type === "hotel" && <AddHotelForm refresh={props.refresh}/>}
+            {props.type === "room" && <AddRoomForm refresh={props.refresh} hotelId={props.Id}/>}
+            {props.type === "restaurant" && <AddRestaurantForm edit="false" refresh={props.refresh}/>}
+            {props.type === "transport" && <AddTransportForm refresh={props.refresh}/>}
             {props.type === "menu" && <AddItemMenuForm Id={props.Id} refresh={props.refresh}/>}
             {props.type === "route" && <AddTripForm transportId={props.transport.transportID} setSize={setSizeXl} refresh={props.refresh}/>}
Index: frontend/src/Components/Resources/EditModal.js
===================================================================
--- frontend/src/Components/Resources/EditModal.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Resources/EditModal.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -11,5 +11,4 @@
 import EditTableForm from "../Forms/EditTableForm";
 import EditRoomForm from "../Forms/EditRoomForm";
-import EditMainRouteForm from "../Forms/EditMainRouteForm";
 
 const EditModal = (props) => {
@@ -32,10 +31,10 @@
         </Modal.Header>
         <Modal.Body>
-            {props.type === "hotel" && <AddHotelForm refresh={props.refresh}/>}
+            {props.type === "hotel" && <AddHotelForm/>}
             {props.type === "room" && <EditRoomForm refresh={props.refresh} room={props.room}/>}
             {props.type === "restaurant" && <AddRestaurantForm edit="false" refresh={props.refresh}/>}
             {props.type === "transport" && <AddTransportForm/>}
             {props.type === "menu" && <AddItemMenuForm Id={props.Id} refresh={props.refresh} menu={props.menu}/>}
-            {props.type === "route" && <EditMainRouteForm route={props.route} refresh={props.refresh}/>}
+            {props.type === "route" && <AddTripForm/>}
             {props.type === "table" && <EditTableForm table={props.table}/>}
         </Modal.Body>
Index: frontend/src/Components/Resources/ResourceListing.js
===================================================================
--- frontend/src/Components/Resources/ResourceListing.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Resources/ResourceListing.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,73 +1,69 @@
 import React from "react";
-import {useState} from "react";
-import {Col, Container, Row, Image, Modal, Button} from "react-bootstrap";
+import { useState } from "react";
+import { Col, Container, Row, Image, Modal, Button } from "react-bootstrap";
 import LoginForm from "../Login/LoginForm";
 import ChangePasswordForm from "../Forms/ChangePasswordForm";
-import AddAvailability from "./AddAvailability";
-import AddImages from "./AddImages";
 
 const ResourceListing = (props) => {
+  
+    console.log("props " + props.id)
+  
 
     const type = props.type == "hotel" ? "сместувањето" : props.type == "restaurant" ? "ресторанот" : "превозот";
     const name = props.type == "hotel" ? props.data.hotelName : props.type == "restaurant" ? props.data.restaurantName : props.data.transportName
-    const id = props.type == "hotel" ? props.data.hotelId : props.type == "restaurant" ? props.data.restaurantID : props.data.transportID
-    console.log(props.data)
-    return (<>
-        <a  style={{textDecoration: "none", color: "black"}} href={`${props.type}/${id}`}>
-            <Container className="py-3 px-1 my-4"
-                       style={{
-                           border: "4px solid #159895",
-                           borderRadius: "1em",
-                           boxShadow: "0 3px 5px #159895",
-                           maxWidth: "90%",
-                       }}>
-                <Row>
-                    <Col className="d-flex justify-content-center">
-                        <Image
-                            src="https://www.imgacademy.com/sites/default/files/legacyhotel.jpg"
-                            style={{
-                                height: "8em",
-                                borderRadius: "1em",
-                                boxShadow: "0 4px 20px lightblue",
-                                maxWidth: "100%",
-                            }}
-                        ></Image>
-                    </Col>
-                    <Col>
-                        <h2 style={{textAlign: "left"}}>{name}</h2>
-                        {props.type === "hotel" && (<>
-                            <h5 style={{textAlign: "left"}}>{props.data.hotelLocation}</h5>
-                            <h5 style={{textAlign: "left"}}>{props.data.hotelEmail}</h5>
-                        </>)}
-                        {props.type === "restaurant" && (<>
-                            <h5 style={{textAlign: "left"}}>{props.data.restaurantLocation}</h5>
-                            <h5 style={{textAlign: "left"}}>{props.data.cousineType} кујна</h5>
-                        </>)}
-                        {props.type === "transport" && (<>
-                            <h5 style={{textAlign: "left"}}>{props.data.carBrand}</h5>
-                            <h5 style={{textAlign: "left"}}>{props.data.carPlate}</h5>
-                        </>)}
-                    </Col>
-
-                    {props.type !== 'transport' && <Col className="d-flex flex-column justify-content-center align-content-center">
-                        <AddImages type={props.type} Id={id}/>
-                    </Col>}
-                    <Col className="d-flex justify-content-center align-content-center">
+    const id = props.type == "hotel" ? props.data.hotelId : props.type == "restaurant" ? props.data.resturantId : props.data.transportID
+    return(<> 
+    <a href={`${props.type}/${id}`} style={{textDecoration: "none", color:"black"}}>
+        <Container className="py-3 px-1 my-4"
+        style={{
+          border: "4px solid #159895",
+          borderRadius: "1em",
+          boxShadow: "0 3px 5px #159895",
+          maxWidth: "90%",
+        }}>
+            <Row>
+                <Col className="d-flex justify-content-center">
+                    <Image
+                    src="https://www.imgacademy.com/sites/default/files/legacyhotel.jpg"
+                    style={{
+                        height: "8em",
+                        borderRadius: "1em",
+                        boxShadow: "0 4px 20px lightblue",
+                        maxWidth: "100%",
+                    }}
+                    ></Image>
+                </Col>
+                <Col >
+                    <h2 style={{textAlign: "left"}}>{name}</h2>
+                    {props.type === "hotel" && (<>
+                      <h5 style={{textAlign: "left"}}>{props.data.hotelLocation}</h5>
+                      <h5 style={{textAlign: "left"}}>{props.data.hotelEmail}</h5>
+                    </>)}
+                    {props.type === "restaurant" && (<>
+                      <h5 style={{textAlign: "left"}}>{props.data.restaurantLocation}</h5>
+                      <h5 style={{textAlign: "left"}}>{props.data.cousineType} кујна</h5>
+                    </>)}
+                    {props.type === "transport" && (<>
+                      <h5 style={{textAlign: "left"}}>{props.data.carBrand}</h5>
+                      <h5 style={{textAlign: "left"}}>{props.data.carPlate}</h5>
+                    </>)}
+                </Col>
+                <Col className="d-flex justify-content-center align-content-center" >
                   <span
-                      style={{
-                          backgroundColor: "#159895",
-                          padding: "0.75em",
-                          fontWeight: "bold",
-                          fontSize: "1.8rem",
-                          borderRadius: "0.75em",
-                          color: "white",
-                          margin: "auto"
-                      }}
+                    style={{
+                      backgroundColor: "#159895",
+                      padding: "0.75em",
+                      fontWeight: "bold",
+                      fontSize: "1.8rem",
+                      borderRadius: "0.75em",
+                      color: "white",
+                      margin: "auto"
+                    }}
                   >
                     9.1
                   </span>
-                    </Col>
-                </Row>
-            </Container>
+                </Col>
+            </Row>
+        </Container>
         </a>
     </>)
Index: frontend/src/Components/Resources/ResourcesTab.js
===================================================================
--- frontend/src/Components/Resources/ResourcesTab.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Resources/ResourcesTab.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,118 +1,127 @@
-import React, {useTransition} from "react";
-import {Container, Col, Row, Image, Nav, Tab} from "react-bootstrap";
-import {useState} from "react";
-import {FaTaxi, FaHotel} from "react-icons/fa";
-import {MdRestaurant} from "react-icons/md";
+import React, { useTransition } from "react";
+import { Container, Col, Row, Image, Nav, Tab } from "react-bootstrap";
+import { useState } from "react";
+import { FaTaxi, FaHotel } from "react-icons/fa";
+import { MdRestaurant } from "react-icons/md";
 import AddNew from "./AddNew";
 import ResourceListing from "./ResourceListing";
-import {Link} from "react-router-dom";
+import { Link } from "react-router-dom";
 import useGet from "../Hooks/useGet";
 
 function ResourcesTab(props) {
-    const [activeTab, setActiveTab] = useState(props.tab);
-    const userId = JSON.parse(localStorage.getItem("user")).userId;
-    const {data, setData, isLoading, getData, setChanged} = useGet(`${props.tab}/user/${userId}`);
+  const [activeTab, setActiveTab] = useState(props.tab);
+  // const [changed, setChanged] = useState(0);
+  const userId = localStorage.getItem("userId");
+  const { data, setData, isLoading, getData, setChanged } = useGet(`${props.tab}/user/${userId}`);
 
-    const handleSelect = (eventKey) => {
-        setActiveTab(eventKey);
-        props.refresh(eventKey);
-    };
+  const handleSelect = (eventKey) => {
+    setActiveTab(eventKey);
+    console.log(props.refresh);
+    props.refresh(eventKey);
+    console.log("refresh" + eventKey);
+  };
 
-    return (
-        <Container className="rounded-5">
-            <Tab.Container
-                activeKey={activeTab}
-                onSelect={handleSelect}
-                className="bg-dark rounded-5"
-            >
-                <Nav
-                    fill
-                    variant="tabs"
-                    className="bg-body rounded-top-5"
-                    activeKey="/hotel"
-                    id="tab_item"
-                >
-                    <Nav.Item className="tab_item rounded-5">
-                        <Nav.Link href="/resources/hotel" className="text-left rounded-5">
+  !isLoading && console.log(data);
+  console.log(props.tab);
+
+  return (
+    <Container className="rounded-5">
+      <Tab.Container
+        activeKey={activeTab}
+        onSelect={handleSelect}
+        className="bg-dark rounded-5"
+      >
+        <Nav
+          fill
+          variant="tabs"
+          className="bg-body rounded-top-5"
+          activeKey="/hotel"
+          id="tab_item"
+        >
+          <Nav.Item className="tab_item rounded-5">
+            <Nav.Link href="/resources/hotel" className="text-left rounded-5">
               <span className="ikona">
                 <FaHotel
-                    color="#159895"
-                    style={{lineHeight: "100em"}}
-                    size={"1.5em"}
-                    className="mx-3"
+                  color="#159895"
+                  style={{ lineHeight: "100em" }}
+                  size={"1.5em"}
+                  className="mx-3"
                 />
               </span>
-                            <span className="ikona">Сместувања</span>
-                        </Nav.Link>
-                    </Nav.Item>
-                    <Nav.Item className="tab_item">
-                        <Nav.Link href="/resources/restaurant">
+              <span className="ikona">Сместувања</span>
+            </Nav.Link>
+          </Nav.Item>
+          <Nav.Item className="tab_item">
+            <Nav.Link href="/resources/restaurant">
               <span className="ikona">
-                <MdRestaurant color="#159895" size={"1.5em"} className="mx-3"/>
+                <MdRestaurant color="#159895" size={"1.5em"} className="mx-3" />
               </span>
-                            <span className="ikona">Ресторани</span>
-                        </Nav.Link>
-                    </Nav.Item>
-                    <Nav.Item className="tab_item rounded-5">
-                        <Nav.Link
-                            href="/resources/transport"
-                            className="text-left rounded-5"
-                        >
+              <span className="ikona">Ресторани</span>
+            </Nav.Link>
+          </Nav.Item>
+          <Nav.Item className="tab_item rounded-5">
+            <Nav.Link
+              href="/resources/transport"
+              className="text-left rounded-5"
+            >
               <span className="ikona">
-                <FaTaxi color="#159895" size={"1.5em"} className="mx-3"/>
+                <FaTaxi color="#159895" size={"1.5em"} className="mx-3" />
               </span>
-                            <span className="ikona">Превоз</span>
-                        </Nav.Link>
-                    </Nav.Item>
-                </Nav>
+              <span className="ikona">Превоз</span>
+            </Nav.Link>
+          </Nav.Item>
+        </Nav>
 
-                <Tab.Content className="py-5 px-3 border rounded-bottom-5 bg-light">
-                    <Tab.Pane eventKey="/hotel" key="hotelPane">
-                        {props.tab == "/hotel" && !isLoading && data != null &&
-                            data.map((hotel) => {
-                                return (
-                                    //<Link style={{textDecoration: "none"}} key={hotel.hotelId} to={"/resources/hotel/" + hotel.hotelId}>
-                                    <ResourceListing
-                                        on
-                                        key={hotel.hotelId}
-                                        id={hotel.hotelId}
-                                        type="hotel"
-                                        data={hotel}
-                                    />
-                                    //</Link>
-                                );
-                            })}
-                        <AddNew type="hotel" refresh={setChanged}/>
-                    </Tab.Pane>
-                    <Tab.Pane eventKey="/restaurant" key="restaurantPane">
-                        {props.tab == "/restaurant" && !isLoading && data != null &&
-                            data.map((restaurant) => {
-                                return (
-                                    <ResourceListing
-                                        key={restaurant.restaurantID}
-                                        type="restaurant"
-                                        data={restaurant}
-                                    />);
-                            })}
-                        <AddNew type="restaurant" refresh={setChanged}/>
-                    </Tab.Pane>
-                    <Tab.Pane eventKey="/transport" key="transportPane">
-                        {props.tab == "/transport" && !isLoading && data.length > 0 &&
-                            data.map((transport) => {
-                                return (
-                                    <ResourceListing
-                                        key={transport.transportId}
-                                        id={transport.transportId}
-                                        type="transport"
-                                        data={transport}
-                                    />
-                                );
-                            })}
-                        <AddNew type="transport" refresh={setChanged}/>
-                    </Tab.Pane>
-                </Tab.Content>
-            </Tab.Container>
-        </Container>
-    );
+        <Tab.Content className="py-5 px-3 border rounded-bottom-5 bg-light">
+          <Tab.Pane eventKey="/hotel" key="hotelPane">
+            {props.tab == "/hotel" && !isLoading && data != null &&
+              data.map((hotel) => {
+                return (
+                  <Link key={hotel.hotelId} to={"/resources/hotel/" + hotel.hotelId}>
+                    <ResourceListing
+                      key={hotel.hotelId}
+                      id={hotel.hotelId}
+                      type="hotel"
+                      data={hotel}
+                    />
+                  </Link>
+                );
+              })}
+            <AddNew type="hotel" refresh={setChanged} />
+          </Tab.Pane>
+          <Tab.Pane eventKey="/restaurant" key="restaurantPane">
+            {props.tab == "/restaurant" && !isLoading && data != null &&
+              data.map((restaurant) => {
+                console.log("mapiranje " + restaurant)
+                return (
+                  <Link key={restaurant.restaurantId} to={"/resources/restaurant/" + restaurant.restaurantID}>
+                    <ResourceListing
+                      key={restaurant.restaurantId}
+                      type="restaurant"
+                      data={restaurant}
+                    />
+                  </Link>
+                );
+              })}
+            <AddNew type="restaurant" refresh={setChanged}/>
+          </Tab.Pane>
+          <Tab.Pane eventKey="/transport" key="transportPane">
+            {props.tab == "/transport" && !isLoading && data.length > 0 &&
+              data.map((transport) => {
+                return (
+                  <ResourceListing
+                    key={transport.transportId}
+                    id={transport.transportId}
+                    type="transport"
+                    data={transport}
+                  />
+                );
+              })}
+            <AddNew type="transport" refresh={setChanged}/>
+          </Tab.Pane>
+        </Tab.Content>
+      </Tab.Container>
+    </Container>
+  );
 }
 
Index: frontend/src/Components/RestaurantDetails/Carousel.js
===================================================================
--- frontend/src/Components/RestaurantDetails/Carousel.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/RestaurantDetails/Carousel.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -5,5 +5,10 @@
 import { Row } from 'react-bootstrap';
 
-function MenuCarousel(props) {
+function MenuCarousel() {
+    const [index, setIndex] = useState(0);
+
+    const handleSelect = (selectedIndex) => {
+        setIndex(selectedIndex);
+    };
 
     return (
@@ -12,5 +17,15 @@
             <Row className='d-flex justify-content-center align-items-center'><h2>Мени</h2></Row>
             <hr className='m-2'></hr>
-            <Menu images={props.images} menu={props.menu}></Menu>
+            <Carousel activeIndex={index} onSelect={handleSelect}>
+                <Carousel.Item>
+                    <Menu></Menu>
+                </Carousel.Item>
+                <Carousel.Item>
+                    <Menu></Menu>
+                </Carousel.Item>
+                <Carousel.Item>
+                    <Menu></Menu>
+                </Carousel.Item>
+            </Carousel>
         </>
     );
Index: frontend/src/Components/RestaurantDetails/Menu.js
===================================================================
--- frontend/src/Components/RestaurantDetails/Menu.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/RestaurantDetails/Menu.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,52 +1,67 @@
-import React, {useState} from "react";
-import {Col, Container, Row, Carousel} from "react-bootstrap";
+import React from "react";
+import { Col, Container, Row } from "react-bootstrap";
 import MenuItem from "./MenuItem";
 
-const Menu = (props) => {
-    const menu = props.menu
-
-    console.log(menu)
-    const partitionBy3 = (arr) => {
-        const rowPartitions = Array.from({length: Math.ceil(arr.length / 5)}, (v, i) =>
-            arr.slice(i * 5, i * 5 + 5)
-        );
-        return Array.from({length: Math.ceil(rowPartitions.length / 2)}, (v, i) =>
-            rowPartitions.slice(i * 2, i * 2 + 2)
-        );
-    }
-
-    const [ind, setIndex] = useState(0);
-
-    const handleSelect = (selectedIndex) => {
-        setIndex(selectedIndex);
-    };
-
-
-
+const Menu = () =>{
 
     return (<>
-        <Carousel activeIndex={ind} onSelect={handleSelect} indicators={false}>
-            {partitionBy3(menu).map((slides, index) => {
-                return (
-                    <Carousel.Item key={index}>
-                        {slides.map((row) => {
-                            return (
-                                <Row>
-                                    {row.map((menuItem) => {
-                                        return (
-                                            <Col>
-                                                <MenuItem images={    props.images.filter(x => {
-                                                    console.log(x)
-                                                    return x.menu.menuId === menuItem.menuId
-                                                })} data={menuItem}/>
-                                            </Col>
-                                        )
-                                    })}
-                                </Row>
-                            )
-                        })}
-                    </Carousel.Item>)
-            })}
-        </Carousel>
+
+        <Container>
+            <Row>
+                <Col>
+                    <MenuItem>
+                    
+                    </MenuItem>
+                </Col>
+                <Col>
+                    <MenuItem>
+                    
+                    </MenuItem>
+                </Col>
+                <Col>
+                    <MenuItem>
+                    
+                    </MenuItem>
+                </Col>
+                <Col>
+                    <MenuItem>
+                    
+                    </MenuItem>
+                </Col>
+                <Col>
+                    <MenuItem>
+                    
+                    </MenuItem>
+                </Col>
+            </Row>
+            <Row>
+                <Col>
+                    <MenuItem>
+                    
+                    </MenuItem>
+                </Col>
+                <Col>
+                    <MenuItem>
+                    
+                    </MenuItem>
+                </Col>
+                <Col>
+                    <MenuItem>
+                    
+                    </MenuItem>
+                </Col>
+                <Col>
+                    <MenuItem>
+                    
+                    </MenuItem>
+                </Col>
+                <Col>
+                    <MenuItem>
+                    
+                    </MenuItem>
+                </Col>
+            </Row>
+        </Container>
+    
     </>)
 }
Index: frontend/src/Components/RestaurantDetails/MenuItem.js
===================================================================
--- frontend/src/Components/RestaurantDetails/MenuItem.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/RestaurantDetails/MenuItem.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,71 +1,42 @@
 import React from "react";
-import {Col, Row, Image, Container} from "react-bootstrap";
-import Carousel from "react-bootstrap/Carousel";
+import { Col, Row, Image, Container } from "react-bootstrap";
 
-const MenuItem = (props) => {
-
-    const data = props.data;
-    console.log(props)
+const MenuItem = () => {
     return (<>
-
-        <a href="#" style={{textDecoration: "none", color: "black"}}>
-            <Container className="py-3 px-1 my-4"
-                       style={{
-                           border: "4px solid #159895",
-                           borderRadius: "1em",
-                           boxShadow: "0 3px 5px #159895",
-                           maxWidth: "90%"
-                       }}>
-                <Row>
-                    <Col className="d-flex justify-content-center mb-3">
-                        <Carousel>
-                            {props.images.map((image) => {
-                                let link = image.url;
-                                if (image.url.includes('Desktop')) {
-                                    link = 'http://localhost:8080/download?fileName=' + encodeURIComponent(image.url);
-                                }
-                                return (
-                                    <Carousel.Item>
-                                        <img
-                                            className="d-block w-100 h-400 rounded-5"
-                                            src={link}
-                                            alt="First slide"
-                                            style={{
-                                                height: "7em",
-                                                borderRadius: "1em",
-                                                boxShadow: "0 4px 20px lightblue",
-                                                maxWidth: "100%",
-                                            }}
-                                        />
-                                    </Carousel.Item>
-                                )
-                            })}
-                            {props.images.length == 0 && <Carousel.Item>
-                                <Image
-                                    src="https://www.tasteofhome.com/wp-content/uploads/2019/01/medium-rare-steak-shutterstock_706040446.jpg"
-                                    style={{
-                                        height: "7em",
-                                        borderRadius: "1em",
-                                        boxShadow: "0 4px 20px lightblue",
-                                        maxWidth: "100%",
-                                    }}
-                                ></Image>
-                            </Carousel.Item>}
-                        </Carousel>
-                    </Col>
-                </Row>
-                <Row>
-                    <Col className="d-flex flex-column justify-content-center " style={{textAlign: "center"}}>
-                        <h4>{data.name}</h4>
-                        <h6>{data.ingredients}</h6>
-                    </Col>
-                </Row>
-                <Row>
-                    <Col className="d-flex flex-column justify-content-center align-content-center">
-
-                        <h5>Цена: {data.price}$</h5>
-                    </Col>
-                </Row>
-            </Container>
+    
+    <a href="#" style={{textDecoration: "none", color:"black"}}>
+        <Container className="py-3 px-1 my-4"
+        style={{
+          border: "4px solid #159895",
+          borderRadius: "1em",
+          boxShadow: "0 3px 5px #159895",
+          maxWidth: "90%"
+        }}>
+            <Row>
+                <Col className="d-flex justify-content-center mb-3">
+                    <Image
+                    src="https://www.tasteofhome.com/wp-content/uploads/2019/01/medium-rare-steak-shutterstock_706040446.jpg"
+                    style={{
+                        height: "7em",
+                        borderRadius: "1em",
+                        boxShadow: "0 4px 20px lightblue",
+                        maxWidth: "100%",
+                    }}
+                    ></Image>
+                </Col>
+            </Row>
+            <Row>
+                <Col className="d-flex flex-column justify-content-center " style={{textAlign: "center"}}>
+                    <h4>Име</h4>
+                    <h6>Свинско, Телешко, прасечко, ребра, чорба, тикви, компирМанЏа</h6>
+                </Col>
+            </Row>
+            <Row>
+                <Col className="d-flex flex-column justify-content-center align-content-center" >
+                  
+                  <h5>Цена: 99.99$</h5>
+                </Col>
+            </Row>
+        </Container>
         </a>
 
Index: ontend/src/Components/RestaurantDetails/Table.js
===================================================================
--- frontend/src/Components/RestaurantDetails/Table.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,38 +1,0 @@
-import {Col, Container, Image, Row} from "react-bootstrap";
-import React from "react";
-import { LuFan } from "react-icons/lu";
-import { TbToolsKitchen2 } from "react-icons/tb"
-import { MdBalcony } from "react-icons/md"
-
-const Table = (props) => {
-    return (
-        <>
-            <Container className="px-1 w-100">
-                <Row>
-                    <Col className="d-flex justify-content-center">
-                        <Image onClick={(e) => {
-                            e.preventDefault();
-                            console.log(props.data)
-                            props.showModal(props.data)
-                        }}
-                               src="https://cdnimg.webstaurantstore.com/uploads/seo_category/2019/5/table-dining-sets.jpg"
-                               style={{
-                                   height: "8em",
-                                   borderRadius: "1em",
-                                   boxShadow: "0 4px 20px lightblue",
-                                   maxWidth: "100%",
-                               }}
-                        ></Image>
-                    </Col>
-                    <Col className="d-flex flex-column justify-content-center" style={{textAlign: "left"}}>
-                        <h3>Маса</h3>
-                        <h3>Број на луѓе {props.data.noSeats}</h3>
-                    </Col>
-
-                </Row>
-            </Container>
-        </>
-    );
-};
-
-export default Table;
Index: ontend/src/Components/RestaurantDetails/TableRow.js
===================================================================
--- frontend/src/Components/RestaurantDetails/TableRow.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,83 +1,0 @@
-import React from "react";
-import { useState } from "react";
-import { Col, Container, Row, Image, Modal, Button } from "react-bootstrap";
-import Form from "react-bootstrap/Form";
-import useCreate from "../Hooks/useCreate";
-import Table from "./Table";
-import tab from "../Tab/Tab";
-const TableRow = (props) => {
-    const {createEntity} = useCreate()
-    const [getData, setData] = useState(0);
-    const [show, setShow] = useState(false);
-
-    const handleClose = () => setShow(false);
-    const handleShow = () => setShow(true);
-    const table = props.table
-    console.log(props)
-    console.log(table)
-    return (
-        <>
-            <tr>
-                <td>
-                    <Table data={table}></Table>
-                </td>
-                <td>
-                    <Form.Select aria-label="Default select example" name={'numberOfBeds'}
-                                 onChange={(e) => {
-                                     setData(e.target.value);
-                                 }}>
-                        <option></option>
-                        {[...Array(props.data.find(x => x.restaurantTable.tableId === table.tableId).numTables).keys()].map(x => {
-                            return (
-                                <option value={x+1}  >{x + 1}</option>
-                            )
-                        })}
-                    </Form.Select>
-                </td>
-                <td>
-                    <Button
-                        onClick={handleShow}
-                        className="m-2"
-                        size="md"
-                        style={{backgroundColor: "#159895"}}
-                    >
-                        Резервирај
-                    </Button>
-                </td>
-            </tr>
-
-            <Modal show={show} onHide={handleClose}>
-                <Modal.Header closeButton>
-                    <Modal.Title>Потврда на резервација</Modal.Title>
-                </Modal.Header>
-                <Modal.Body>
-                    <h3>Резервација на маса во ресторан</h3>
-                    <h3>На ден:<b>{' ' + props.params.date}</b></h3>
-                    <h3>Време од:<b>{' ' + props.params.hourFrom}</b></h3>
-                    <h3>Време до:<b>{' ' + props.params.hourTo}</b></h3>
-                    <h3>Маса за {table.noSeats} луѓе</h3>
-                </Modal.Body>
-                <Modal.Footer>
-                    <Button variant="secondary" onClick={handleClose}>
-                        Close
-                    </Button>
-                    <Button variant="primary" onClick={() => {
-                        createEntity('restaurant/reserve', {
-                            restaurantTableId: table.tableId,
-                            userId: 1,
-                            restaurantAvailibleId: props.availableId,
-                            hourFrom: props.params.hourFrom,
-                            hourTo: props.params.hourTo,
-                            date: props.params.date
-                        })
-                        handleClose();
-                    }}>
-                        Резервирај
-                    </Button>
-                </Modal.Footer>
-            </Modal>
-        </>
-    )
-}
-
-export default TableRow
Index: ontend/src/Components/RestaurantDetails/TablesTable.js
===================================================================
--- frontend/src/Components/RestaurantDetails/TablesTable.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,43 +1,0 @@
-import React from "react";
-import Form from "react-bootstrap/Form";
-import FaHotel from "react-icons/fa";
-import {Button} from "react-bootstrap";
-import useCreate from "../Hooks/useCreate";
-import TableRow from "./TableRow";
-
-const TablesTable = (props) => {
-
-    console.log(props)
-
-
-    return (
-        <>
-            <table className="m-auto table table-hover table-responsive">
-                <thead>
-                <tr>
-                    <th scope="col">Тип на маса</th>
-                    <th scope="col">Колку единици?</th>
-                    <th scope="col"></th>
-                </tr>
-                </thead>
-                <tbody>
-                {Array.from(
-                    new Set(props.data.map((x) => JSON.stringify(x.restaurantTable)))
-                ).map((roomString) => JSON.parse(roomString)).map((table) => {
-                    return (
-                        <>
-                            <TableRow
-                                params={props.params}
-                                availableId={props.data.filter(x => x.restaurantTable.tableId === table.tableId).
-                                map(x => x.restaurantAvailibleId)[0]}
-                                data={props.data} table={table} from={props.from} to={props.to}/>
-                        </>
-                    );
-                })}
-                </tbody>
-            </table>
-        </>
-    );
-};
-
-export default TablesTable;
Index: frontend/src/Components/RestaurantEdit/MenuListing.js
===================================================================
--- frontend/src/Components/RestaurantEdit/MenuListing.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/RestaurantEdit/MenuListing.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -6,5 +6,4 @@
 import { AiOutlinePlusCircle } from "react-icons/ai"
 import EditModal from "../Resources/EditModal";
-import AddImages from "../Resources/AddImages";
 
 const MenuListing = (props) => {
@@ -13,5 +12,6 @@
     console.log(props.data)
     return(<>
-    <a href="#" style={{textDecoration: "none", color:"black"}}>
+    <a href="#" onClick={(e) => {e.preventDefault(); props.showModal(props.data);
+    console.log("kliknav")} } style={{textDecoration: "none", color:"black"}}>
         <Container className="py-3 px-1 my-4"
         style={{
@@ -23,9 +23,5 @@
             <Row>
                 <Col className="d-flex justify-content-center">
-                    <Image onClick={(e) => {
-                        e.preventDefault();
-                        props.showModal(props.data);
-                        console.log("kliknav")
-                    }}
+                    <Image
                     src="https://www.tasteofhome.com/wp-content/uploads/2019/01/medium-rare-steak-shutterstock_706040446.jpg"
                     style={{
@@ -41,7 +37,4 @@
                     <h6>{props.data.ingredients}</h6>
                 </Col>
-                <Col className="d-flex flex-column justify-content-center align-content-center">
-                    <AddImages type="menu" Id={props.data.menuId} />
-                </Col>
                 
                 <Col className="d-flex flex-column justify-content-center align-content-center">
Index: frontend/src/Components/RestaurantEdit/RestaurantEditTab.js
===================================================================
--- frontend/src/Components/RestaurantEdit/RestaurantEditTab.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/RestaurantEdit/RestaurantEditTab.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -10,6 +10,4 @@
 import TableListing from "./TableListing";
 import EditModal from "../Resources/EditModal";
-import ReservationListing from "../HotelEdit/ReservationListing";
-import useGet from "../Hooks/useGet";
 
 function RestaurantEditTab(props) {
@@ -37,12 +35,4 @@
     setActiveTab(eventKey);
   };
-
-  const {
-    data,
-    isLoading,
-    setData,
-    getData,
-    setChanged: dhanged
-  } = useGet(`/restaurant/${props.displayMenu.restaurantID}/reservations/active`)
 
   console.log(props.displayMenu.restaurantID)
@@ -110,10 +100,10 @@
               return <MenuListing key={menu.menuId} data={menu} showModal={showModal}/>
             })}
-            {activeTab === '/hotel' && <EditModal show={show} refresh={props.refresh} handleClose={handleClose} type="menu" menu={modalData}></EditModal>}
+            {activeTab === '/hotel' && <EditModal show={show} handleClose={handleClose} type="menu" menu={modalData}></EditModal>}
             <AddNew Id={props.displayMenu.restaurantID} refresh={props.refresh} type="menu"/>
           </Tab.Pane>
           <Tab.Pane eventKey="/masi">
            {props.displayMenu.tables.map((table) => {
-              return <TableListing key={table.tableId} refresh={props.refresh} showModal={showModal} handleClose={handleClose} data={table}/>
+              return <TableListing key={table.tableId} showModal={showModal} data={table}/>
             })}
             {activeTab === '/masi' && <EditModal show={show} handleClose={handleClose} refresh={props.refresh} type="table"
@@ -122,9 +112,5 @@
           </Tab.Pane>
           <Tab.Pane eventKey="/restaurant">
-            {!isLoading && data.map((res) => {
-              return (
-                  <ReservationListing type={'restaurant'} data={res}/>
-              )
-            })}
+            <AddNew type="restaurant"/>
           </Tab.Pane>
           <Tab.Pane eventKey="/transport">
Index: frontend/src/Components/RestaurantEdit/TableListing.js
===================================================================
--- frontend/src/Components/RestaurantEdit/TableListing.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/RestaurantEdit/TableListing.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -41,5 +41,5 @@
                 
                 <Col className="d-flex flex-column justify-content-center align-content-center">
-                  <AddAvailability type="table" refresh={props.refresh} closeModal={props.handleClose} table={props.data}/>
+                  <AddAvailability type="table" table={props.data}/>
                 </Col>
 
Index: frontend/src/Components/SearchCriterias/SearchCriteriasBar.js
===================================================================
--- frontend/src/Components/SearchCriterias/SearchCriteriasBar.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/SearchCriterias/SearchCriteriasBar.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -2,20 +2,97 @@
 import { Container, Form, Button, Row, Col } from "react-bootstrap";
 import useFormData from "../Hooks/useFormData";
-import SearchCriteriasHotel from "./SearchCriteriasHotel";
-import SearchCriteriasTransport from "./SearchCriteriasTransport";
-import SearchCriteriasRestaurant from "./SearchCriteriasRestaurant";
 
-const SearchCriteriasBar = (props) => {
+const SearchCriterias = (props) => {
 
-    const { criterias, type } = props
+  const { formData, onFormChange, onCheckBoxChange, setFormData} = useFormData(props.criterias)
+  console.log("KRITERIUMI")
+  console.log(formData)
 
-    return (
-        <>
-            {type === 'hotel' && <SearchCriteriasHotel criterias={criterias}/>}
-            {type === 'transport' && <SearchCriteriasTransport showButton={props.showButton} criterias={criterias}/>}
-            {type === 'restaurant' && <SearchCriteriasRestaurant criterias={criterias}/>}
-        </>
-    )
-}
+  return (
+    <>
+      <Container
+        className="p-1 pb-0 mb-5 mt-3 rounded-2"
+        style={{ backgroundColor: "#002B5B", width: "65%"}}
+      >
+        <Form className="rounded-5">
+          <Row className="gx-1">
+            <Col>
+              <Form.Floating className="mb-3">
+                <Form.Control
+                  size="md"
+                  type="text"
+                  placeholder="Каде ќе патувате?:"
+                  id="location"
+                  name="hotelLocation"
+                  onChange={onFormChange}
+                  value={formData.hotelLocation}
+                ></Form.Control>
+                <label htmlFor="location">Локација:</label>
+              </Form.Floating>
+            </Col>
+            <Col>
+              <Form.Floating className="mb-3">
+                <Form.Control
+                  size="md"
+                  type="date"
+                  placeholder="Датум на пристигнување:"
+                  id="dateFrom"
+                  name="dateFrom"
+                  onChange={onFormChange}
+                  value={formData.dateFrom}
+                ></Form.Control>
+                <label htmlFor="dateFrom">Датум на пристигнување:</label>
+              </Form.Floating>
+            </Col>
+            <Col>
+              <Form.Floating className="mb-3">
+                <Form.Control
+                  size="md"
+                  type="date"
+                  placeholder="Датум на заминување:"
+                  id="dateTo"
+                  name="dateTo"
+                  onChange={onFormChange}
+                  value={formData.dateTo}
+                ></Form.Control>
+                <label htmlFor="dateTo">Датум на заминување:</label>
+              </Form.Floating>
+            </Col>
+            <Col>
+              <Form.Floating className="mb-3">
+                <Form.Control
+                  size="md"
+                  type="number"
+                  placeholder="Број на гости:"
+                  id="floatingPassengers"
+                  name="numBeds"
+                  onChange={onFormChange}
+                  value={formData.numBeds}
+                ></Form.Control>
+                <label htmlFor="floatingPassengers">Број на гости:</label>
+              </Form.Floating>
+            </Col>
+            <Col>
+              <Form.Group className="my-1">
+                <Button
+                  type="submit"
+                  style={{ backgroundColor: "#159895" }}
+                  size="lg"
+                  className="w-100"
+                  onClick={(e) => {
+                    e.preventDefault();
+                    window.location.href = `/search/hotel/${formData.hotelLocation}/${formData.dateFrom}/${formData.dateTo}/${formData.numBeds}`
+                  }}
+                >
+                  <span className="ikona mx-3">Пребарај</span>
+                </Button>
+              </Form.Group>
+            </Col>
+          </Row>
+        </Form>
+      </Container>
+    </>
+  );
+};
 
-export default SearchCriteriasBar;
+export default SearchCriterias;
Index: ontend/src/Components/SearchCriterias/SearchCriteriasHotel.js
===================================================================
--- frontend/src/Components/SearchCriterias/SearchCriteriasHotel.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,98 +1,0 @@
-import React from "react";
-import { Container, Form, Button, Row, Col } from "react-bootstrap";
-import useFormData from "../Hooks/useFormData";
-
-const SearchCriteriasHotel = (props) => {
-
-  const { formData, onFormChange, onCheckBoxChange, setFormData} = useFormData(props.criterias)
-
-
-
-  return (
-    <>
-      <Container
-        className="p-1 pb-0 mb-5 mt-3 rounded-2"
-        style={{ backgroundColor: "#002B5B", width: "65%"}}
-      >
-        <Form className="rounded-5">
-          <Row className="gx-1">
-            <Col>
-              <Form.Floating className="mb-3">
-                <Form.Control
-                  size="md"
-                  type="text"
-                  placeholder="Каде ќе патувате?:"
-                  id="location"
-                  name="hotelLocation"
-                  onChange={onFormChange}
-                  value={formData.hotelLocation}
-                ></Form.Control>
-                <label htmlFor="location">Локација:</label>
-              </Form.Floating>
-            </Col>
-            <Col>
-              <Form.Floating className="mb-3">
-                <Form.Control
-                  size="md"
-                  type="date"
-                  placeholder="Датум на пристигнување:"
-                  id="dateFrom"
-                  name="dateFrom"
-                  onChange={onFormChange}
-                  value={formData.dateFrom}
-                ></Form.Control>
-                <label htmlFor="dateFrom">Датум на пристигнување:</label>
-              </Form.Floating>
-            </Col>
-            <Col>
-              <Form.Floating className="mb-3">
-                <Form.Control
-                  size="md"
-                  type="date"
-                  placeholder="Датум на заминување:"
-                  id="dateTo"
-                  name="dateTo"
-                  onChange={onFormChange}
-                  value={formData.dateTo}
-                ></Form.Control>
-                <label htmlFor="dateTo">Датум на заминување:</label>
-              </Form.Floating>
-            </Col>
-            <Col>
-              <Form.Floating className="mb-3">
-                <Form.Control
-                  size="md"
-                  type="number"
-                  placeholder="Број на гости:"
-                  id="floatingPassengers"
-                  name="numBeds"
-                  onChange={onFormChange}
-                  value={formData.numBeds}
-                ></Form.Control>
-                <label htmlFor="floatingPassengers">Број на гости:</label>
-              </Form.Floating>
-            </Col>
-            <Col>
-              <Form.Group className="my-1">
-                <Button
-                  type="submit"
-                  style={{ backgroundColor: "#159895" }}
-                  size="lg"
-                  className="w-100"
-                  onClick={(e) => {
-                    e.preventDefault();
-                    window.location.href = `/search/hotel/${formData.hotelLocation}/${formData.dateFrom}/${formData.dateTo}/${formData.numBeds}`
-                  }}
-                >
-                  <span className="ikona mx-3">Пребарај</span>
-                </Button>
-              </Form.Group>
-            </Col>
-          </Row>
-        </Form>
-      </Container>
-    </>
-  );
-};
-
-export default SearchCriteriasHotel;
Index: ontend/src/Components/SearchCriterias/SearchCriteriasRestaurant.js
===================================================================
--- frontend/src/Components/SearchCriterias/SearchCriteriasRestaurant.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,124 +1,0 @@
-import React from "react";
-import {Container, Form, Button, Row, Col} from "react-bootstrap";
-import useFormData from "../Hooks/useFormData";
-import {HiMagnifyingGlass} from "react-icons/hi2";
-
-
-const timeOfArrival = () => {
-    let times = [];
-
-    for (let i = 0; i <= 23; i++) {
-        for (let j = 0; j <= 30; j += 30) {
-            let hour = i.toString().padStart(2, "0");
-            let minutes = j.toString().padStart(2, "0");
-            times.push(`${hour}:${minutes}`);
-        }
-    }
-
-    return times;
-};
-
-const SearchCriteriasRestaurant = (props) => {
-
-    const {formData, onFormChange, onCheckBoxChange, setFormData} = useFormData(props.criterias)
-    const a = timeOfArrival();
-
-    return (
-        <>
-            <Container
-                className="p-1 pb-0 mb-5 mt-3 rounded-2"
-                style={{backgroundColor: "#002B5B", width: "65%"}}
-            >
-                <Form>
-                    <Row>
-                        <Col>
-                            <Form.Floating className="mb-3">
-                                <Form.Control
-                                    size="lg"
-                                    type="text"
-                                    placeholder="Место:"
-                                    id="location"
-                                    name={'restaurantLocation'}
-                                    value={formData.restaurantLocation}
-                                    onChange={onFormChange}
-                                ></Form.Control>
-                                <label htmlFor="location">Место:</label>
-                            </Form.Floating>
-                        </Col>
-                        <Col>
-                            <Form.Floating className="mb-3">
-                                <Form.Control
-                                    size="md"
-                                    type="date"
-                                    step={3600000}
-                                    placeholder="Час од:"
-                                    id="dateFrom"
-                                    name={'date'}
-                                    value={formData.date}
-                                    onChange={onFormChange}
-                                ></Form.Control>
-                                <label htmlFor="dateFrom">Датум:</label>
-                            </Form.Floating>
-                        </Col>
-                        <Col>
-                            <Form.Floating className="mb-3">
-                                <Form.Select size="md"
-                                             name={'hourFrom'}
-                                             value={formData.hourFrom}
-                                             onChange={onFormChange}>
-                                    <option>Изберете време:</option>
-                                    {a.map((x) => {
-                                        return <option key={x}>{x}</option>;
-                                    })}
-                                </Form.Select>
-                                <label htmlFor="hour">Час од:</label>
-                            </Form.Floating>
-                        </Col>
-                        <Col>
-                            <Form.Floating className="mb-3">
-                                <Form.Select size="md"
-                                             name={'hourTo'}
-                                             value={formData.hourTo}
-                                             onChange={onFormChange}>
-                                    <option>Изберете време:</option>
-                                    {a.filter((x) => x > formData.hourFrom).map((x) => {
-                                        return <option key={x}>{x}</option>;
-                                    })}
-                                </Form.Select>
-                                <label htmlFor="hour">Час до:</label>
-                            </Form.Floating>
-                        </Col>
-                        <Col>
-                            <Form.Floating className="mb-3">
-                                <Form.Control
-                                    size="md"
-                                    type="number"
-                                    placeholder="Број на гости:"
-                                    id="floatingPassengers"
-                                    name={'numPeople'}
-                                    value={formData.numPeople}
-                                    onChange={onFormChange}
-                                ></Form.Control>
-                                <label htmlFor="floatingPassengers">Број на гости:</label>
-                            </Form.Floating>
-                        </Col>
-                        <Col>
-                            <Form.Group className="my-1">
-                                <Button type="submit" style={{backgroundColor: "#159895"}} size="lg" onClick={(e) => {
-                                    e.preventDefault();
-                                    window.location.href = `/search/restaurant/${formData.restaurantLocation}/${formData.date}/${formData.hourFrom}/${formData.hourTo}/${formData.numPeople}`
-
-                                }}>
-                                    <span className="ikona my-1"><HiMagnifyingGlass/></span>
-                                    <span className="ikona mx-3">Пребарај</span>
-                                </Button>
-                            </Form.Group>
-                        </Col>
-                    </Row>
-                </Form>
-            </Container>
-        </>
-    );
-};
-
-export default SearchCriteriasRestaurant;
Index: ontend/src/Components/SearchCriterias/SearchCriteriasTransport.js
===================================================================
--- frontend/src/Components/SearchCriterias/SearchCriteriasTransport.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,96 +1,0 @@
-import React from "react";
-import { Container, Form, Button, Row, Col } from "react-bootstrap";
-import useFormData from "../Hooks/useFormData";
-
-const SearchCriteriasTransport = (props) => {
-
-    const { formData, onFormChange, onCheckBoxChange, setFormData} = useFormData(props.criterias)
-
-    return (
-        <>
-            <Container
-                className="p-1 pb-0 mb-5 mt-3 rounded-2"
-                style={{ backgroundColor: "#002B5B", width: "65%"}}
-            >
-                <Form className="rounded-5">
-                    <Row className="gx-1">
-                        <Col>
-                            <Form.Floating className="mb-3">
-                                <Form.Control
-                                    size="md"
-                                    type="text"
-                                    placeholder="Од?:"
-                                    id="location"
-                                    name="from"
-                                    onChange={onFormChange}
-                                    value={formData.from}
-                                ></Form.Control>
-                                <label htmlFor="location">Од:</label>
-                            </Form.Floating>
-                        </Col>
-                        <Col>
-                            <Form.Floating className="mb-3">
-                                <Form.Control
-                                    size="md"
-                                    type="text"
-                                    placeholder="Од?:"
-                                    id="location"
-                                    name="to"
-                                    onChange={onFormChange}
-                                    value={formData.to}
-                                ></Form.Control>
-                                <label htmlFor="location">До:</label>
-                            </Form.Floating>
-                        </Col>
-                        <Col>
-                            <Form.Floating className="mb-3">
-                                <Form.Control
-                                    size="md"
-                                    type="date"
-                                    placeholder="Датум на заминување:"
-                                    id="dateTo"
-                                    name="date"
-                                    onChange={onFormChange}
-                                    value={formData.date}
-                                ></Form.Control>
-                                <label htmlFor="dateTo">Датум:</label>
-                            </Form.Floating>
-                        </Col>
-                        <Col>
-                            <Form.Floating className="mb-3">
-                                <Form.Control
-                                    size="md"
-                                    type="number"
-                                    placeholder="Број на патници:"
-                                    id="floatingPassengers"
-                                    name="numBeds"
-                                    onChange={onFormChange}
-                                    value={formData.numPassengers}
-                                ></Form.Control>
-                                <label htmlFor="floatingPassengers">Број на патници:</label>
-                            </Form.Floating>
-                        </Col>
-                        {props.showButton !== false && <Col>
-                            <Form.Group className="my-1">
-                                <Button
-                                    type="submit"
-                                    style={{backgroundColor: "#159895"}}
-                                    size="lg"
-                                    className="w-100"
-                                    onClick={(e) => {
-                                        e.preventDefault();
-                                        window.location.href = `/search/transport/${formData.from}/${formData.to}/${formData.date}/${formData.numPassengers}`
-                                    }}
-                                >
-                                    <span className="ikona mx-3">Пребарај</span>
-                                </Button>
-                            </Form.Group>
-                        </Col>}
-                    </Row>
-                </Form>
-            </Container>
-        </>
-    );
-};
-
-export default SearchCriteriasTransport;
Index: frontend/src/Components/Tab/TabFormHotel.js
===================================================================
--- frontend/src/Components/Tab/TabFormHotel.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Tab/TabFormHotel.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,102 +1,91 @@
 import React from "react";
-import {Button, Col, Container, Form, InputGroup, Row} from "react-bootstrap";
-import {FaMagnet} from "react-icons/fa"
-import {HiMagnifyingGlass} from "react-icons/hi2"
+import { Button, Col, Container, Form, Row } from "react-bootstrap";
+import { FaMagnet } from "react-icons/fa"
+import { HiMagnifyingGlass } from "react-icons/hi2"
 import useFormData from "../Hooks/useFormData";
 
 function TabFormHotel() {
 
-    const {formData, onFormChange, setFormData, onCheckBoxChange} = useFormData({
-        hotelLocation: undefined,
-        dateFrom: undefined,
-        dateTo: undefined,
-        numBeds: undefined,
-        flexible: false,
-    })
+  const { formData, onFormChange, setFormData } = useFormData({
+    hotelLocation: undefined,
+    dateFrom: undefined,
+    dateTo: undefined,
+    numBeds: undefined
+  })
 
-    return (
-        <Form className='rounded-5'>
-            <Row>
-                <Col>
-                    <Form.Floating className="mb-3">
-                        <Form.Control
-                            size="md"
-                            type="text"
-                            placeholder="Каде ќе патувате?:"
-                            id="location"
-                            name="hotelLocation"
-                            value={formData.hotelLocation}
-                            onChange={onFormChange}
-                        ></Form.Control>
-                        <label htmlFor="location">Локација:</label>
-                    </Form.Floating>
-                    <div className="mb-3">
-                        <Form.Check
-                            type={"checkbox"}
-                            id={`default-checkbox}`}
-                            label={`флексибилност +- 3 дена`}
-                            onChange={onCheckBoxChange}
-                            name={'flexible'}
-                            value={formData.flexible}
-                        />
-                    </div>
-                </Col>
-                <Col>
-                    <Form.Floating className="mb-3">
-                        <Form.Control
-                            size="md"
-                            type="date"
-                            placeholder="Датум на пристигнување:"
-                            id="dateFrom"
-                            name="dateFrom"
-                            value={formData.dateFrom}
-                            onChange={onFormChange}
-                        ></Form.Control>
-                        <label htmlFor="dateFrom">Датум на пристигнување:</label>
-                    </Form.Floating>
-                </Col>
-                <Col>
-                    <Form.Floating className="mb-3">
-                        <Form.Control
-                            size="md"
-                            type="date"
-                            placeholder="Датум на заминување:"
-                            id="dateTo"
-                            name="dateTo"
-                            value={formData.dateTo}
-                            onChange={onFormChange}
-                        ></Form.Control>
-                        <label htmlFor="dateTo">Датум на заминување:</label>
-                    </Form.Floating>
-                </Col>
-                <Col>
-                    <Form.Floating className="mb-3">
-                        <Form.Control
-                            size="md"
-                            type="number"
-                            placeholder="Број на гости:"
-                            id="floatingPassengers"
-                            name="numBeds"
-                            value={formData.numBeds}
-                            onChange={onFormChange}
-                        ></Form.Control>
-                        <label htmlFor="floatingPassengers">Број на гости:</label>
-                    </Form.Floating>
+  return (
+    <Form className='rounded-5' >
+      <Row>
+        <Col>
+          <Form.Floating className="mb-3">
+            <Form.Control
+              size="md"
+              type="text"
+              placeholder="Каде ќе патувате?:"
+              id="location"
+              name="hotelLocation"
+              value={formData.hotelLocation}
+              onChange={onFormChange}
+            ></Form.Control>
+            <label htmlFor="location">Локација:</label>
+          </Form.Floating>
+        </Col>
+        <Col>
+          <Form.Floating className="mb-3">
+            <Form.Control
+              size="md"
+              type="date"
+              placeholder="Датум на пристигнување:"
+              id="dateFrom"
+              name="dateFrom"
+              value={formData.dateFrom}
+              onChange={onFormChange}
+            ></Form.Control>
+            <label htmlFor="dateFrom">Датум на пристигнување:</label>
+          </Form.Floating>
+        </Col>
+        <Col>
+          <Form.Floating className="mb-3">
+            <Form.Control
+              size="md"
+              type="date"
+              placeholder="Датум на заминување:"
+              id="dateTo"
+              name="dateTo"
+              value={formData.dateTo}
+              onChange={onFormChange}
+            ></Form.Control>
+            <label htmlFor="dateTo">Датум на заминување:</label>
+          </Form.Floating>
+        </Col>
+        <Col>
+          <Form.Floating className="mb-3">
+            <Form.Control
+              size="md"
+              type="number"
+              placeholder="Број на гости:"
+              id="floatingPassengers"
+              name="numBeds"
+              value={formData.numBeds}
+              onChange={onFormChange}
+            ></Form.Control>
+            <label htmlFor="floatingPassengers">Број на гости:</label>
+          </Form.Floating>
 
-                    <Form.Group className="my-1">
-                        <Button type="submit" style={{backgroundColor: "#159895"}} size="lg"
-                                onClick={(e) => {
-                                    e.preventDefault();
-                                    window.location.href = `/search/hotel/${formData.hotelLocation}/${formData.dateFrom}/${formData.dateTo}/${formData.numBeds}/${formData.flexible}`
-                                }}>
-                            <span className="ikona my-1"><HiMagnifyingGlass/></span>
-                            <span className="ikona mx-3">Пребарај</span>
-                        </Button>
-                    </Form.Group>
-                </Col>
+          <Form.Group className="my-1">
+            <Button type="submit" style={{backgroundColor: "#159895"}} size="lg" 
+            onClick={(e) => {
+              e.preventDefault();
+              window.location.href = `/search/hotel/${formData.hotelLocation}/${formData.dateFrom}/${formData.dateTo}/${formData.numBeds}`
+            }}>
+              <span className="ikona my-1"><HiMagnifyingGlass/></span>
+              <span className="ikona mx-3">Пребарај</span>
+            </Button>
+          </Form.Group>
+        </Col>
 
-            </Row>
-        </Form>
-    );
+      </Row>
+    </Form>
+  );
 }
 
Index: frontend/src/Components/Tab/TabFormRestaurant.js
===================================================================
--- frontend/src/Components/Tab/TabFormRestaurant.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Tab/TabFormRestaurant.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,119 +1,79 @@
 import React from "react";
-import {Button, Col, Container, Form, Row} from "react-bootstrap";
-import {HiMagnifyingGlass} from "react-icons/hi2"
-import useFormData from "../Hooks/useFormData";
+import { Button, Col, Container, Form, Row } from "react-bootstrap";
+import { HiMagnifyingGlass } from "react-icons/hi2"
 
 const timeOfArrival = () => {
-    let times = [];
+  let times = [];
 
-    for (let i = 0; i <= 23; i++) {
-        for (let j = 0; j <= 30; j += 30) {
-            let hour = i.toString().padStart(2, "0");
-            let minutes = j.toString().padStart(2, "0");
-            times.push(`${hour}:${minutes}`);
-        }
+  for (let i = 0; i <= 23; i++) {
+    for (let j = 0; j <= 45; j += 15) {
+      let hour = i.toString().padStart(2, "0");
+      let minutes = j.toString().padStart(2, "0");
+      times.push(`${hour}:${minutes}`);
     }
+  }
 
-    return times;
+  return times;
 };
+
 function TabFormRestaurant() {
-    const {formData, onFormChange, setFormData} = useFormData({
-        restaurantLocation: '',
-        date: '',
-        hourFrom: '',
-        hourTo: '',
-        numPeople: ''
-    })
+  const a = timeOfArrival();
 
-
-    const a = timeOfArrival();
-
-    return (
-        <Form>
-            <Row>
-                <Col>
-                    <Form.Floating className="mb-3">
-                        <Form.Control
-                            size="lg"
-                            type="text"
-                            placeholder="Место:"
-                            id="location"
-                            name={'restaurantLocation'}
-                            value={formData.restaurantLocation}
-                            onChange={onFormChange}
-                        ></Form.Control>
-                        <label htmlFor="location">Место:</label>
-                    </Form.Floating>
-                </Col>
-                <Col>
-                    <Form.Floating className="mb-3">
-                        <Form.Control
-                            size="md"
-                            type="date"
-                            step={3600000}
-                            placeholder="Час од:"
-                            id="dateFrom"
-                            name={'date'}
-                            value={formData.date}
-                            onChange={onFormChange}
-                        ></Form.Control>
-                        <label htmlFor="dateFrom">Датум:</label>
-                    </Form.Floating>
-                </Col>
-                <Col>
-                    <Form.Floating className="mb-3">
-                        <Form.Select size="md"
-                         name={'hourFrom'}
-                         value={formData.hourFrom}
-                         onChange={onFormChange}>
-                            <option>Изберете време:</option>
-                            {a.map((x) => {
-                                return <option key={x}>{x}</option>;
-                            })}
-                        </Form.Select>
-                        <label htmlFor="hour">Час од:</label>
-                    </Form.Floating>
-                </Col>
-                <Col>
-                    <Form.Floating className="mb-3">
-                        <Form.Select size="md"
-                         name={'hourTo'}
-                         value={formData.hourTo}
-                         onChange={onFormChange}>
-                            <option>Изберете време:</option>
-                            {a.filter((x) => x > formData.hourFrom).map((x) => {
-                                return <option key={x}>{x}</option>;
-                            })}
-                        </Form.Select>
-                        <label htmlFor="hour">Час до:</label>
-                    </Form.Floating>
-                </Col>
-                <Col>
-                    <Form.Floating className="mb-3">
-                        <Form.Control
-                            size="md"
-                            type="number"
-                            placeholder="Број на гости:"
-                            id="floatingPassengers"
-                            name={'numPeople'}
-                            value={formData.numPeople}
-                            onChange={onFormChange}
-                        ></Form.Control>
-                        <label htmlFor="floatingPassengers">Број на гости:</label>
-                    </Form.Floating>
-                    <Form.Group className="my-1">
-                        <Button type="submit" style={{backgroundColor: "#159895"}} size="lg" onClick={(e) => {
-                            e.preventDefault();
-                            window.location.href = `/search/restaurant/${formData.restaurantLocation}/${formData.date}/${formData.hourFrom}/${formData.hourTo}/${formData.numPeople}`
-
-                        }}>
-                            <span className="ikona my-1"><HiMagnifyingGlass/></span>
-                            <span className="ikona mx-3">Пребарај</span>
-                        </Button>
-                    </Form.Group>
-                </Col>
-            </Row>
-        </Form>
-    );
+  return (
+    <Form>
+      <Row>
+        <Col>
+          <Form.Floating className="mb-3">
+            <Form.Control
+              size="lg"
+              type="text"
+              placeholder="Место:"
+              id="location"
+            ></Form.Control>
+            <label htmlFor="location">Место:</label>
+          </Form.Floating>
+        </Col>
+        <Col>
+          <Form.Floating className="mb-3">
+            <Form.Control
+              size="md"
+              type="date"
+              placeholder="Датум:"
+              id="dateFrom"
+            ></Form.Control>
+            <label htmlFor="dateFrom">Датум:</label>
+          </Form.Floating>
+        </Col>
+        <Col>
+          <Form.Floating className="mb-3">
+            <Form.Select size="md">
+              <option>Изберете време:</option>
+              {a.map((x) => {
+                return <option key={x}>{x}</option>;
+              })}
+            </Form.Select>
+            <label htmlFor="hour">Час:</label>
+          </Form.Floating>
+        </Col>
+        <Col>
+          <Form.Floating className="mb-3">
+            <Form.Control
+              size="md"
+              type="number"
+              placeholder="Број на гости:"
+              id="floatingPassengers"
+            ></Form.Control>
+            <label htmlFor="floatingPassengers">Број на гости:</label>
+          </Form.Floating>
+          <Form.Group className="my-1">
+            <Button type="submit" style={{backgroundColor: "#159895"}} size="lg">
+              <span className="ikona my-1"><HiMagnifyingGlass/></span>
+              <span className="ikona mx-3">Пребарај</span>
+            </Button>
+          </Form.Group>
+        </Col>
+      </Row>
+    </Form>
+  );
 }
 
Index: frontend/src/Components/Tab/TabFormTransport.js
===================================================================
--- frontend/src/Components/Tab/TabFormTransport.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/Tab/TabFormTransport.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -2,15 +2,6 @@
 import { Button, Col, Container, Form, Row } from "react-bootstrap";
 import { HiMagnifyingGlass } from "react-icons/hi2"
-import useFormData from "../Hooks/useFormData";
 
 function TabFormTransport() {
-
-  const { formData, onFormChange, setFormData } = useFormData({
-    from: undefined,
-    to: undefined,
-    date: undefined,
-    numPassengers: 0
-  })
-
   return (
     <Form>
@@ -23,7 +14,4 @@
               placeholder="Од:"
               id="floatingFrom"
-              value={formData.from}
-              name={'from'}
-              onChange={onFormChange}
             ></Form.Control>
             <label htmlFor="floatingFrom">Од:</label>
@@ -37,7 +25,4 @@
               placeholder="До:"
               id="floatingTo"
-              name={'to'}
-              value={formData.to}
-              onChange={onFormChange}
             ></Form.Control>
             <label htmlFor="floatingTo">До:</label>
@@ -51,7 +36,4 @@
               placeholder="Датум:"
               id="floatingDate"
-              name={'date'}
-              value={formData.date}
-              onChange={onFormChange}
             ></Form.Control>
             <label htmlFor="floatingDate">Датум:</label>
@@ -64,16 +46,10 @@
               type="number"
               placeholder="Број на патници:"
-              name={'numPassengers'}
               id="floatingPassengers"
-              value={formData.numPassengers}
-              onChange={onFormChange}
             ></Form.Control>
             <label htmlFor="floatingPassengers">Број на патници:</label>
           </Form.Floating>
           <Form.Group className="my-1">
-            <Button type="submit" style={{backgroundColor: "#159895"}} size="lg" onClick={(e) => {
-              e.preventDefault();
-              window.location.href = `/search/transport/${formData.from}/${formData.to}/${formData.date}/${formData.numPassengers}`
-            }}>
+            <Button type="submit" style={{backgroundColor: "#159895"}} size="lg">
               <span className="ikona my-1"><HiMagnifyingGlass/></span>
               <span className="ikona mx-3">Пребарај</span>
Index: frontend/src/Components/TransportDetails/FinalPoint.js
===================================================================
--- frontend/src/Components/TransportDetails/FinalPoint.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/TransportDetails/FinalPoint.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -17,5 +17,5 @@
     <>
       <Row>
-        {props.left === "true" && <Col className="d-flex flex-column justify-content-center col-md-4" style={{paddingLeft: "2.6rem"}}>
+        {props.left === "true" && <Col className="d-flex flex-column justify-content-center col-auto" style={{paddingLeft: "2.6rem"}}>
             <h5 className="m-auto">{getTimeAsString(props.time)}</h5>
         </Col>  }
Index: frontend/src/Components/TransportDetails/Line.js
===================================================================
--- frontend/src/Components/TransportDetails/Line.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/TransportDetails/Line.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -2,5 +2,7 @@
 
 const Line = (props) => {
-    const left = props.left === "true" ? "1.8rem" : "1.85rem";
+    console.log(props.left)
+    const left = props.left === "true" ? "9.08rem" : "2.6rem";
+    console.log({borderLeft: "5px solid #159895", height: "3em", marginLeft: left, marginTop: "-1.4rem", marginBottom: "-1.4rem"})
     return (<>
         <div style={{borderLeft: "5px solid #159895", height: "3em", marginLeft: left, marginTop: "-1.4rem", marginBottom: "-1.4rem"}}></div>
Index: frontend/src/Components/TransportDetails/RouteContainer.js
===================================================================
--- frontend/src/Components/TransportDetails/RouteContainer.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/TransportDetails/RouteContainer.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -20,5 +20,5 @@
         }}
       >
-        <Waypoint city={props.data.from} time={''}></Waypoint>
+        <Waypoint city={props.data.from} time={props.data.date}></Waypoint>
         {props.data.routes && props.data.routes.map((route, i) => {
           return <Waypoint city={route} time={props.data.times[i]}></Waypoint>
Index: frontend/src/Components/TransportDetails/Waypoint.js
===================================================================
--- frontend/src/Components/TransportDetails/Waypoint.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/TransportDetails/Waypoint.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,60 +1,38 @@
 import React from "react";
-import {Container, Row, Col} from "react-bootstrap";
-import {RxDot} from "react-icons/rx"
+import { Container, Row, Col } from "react-bootstrap";
+import { RxDot } from "react-icons/rx"
 import Line from "./Line";
 
 const Waypoint = (props) => {
-    console.log(props.left)
-    const style = props.left === "true" ? {textAlign: "left"} : {}
-    console.log(style)
+  console.log(props.left)
+  const style = props.left === "true" ? {textAlign: "left"} : {}
+  console.log(style)
 
-    const getTimeAsString = (dateString) => {
-        if(dateString === '')
-            return ''
-        const date = new Date(dateString)
-        return `${String(date.getHours()).padStart(2, '0')}:${String(date.getMinutes()).padStart(2, '0')}`;
-    }
+  const getTimeAsString = (dateString) => {
+    const date = new Date(dateString)
+    return `${String(date.getHours()).padStart(2, '0')}:${String(date.getMinutes()).padStart(2, '0')}`;
+  }
 
-    return (
-        <>
-            <Row className="d-flex flex-row gap-0">
-                {props.left === "true" &&
-                    <Col className="d-flex flex-column justify-content-center col-md-4" style={{paddingLeft: "2.6rem"}}>
-                        <h5 style={{color: props.routes === "true" ? "white" : ""}}
-                            className="m-auto">{getTimeAsString(props.time)}</h5>
-                    </Col>}
-                <Col md="auto">
-                    <RxDot size={"4rem"} color="#159895"></RxDot>
-                </Col>
-                <Col className="d-flex flex-column justify-content-center">
-                    <h3 className="my-auto" style={{
-                        ...style,
-                        fontSize: props.routes === "true" ? "1.3rem" : "",
-                        color: props.routes === "true" ? "#708090	" : ""
-                    }}>{props.city}</h3>
-                </Col>
-                {props.left !== "true" && <Col className="d-flex flex-column justify-content-center">
-                    <h5>{getTimeAsString(props.time)}</h5>
-                </Col>}
-            </Row>
-            <Row className="d-flex flex-row gap-0">
-                {props.left === "true" &&
-                    <Col className="d-flex flex-column justify-content-center col-md-4" style={{paddingLeft: "2.6rem"}}>
-
-                    </Col>}
-                <Col md="auto">
-                    <Line left={props.left}> </Line>
-                </Col>
-                <Col className="d-flex flex-column justify-content-center">
-                </Col>
-                {props.left !== "true" && <Col className="d-flex flex-column justify-content-center">
-
-                </Col>}
-            </Row>
-            {/*<Row>*/}
-            {/*<Line left={props.left}> </Line>*/}
-            {/*</Row>*/}
-        </>
-    );
+  return (
+    <>
+      <Row className="d-flex flex-row gap-0">
+      {props.left === "true" && <Col className="d-flex flex-column justify-content-center col-auto" style={{paddingLeft: "2.6rem"}}>
+            <h5 style={{color: props.routes === "true" ? "white" : "" }} className="m-auto">{getTimeAsString(props.time)}</h5>
+        </Col>}
+        <Col md="auto">
+          <RxDot size={"4rem"} color="#159895"></RxDot>
+        </Col>
+        <Col className="d-flex flex-column justify-content-center">
+          <h3 className="my-auto" style={{...style, fontSize: props.routes === "true" ? "1.3rem" : "", color: props.routes === "true" ? "#708090	" : ""}}>{props.city}</h3>
+        </Col>
+      {props.left !== "true" && <Col className="d-flex flex-column justify-content-center">
+            <h5>{getTimeAsString(props.time)}</h5>
+        </Col>}
+      </Row>
+      <Row>
+      <Line left={props.left}> </Line>
+      </Row>
+    </>
+  );
 };
 
Index: frontend/src/Components/TransportEdit/TransportEditTab.js
===================================================================
--- frontend/src/Components/TransportEdit/TransportEditTab.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/TransportEdit/TransportEditTab.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -9,19 +9,11 @@
 import TransportListing from "./TransportListing";
 import useGet from "../Hooks/useGet";
-import ReservationListing from "../HotelEdit/ReservationListing";
 
 function TransportEditTab(props) {
   const [activeTab, setActiveTab] = useState("/hotel");
-  console.log(props)
-
-
-  const {
-    data,
-    isLoading,
-    setData,
-    getData,
-    setChanged: dhanged
-  } = useGet(`/transport/${props.displayRoute.transportID}/reservations/active`)
-
+  const link = "/transport/" + props.displayRoute.transportID + "/available";
+  console.log(props.displayRoute)
+  const [changed, setChanged] = useState(0)
+  const { data, setData, isLoading, getData } = useGet(link, changed);
 
 
@@ -83,9 +75,5 @@
           </Tab.Pane>
           <Tab.Pane eventKey="/restaurant">
-            {!isLoading && data.map((res) => {
-              return (
-                  <ReservationListing type={'transport'} data={res}/>
-              )
-            })}
+            <AddNew type="restaurant"/>
           </Tab.Pane>
           <Tab.Pane eventKey="/transport">
Index: frontend/src/Components/TransportEdit/TransportListing.js
===================================================================
--- frontend/src/Components/TransportEdit/TransportListing.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/TransportEdit/TransportListing.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -9,4 +9,6 @@
 
     //const type = props.type == "hotel" ? "сместувањето" : props.type == "restaurant" ? "ресторанот" : "превозот";
+    console.log(props.data)
+    console.log(props.data.from)
     return (<>
         <a href="#" style={{textDecoration: "none", color: "black"}}>
@@ -32,4 +34,5 @@
                     <Col className="d-flex flex-column justify-content-center" style={{textAlign: "left"}}>
                         <h2>{props.data.from} - {props.data.to}</h2>
+                        {/* <h6>{props.data.routeCities}</h6> */}
                         <h6>{props.data.routes.map(x => x).join(", ")}</h6>
                     </Col>
@@ -37,5 +40,6 @@
                     <Col className="d-flex flex-column justify-content-center align-content-center">
                         <h5>Цена:</h5>
-                         <h4>{props.data.maxPrice}$</h4>
+                        {/* <h4>{props.data.routePrice}</h4> */}
+                        <h4>99$</h4>
                     </Col>
                 </Row>
Index: ontend/src/Components/UserPanel/ActiveHotelReservations.js
===================================================================
--- frontend/src/Components/UserPanel/ActiveHotelReservations.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,20 +1,0 @@
-import HotelReservationListing from "./HotelReservationListing";
-import React from "react";
-import useGet from "../Hooks/useGet";
-
-const ActiveHotelReservations = () => {
-
-    const {data, isLoading, setData, getData, setChanged} = useGet('/hotel/reservations/user/1')
-
-    return (
-        <>
-            {!isLoading && data.map((res) => {
-                return (<HotelReservationListing data={res} type={'hotel'}></HotelReservationListing>)
-            })}
-
-            {(!isLoading && data.length === 0) && <h3 className={'my-5'}>Нема податоци за одбраните критериуми!</h3>}
-        </>
-    )
-}
-
-export default ActiveHotelReservations;
Index: ontend/src/Components/UserPanel/ActiveRestaurantReservations.js
===================================================================
--- frontend/src/Components/UserPanel/ActiveRestaurantReservations.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,20 +1,0 @@
-import HotelReservationListing from "./HotelReservationListing";
-import React from "react";
-import useGet from "../Hooks/useGet";
-
-const ActiveRestaurantReservations = () => {
-
-    const {data, isLoading, setData, getData, setChanged} = useGet('/restaurant/reservations/user/1')
-
-    return (
-        <>
-            {!isLoading && data.map((res) => {
-                return (<HotelReservationListing data={res} type={'restaurant'}></HotelReservationListing>)
-            })}
-
-            {(!isLoading && data.length === 0) && <h3 className={'my-5'}>Нема податоци за одбраните критериуми!</h3>}
-        </>
-    )
-}
-
-export default ActiveRestaurantReservations;
Index: ontend/src/Components/UserPanel/ActiveTransportReservations.js
===================================================================
--- frontend/src/Components/UserPanel/ActiveTransportReservations.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,20 +1,0 @@
-import HotelReservationListing from "./HotelReservationListing";
-import React from "react";
-import useGet from "../Hooks/useGet";
-
-const ActiveTransportReservations = () => {
-
-    const {data, isLoading, setData, getData, setChanged} = useGet('/transport/reservations/user/1')
-
-    return (
-        <>
-            {!isLoading && data.map((res) => {
-                return (<HotelReservationListing data={res} type={'transport'}></HotelReservationListing>)
-            })}
-
-            {(!isLoading && data.length === 0) && <h3 className={'my-5'}>Нема податоци за одбраните критериуми!</h3>}
-        </>
-    )
-}
-
-export default ActiveTransportReservations;
Index: ontend/src/Components/UserPanel/HotelReservationListing.js
===================================================================
--- frontend/src/Components/UserPanel/HotelReservationListing.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,155 +1,0 @@
-import React from "react";
-import {useState} from "react";
-import {Col, Container, Row, Image, Modal, Button, Form} from "react-bootstrap";
-import LoginForm from "../Login/LoginForm";
-import ChangePasswordForm from "../Forms/ChangePasswordForm";
-import {FaCalendarAlt} from "react-icons/fa";
-import {MdBalcony, MdLocationOn} from "react-icons/md";
-import AddAvailability from "../Resources/AddAvailability";
-import {LuFan} from "react-icons/lu";
-import {TbToolsKitchen2} from "react-icons/tb";
-import useGet from "../Hooks/useGet";
-import data from "bootstrap/js/src/dom/data";
-import {AiOutlinePlusCircle} from "react-icons/ai";
-import { MdCancel } from "react-icons/md";
-import { MdOutlineRateReview } from "react-icons/md"
-import useFormData from "../Hooks/useFormData";
-import useCreate from "../Hooks/useCreate";
-import HotelReservationModal from "./HotelReservationModal";
-import ReviewModal from "./ReviewModal";
-
-
-const HotelReservationListing = (props) => {
-
-    const type = props.type == "hotel" ? "сместувањето" : props.type == "restaurant" ? "ресторанот" : "превозот";
-    // const name = props.type == "hotel" ? props.data.hotelName : props.type == "restaurant" ? props.data.restaurantName : props.data.transportName
-    // const id = props.type == "hotel" ? props.data.hotelId : props.type == "restaurant" ? props.data.restaurantID : props.data.transportID
-
-    console.log(props.data)
-    const { createEntity } = useCreate();
-    const dateFormatter = (str) => {
-        const inputDate = new Date(str);
-
-        const options = props.type === 'hotel' ? {
-            year: 'numeric',
-            month: '2-digit',
-            day: '2-digit',
-            hour12: false,
-        } : {
-            year: 'numeric',
-            month: '2-digit',
-            day: '2-digit',
-            hour: '2-digit',
-            minute: '2-digit',
-            hour12: false,
-        };
-
-        return inputDate.toLocaleString('de-DE', options);
-
-    }
-
-    console.log(props)
-
-    const [showReview, setShowReview] = useState(false);
-
-    const handleCloseReview = () => setShowReview(false);
-    const handleShowReview = () => setShowReview(true);
-
-    const [show, setShow] = useState(false);
-
-    const handleClose = () => setShow(false);
-    const handleShow = () => setShow(true);
-
-    return (<>
-        <Container onClick={(e) => {
-            if (e.target.id !== 'icon') {
-                handleShow();
-            }
-        }} className="py-3 px-1 my-4"
-                   style={{
-                       border: "4px solid #159895",
-                       borderRadius: "1em",
-                       boxShadow: "0 3px 5px #159895",
-                       maxWidth: "90%",
-                   }}>
-            <Row>
-                <Col className="d-flex justify-content-center">
-                    {props.type !== 'transport' && <Image
-                        src="https://www.imgacademy.com/sites/default/files/legacyhotel.jpg"
-                        style={{
-                            height: "8em",
-                            borderRadius: "1em",
-                            boxShadow: "0 4px 20px lightblue",
-                            maxWidth: "100%",
-                        }}
-                    ></Image>}
-                    {props.type === 'transport' && <Image
-                        src="https://samsung.teveotecno.com.ar/wp-content/uploads/2022/07/how-to-create-and-draw-custom-routes-with-google-maps_62d4ad146140d.jpeg"
-                        style={{
-                            height: "8em",
-                            borderRadius: "1em",
-                            boxShadow: "0 4px 20px lightblue",
-                            maxWidth: "80%",
-                        }}
-                    ></Image>}
-                </Col>
-                <Col className={'d-flex flex-column justify-content-center'}>
-                    {props.type === "hotel" && (<>
-                        <h2 style={{textAlign: "left"}}>{props.data.hotelName}</h2>
-                        <h5 style={{textAlign: "left"}}>{props.data.hotelLocation}</h5>
-                        <h5 style={{textAlign: "left"}}>{dateFormatter(props.data.dateFrom) + ' - ' + dateFormatter(props.data.dateTo)}</h5>
-                    </>)}
-                    {props.type === "restaurant" && (<>
-                        <h2 style={{textAlign: "left"}}>{props.data.restaurantName}</h2>
-                        <h5 style={{textAlign: "left"}}>{props.data.restaurantLocation}</h5>
-                        <h5 style={{textAlign: "left"}}>{dateFormatter(props.data.dateFrom) + ' - ' + dateFormatter(props.data.dateTo)}</h5>
-                    </>)}
-                    {props.type === "transport" && (<>
-                        <h5 style={{textAlign: "left"}}>{props.data.carBrand + ' ' + props.data.carType}</h5>
-                        <h5 style={{textAlign: "left"}}>{props.data.transportRoute.from + ' - ' + props.data.transportRoute.to}</h5>
-                        <h5 style={{textAlign: "left"}}>{dateFormatter(props.data.transportRoute.departure) + ' - ' + dateFormatter(props.data.transportRoute.arrival)}</h5>
-                        <h5 style={{textAlign: "left"}}>{props.data.owner.name + ' ' + props.data.owner.surname}</h5>
-                    </>)}
-                </Col>
-                {props.type === 'transport' &&
-                    <Col className="d-flex flex-column justify-content-center align-content-center">
-                        <h3>Вкупна цена: <br></br>{props.data.transportRoute.price}$</h3>
-                    </Col>}
-                {(!props.past) && <Col className="d-flex flex-column justify-content-center align-content-center">
-                    {<Container id={'ocn'} onClick={(e) => {
-                        console.log(e.target)
-                        if (e.target.id === 'icon') {
-                            createEntity(`/restaurant/${props.data.reservationId}/cancel`, props.setChanged, props.setChanged)
-                            window.location.href="/reservations"
-                        }
-                    }}>
-                        <h5 id={'icon'}>Откажи<br/>резервација</h5>
-                        <div className="d-flex justify-content-center align-content-center">
-                            <MdCancel size={50} color="#159895"/></div>
-
-                    </Container>}
-                </Col>}
-                {(props.past) && <Col className="d-flex flex-column justify-content-center align-content-center">
-                    {!props.data.reviewed && <Container id={'ocn'} onClick={(e) => {
-                        console.log(e.target)
-                        if (e.target.id === 'icon') {
-                            handleShowReview();
-                        }
-                    }}>
-                        <h5 id={'icon'}>Додади<br/>оценка</h5>
-                        <div className="d-flex justify-content-center align-content-center">
-                            <MdOutlineRateReview size={50} color="#159895"/></div>
-
-                    </Container>}
-                    {props.data.reviewed && <Container>
-                        <h5>Веќе имате <br/>оставено оценка<br/>за оваа резервација</h5>
-                    </Container>}
-                </Col>}
-            </Row>
-        </Container>
-        {props.type === 'hotel' && <HotelReservationModal setChanged={props.setChanged} show={show} handleClose={handleClose} data={props.data}/>}
-        <ReviewModal setChanged={props.setChanged} type={props.type} showReview={showReview} handleCloseReview={handleCloseReview} data={props.data}/>
-    </>)
-}
-
-export default HotelReservationListing;
Index: ontend/src/Components/UserPanel/HotelReservationModal.js
===================================================================
--- frontend/src/Components/UserPanel/HotelReservationModal.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,210 +1,0 @@
-import {Button, Col, Container, Image, Modal, Row} from "react-bootstrap";
-import {FaCalendarAlt} from "react-icons/fa";
-import {MdBalcony, MdLocationOn} from "react-icons/md";
-import {LuFan} from "react-icons/lu";
-import {TbToolsKitchen2} from "react-icons/tb";
-import React from "react";
-import useCreate from "../Hooks/useCreate";
-
-const HotelReservationModal = (props) => {
-
-    const {createEntity} = useCreate();
-
-    const dateFormatter = (str) => {
-        const inputDate = new Date(str);
-
-        const options = {
-            year: 'numeric',
-            month: '2-digit',
-            day: '2-digit',
-            hour12: false,
-        };
-
-        console.log(props)
-
-        return inputDate.toLocaleString('de-DE', options);
-
-    }
-
-    return (
-        <>
-            <Modal size={"xl"} show={props.show} onHide={props.handleClose}>
-                <Modal.Header closeButton>
-                    <Modal.Title>Детали за резервација</Modal.Title>
-                </Modal.Header>
-                <Modal.Body>
-                    <Container className="py-3 px-1 my-4" style={{maxWidth: "90%"}}>
-                        <Row className={'mb-3'}>
-                            <Col className={'px-4'}>
-                                <h3>{props.data.hotelName}</h3>
-                            </Col>
-                            <Col>
-
-                            </Col>
-                        </Row>
-                        <Row className={'mb-3'}>
-                            <Col className={'d-flex flex-column justify-content-between'}>
-                                <Row>
-                                    <Col md={'auto'}
-                                         className={'d-flex flex-column justify-content-center align-items-center ms-3'}>
-                                        <FaCalendarAlt size={'2em'}/>
-                                    </Col>
-                                    <Col md={'auto'} style={{borderRight: '1px solid black'}}>
-                                        <Row className={'w-75'}>
-                                            <h6>Пријавување</h6>
-                                        </Row>
-                                        <Row>
-                                            <h5>{dateFormatter(props.data.dateFrom)}</h5>
-                                        </Row>
-
-                                    </Col>
-                                    <Col>
-                                        <Row>
-                                            <h6>Одјавување</h6>
-                                        </Row>
-                                        <Row>
-                                            <h5>{dateFormatter(props.data.dateTo)}</h5>
-                                        </Row>
-                                    </Col>
-                                    <Col md={7}>
-
-                                    </Col>
-                                </Row>
-                                <Row>
-                                    <Col md={'auto'}
-                                         className={'d-flex flex-column justify-content-center align-items-center ms-3'}>
-                                        <MdLocationOn size={'2em'}/>
-                                    </Col>
-                                    <Col md={'auto'}>
-                                        <Row className={'w-75'}>
-                                            <h6>Адреса</h6>
-                                        </Row>
-                                        <Row>
-                                            <h5>ул. Македонска бр. 10</h5>
-                                        </Row>
-                                    </Col>
-                                    <Col>
-                                    </Col>
-
-                                </Row>
-                            </Col>
-                            <Col className={'d-flex flex-column align-items-center'}>
-                                <Image
-                                    src="https://www.imgacademy.com/sites/default/files/legacyhotel.jpg"
-                                    style={{
-                                        height: "10em",
-                                        borderRadius: "1em",
-                                        boxShadow: "0 4px 20px lightblue",
-                                        maxWidth: "100%",
-                                    }}
-                                ></Image>
-                            </Col>
-
-                        </Row>
-                    </Container>
-                    <Container>
-                        <Row className={'mb-3'}>
-                            <h4>Детали за собата</h4>
-                        </Row>
-                        <Row>
-                            <Col className="d-flex justify-content-center">
-                                <Image
-                                    src="https://img.freepik.com/free-photo/luxury-classic-modern-bedroom-suite-hotel_105762-1787.jpg?w=200"
-                                    style={{
-                                        height: "10em",
-                                        borderRadius: "1em",
-                                        boxShadow: "0 4px 20px lightblue",
-                                        maxWidth: "100%",
-                                    }}
-                                ></Image>
-                            </Col>
-                            <Col className="d-flex flex-column justify-content-center" style={{textAlign: "left"}}>
-                                <Row><h4>{props.data.hotelRoom.hotelRoomName}</h4></Row>
-                                <Row>
-                                    {props.data.hotelRoom.airConditioning && <Col className="col-auto">
-                                        <Container className="py-1 px-1">
-                                            <Row className="d-flex flex-row">
-                                                <Col className="m-0 w-25 py-1">
-                                                    <LuFan
-                                                        className="my-0 "
-                                                        color="#159895"
-                                                        size={40}
-                                                    ></LuFan>
-                                                </Col>
-                                                <Col className="w-75 d-flex p-0">
-                                                    <h6 style={{fontSize: "14px"}} className="m-auto">
-                                                        Климатизирано
-                                                    </h6>
-                                                </Col>
-                                            </Row>
-                                        </Container>
-                                    </Col>}
-                                    {props.data.hotelRoom.kitchenAvailable && <Col className="col-auto">
-                                        <Container
-                                            className="py-1 px-1">
-                                            <Row className="d-flex flex-row">
-                                                <Col className="m-0 w-25 py-1">
-                                                    <TbToolsKitchen2 className="my-0 " color="#159895"
-                                                                     size={40}></TbToolsKitchen2>
-                                                </Col>
-                                                <Col className="w-75 d-flex p-0">
-                                                    <h6 style={{fontSize: "14px"}} className="m-auto">Кујна</h6>
-                                                </Col>
-                                            </Row>
-                                        </Container>
-                                    </Col>}
-                                    {props.data.hotelRoom.balcony && <Col className="col-auto">
-                                        <Container
-                                            className="py-1 px-1">
-                                            <Row className="d-flex flex-row">
-                                                <Col className="m-0 w-25 py-1">
-                                                    <MdBalcony className="my-0 " color="#159895" size={40}></MdBalcony>
-                                                </Col>
-                                                <Col className="w-75 d-flex p-0">
-                                                    <h6 style={{fontSize: "14px"}} className="m-auto">Тераса</h6>
-                                                </Col>
-                                            </Row>
-                                        </Container>
-                                    </Col>}
-                                </Row>
-                            </Col>
-                        </Row>
-                    </Container>
-                    <Container className={'border mt-3 w-75 py-3 rounded-3'}>
-                        <Row className={'mb-3'}>
-                            <Col>
-                                <h5>4 Ноќевања</h5>
-                            </Col>
-                            <Col>
-                                <h5 className={'text-end'}>32$</h5>
-                            </Col>
-                        </Row>
-                        <Row>
-                            <Col>
-                                <h5>Вкупно</h5>
-                            </Col>
-                            <Col>
-                                <h4 className={'text-end'}>128$</h4>
-                            </Col>
-                        </Row>
-                    </Container>
-                </Modal.Body>
-                <Modal.Footer>
-                    <Button variant="secondary" onClick={props.handleClose}>
-                        Затвори
-                    </Button>
-                    <Button variant="danger" onClick={() => {
-                        createEntity(`/hotel/${props.data.reservationId}/cancel`, props.setChanged)
-                        props.handleClose()
-                    }
-                    }>
-                        Откажи резервација
-                    </Button>
-                </Modal.Footer>
-            </Modal>
-
-        </>
-    )
-}
-
-export default HotelReservationModal;
Index: ontend/src/Components/UserPanel/PastHotelReservations.js
===================================================================
--- frontend/src/Components/UserPanel/PastHotelReservations.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,19 +1,0 @@
-import HotelReservationListing from "./HotelReservationListing";
-import React from "react";
-import useGet from "../Hooks/useGet";
-
-const PastHotelReservations = () => {
-
-    const {data, isLoading, setData, getData, setChanged} = useGet('/hotel/reservations/user/1/past')
-
-    return (
-        <>
-            {!isLoading && data.map((res) => {
-                return (<HotelReservationListing setChanged={setChanged} past={true} data={res} type={'hotel'}></HotelReservationListing>)
-            })}
-            {(!isLoading && data.length === 0) && <h3 className={'my-5'}>Нема податоци за одбраните критериуми!</h3>}
-        </>
-    )
-}
-
-export default PastHotelReservations;
Index: ontend/src/Components/UserPanel/PastRestaurantReservations.js
===================================================================
--- frontend/src/Components/UserPanel/PastRestaurantReservations.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,21 +1,0 @@
-import HotelReservationListing from "./HotelReservationListing";
-import React from "react";
-import useGet from "../Hooks/useGet";
-
-const PastRestaurantReservations = () => {
-
-    const {data, isLoading, setData, getData, setChanged} = useGet('/restaurant/reservations/user/1/past')
-    !isLoading && console.log(data)
-
-    return (
-        <>
-            {!isLoading && data.map((res) => {
-                console.log(res)
-                return (<HotelReservationListing setChanged={setChanged} past={true} data={res} type={'restaurant'}></HotelReservationListing>)
-            })}
-            {(!isLoading && data.length === 0) && <h3 className={'my-5'}>Нема податоци за одбраните критериуми!</h3>}
-        </>
-    )
-}
-
-export default PastRestaurantReservations;
Index: ontend/src/Components/UserPanel/PastTransportReservations.js
===================================================================
--- frontend/src/Components/UserPanel/PastTransportReservations.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,20 +1,0 @@
-import HotelReservationListing from "./HotelReservationListing";
-import React from "react";
-import useGet from "../Hooks/useGet";
-
-const PastTransportReservations = () => {
-
-    const {data, isLoading, setData, getData, setChanged} = useGet('/transport/reservations/user/1/past')
-
-    return (
-        <>
-            {!isLoading && data.map((res) => {
-                return (<HotelReservationListing setChanged={setChanged} past={true} data={res} type={'transport'}></HotelReservationListing>)
-            })}
-
-            {(!isLoading && data.length === 0) && <h3 className={'my-5'}>Нема податоци за одбраните критериуми!</h3>}
-        </>
-    )
-}
-
-export default PastTransportReservations;
Index: ontend/src/Components/UserPanel/ReviewModal.js
===================================================================
--- frontend/src/Components/UserPanel/ReviewModal.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,110 +1,0 @@
-import {Button, Form, Modal, Row} from "react-bootstrap";
-import React from "react";
-import useFormData from "../Hooks/useFormData";
-import useCreate from "../Hooks/useCreate";
-
-const ReviewModal = (props) => {
-    const dummy = {
-        tite: "",
-        numStars: "",
-        description: "",
-    }
-    console.log(props)
-
-    const {createEntity} = useCreate();
-
-    const {formData, setFormData, onFormChange} = useFormData(dummy)
-
-    return (
-        <>
-            <Modal show={props.showReview} onHide={props.handleCloseReview}>
-                <Modal.Header closeButton>
-                    <Modal.Title>Внесување оценка по резервација</Modal.Title>
-                </Modal.Header>
-                <Modal.Body>
-                    <Form>
-                        <Row>
-                            <Form.Floating className="mb-3">
-                                <Form.Control
-                                    size="md"
-                                    type="text"
-                                    placeholder="Каде ќе патувате?:"
-                                    id="title"
-                                    name="title"
-                                    onChange={onFormChange}
-                                    value={formData.title}
-                                ></Form.Control>
-                                <label style={{left: '10px'}} htmlFor="location">Наслов:</label>
-                            </Form.Floating>
-                        </Row>
-                        <Row>
-                            <Form.Floating className="mb-3">
-                                <Form.Control
-                                    size="md"
-                                    type="number"
-                                    max={5}
-                                    min={1}
-                                    placeholder="Каде ќе патувате?:"
-                                    id="numStars"
-                                    name="numStars"
-                                    onChange={onFormChange}
-                                    value={formData.numStars}
-                                ></Form.Control>
-                                <label style={{left: '10px'}} htmlFor="location">Број на ѕвезди:</label>
-                            </Form.Floating>
-                        </Row>
-
-                        <Row>
-                            <Form.Floating className="mb-3">
-                                <Form.Control
-                                    size="md"
-                                    as="textarea"
-                                    placeholder="Каде ќе патувате?:"
-                                    id="description"
-                                    name="description"
-                                    onChange={onFormChange}
-                                    value={formData.description}
-                                ></Form.Control>
-                                <label style={{left: '10px'}} htmlFor="location">Опис:</label>
-                            </Form.Floating>
-                        </Row>
-
-                    </Form>
-                </Modal.Body>
-                <Modal.Footer>
-                    <Button variant="secondary" onClick={props.handleClose}>
-                        Затвори
-                    </Button>
-                    <Button variant="primary" onClick={() => {
-                        // console.log(props.data.hotelId)
-                        const dataToPost = props.type === 'hotel' ? {
-                                ...formData,
-                                hotelId: props.data.hotelId,
-                                userId: 1,
-                                reservationId: props.data.reservationId
-                            } :
-                            props.type === 'restaurant' ? {
-                                ...formData,
-                                restaurantId: props.data.restaurantId,
-                                userId: 1,
-                                reservationId: props.data.reservationId
-                            } : {
-                                ...formData,
-                                transportId: props.data.transportId,
-                                userId: 1,
-                                reservationId: props.data.reservationId
-                            }
-                        createEntity('/review/add', dataToPost, props.setChanged)
-                        setFormData(dummy)
-                        props.handleCloseReview()
-                    }
-                    }>
-                        Зачувај
-                    </Button>
-                </Modal.Footer>
-            </Modal>
-        </>
-    )
-}
-
-export default ReviewModal;
Index: ontend/src/Components/UserPanel/TypeSelectionTab.js
===================================================================
--- frontend/src/Components/UserPanel/TypeSelectionTab.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,115 +1,0 @@
-import React, {useState} from "react";
-import {Container, Nav, Tabs} from "react-bootstrap";
-import {Tab} from "react-bootstrap";
-import {FaHotel, FaTaxi} from 'react-icons/fa'
-import {MdRestaurant} from "react-icons/md"
-import HotelReservationListing from "./HotelReservationListing";
-import UnapprovedBusinessesTable from "../AdminPanel/UnapprovedBusinessesTable";
-import UnapprovedProfilesTable from "../AdminPanel/UnapprovedProfilesTable";
-import AllProfilesTable from "../AdminPanel/AllProfilesTable";
-import useGet from "../Hooks/useGet";
-import ActiveHotelReservations from "./ActiveHotelReservations";
-import PastHotelReservations from "./PastHotelReservations";
-import ActiveRestaurantReservations from "./ActiveRestaurantReservations";
-import PastRestaurantReservations from "./PastRestaurantReservations";
-import ActiveTransportReservations from "./ActiveTransportReservations";
-import PastTransportReservations from "./PastTransportReservations";
-
-function TypeSelectionTab() {
-    const [activeTab, setActiveTab] = useState("/hotel");
-    const handleSelect = (eventKey) => {
-        setActiveTab(eventKey);
-    };
-
-
-    return (
-        <Container className='rounded-5'>
-            <Tab.Container
-                activeKey={activeTab}
-                onSelect={handleSelect}
-                className="bg-dark rounded-5"
-            >
-                <Nav
-                    fill
-                    variant="tabs"
-                    className="bg-body rounded-top-5"
-                    activeKey="/hotel"
-                    id="tab_item"
-                >
-                    <Nav.Item className="tab_item rounded-5">
-                        <Nav.Link eventKey="/hotel" className="text-left rounded-5">
-                            <span className="ikona"><FaHotel color="#159895" style={{lineHeight: "100em"}}
-                                                             size={"1.5em"} className="mx-3"/></span>
-                            <span className="ikona">Сместување</span>
-                        </Nav.Link>
-                    </Nav.Item>
-                    <Nav.Item className="tab_item">
-                        <Nav.Link eventKey="/restaurant">
-                            <span className="ikona"><MdRestaurant color="#159895" size={"1.5em"}
-                                                                  className="mx-3"/></span><
-                            span className="ikona">Ресторан</span>
-                        </Nav.Link>
-                    </Nav.Item>
-                    <Nav.Item className="tab_item rounded-5">
-                        <Nav.Link eventKey="/transport" className="text-left rounded-5"><span className="ikona"><FaTaxi
-                            color="#159895" size={"1.5em"} className="mx-3"/></span>
-                            <span className="ikona">Превоз</span>
-                        </Nav.Link>
-                    </Nav.Item>
-                </Nav>
-
-                <Tab.Content className="py-5 px-3 border rounded-bottom-5 bg-light">
-                    <Tab.Pane eventKey="/hotel">
-                        <Container>
-                            <Tabs
-                                fill
-                                defaultActiveKey="home"
-                                id="uncontrolled-tab-example"
-                                className="mb-3"
-                            >
-                                <Tab eventKey="home" title="Активни резервации">
-                                    <ActiveHotelReservations></ActiveHotelReservations>
-                                </Tab>
-                                <Tab eventKey="profile" title="Претходни резервации">
-                                    <PastHotelReservations></PastHotelReservations>
-                                </Tab>
-                            </Tabs>
-                        </Container>
-                    </Tab.Pane>
-                    <Tab.Pane eventKey="/restaurant">
-                        <Tabs
-                            fill
-                            defaultActiveKey="home"
-                            id="uncontrolled-tab-example"
-                            className="mb-3"
-                        >
-                            <Tab eventKey="home" title="Активни резервации">
-                                <ActiveRestaurantReservations></ActiveRestaurantReservations>
-                            </Tab>
-                            <Tab eventKey="profile" title="Претходни резервации">
-                                <PastRestaurantReservations></PastRestaurantReservations>
-                            </Tab>
-                        </Tabs>
-                    </Tab.Pane>
-                    <Tab.Pane eventKey="/transport">
-                        <Tabs
-                            fill
-                            defaultActiveKey="home"
-                            id="uncontrolled-tab-example"
-                            className="mb-3"
-                        >
-                            <Tab eventKey="home" title="Активни резервации">
-                                <ActiveTransportReservations></ActiveTransportReservations>
-                            </Tab>
-                            <Tab eventKey="profile" title="Претходни резервации">
-                                <PastTransportReservations></PastTransportReservations>
-                            </Tab>
-                        </Tabs>
-                    </Tab.Pane>
-                </Tab.Content>
-            </Tab.Container>
-        </Container>
-    );
-}
-
-export default TypeSelectionTab;
Index: frontend/src/Components/useFormNested.js
===================================================================
--- frontend/src/Components/useFormNested.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Components/useFormNested.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -7,5 +7,5 @@
         console.log(e)
 
-        const dependantRoutes = e.target.name === 'freeSpace' ? e.target.parentElement.getAttribute('dependantRoutes').split(',') : undefined;
+        const dependantRoutes = e.target.parentElement.getAttribute('dependantRoutes').split(',')
         console.log(dependantRoutes)
 
Index: ontend/src/Pages/ConnectedAccountsPage.js
===================================================================
--- frontend/src/Pages/ConnectedAccountsPage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,38 +1,0 @@
-import React from "react";
-import Navigation from "../Components/Layout/Navbar/Navigation";
-import {Container, Row} from "react-bootstrap";
-import ConnectedAccountsTable from "../Components/ConnectedAccounts/ConnectedAccountsTable";
-import LoginForm from "../Components/Login/LoginForm";
-import {useAuth} from "../Components/Context/AuthContext";
-import useGet from "../Components/Hooks/useGet";
-
-const ConnectedAccountsPage = () => {
-    const Auth = useAuth();
-    console.log(Auth.getUser())
-    const { data, isLoading, setData, getData, setChanged } = useGet(`/users/${Auth.getUser().userId}/connected`);
-
-
-    return (
-        <>
-            <Navigation/>
-            <Container>
-                <Row className="mb-5">
-                    <h2 style={{color: "#159895", textAlign: "left"}}>Поврзани профили</h2>
-                </Row>
-            </Container>
-            <Container>
-                {!isLoading && <ConnectedAccountsTable data={data}></ConnectedAccountsTable>}
-            </Container>
-            <Container className={'mt-5'}>
-                <Row className="mb-5">
-                    <h2 style={{color: "#159895", textAlign: "left"}}>Поврзи нов локален профил</h2>
-                </Row>
-            </Container>
-            <Container className={'w-50'}>
-                <LoginForm refresh={setChanged}></LoginForm>
-            </Container>
-        </>
-    )
-}
-
-export default ConnectedAccountsPage;
Index: frontend/src/Pages/HomePage.js
===================================================================
--- frontend/src/Pages/HomePage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Pages/HomePage.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -43,5 +43,5 @@
       </Container>
       <Container className="my-5">
-        {/*<BecomeAHost></BecomeAHost>*/}
+        <BecomeAHost></BecomeAHost>
       </Container>
     </>
Index: frontend/src/Pages/HotelDetailsPage.js
===================================================================
--- frontend/src/Pages/HotelDetailsPage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Pages/HotelDetailsPage.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,5 +1,5 @@
 import React from "react";
 import LoginForm from "../Components/Login/LoginForm";
-import {Container, Row, Col, Form, FloatingLabel, Modal, Button} from "react-bootstrap";
+import { Container, Row, Col, Form } from "react-bootstrap";
 import Navigation from "../Components/Layout/Navbar/Navigation";
 import Carousel from "react-bootstrap/Carousel";
@@ -48,5 +48,5 @@
                     }}
                   >
-                    {data.averageScore.toFixed(1)}
+                    9.1
                   </span>
                 </Col>
@@ -69,7 +69,6 @@
                   placeholder="Каде ќе патувате?:"
                   id="location"
-                  value={data.hotelLocation}
                 ></Form.Control>
-                <label style={{left: "10px"}} htmlFor="location">Локација:</label>
+                <label htmlFor="location">Локација:</label>
               </Form.Floating>
             </Row>
@@ -81,7 +80,6 @@
                   placeholder="Датум на пристигнување:"
                   id="dateFrom"
-                  value={from}
                 ></Form.Control>
-                <label style={{left: "10px"}} htmlFor="dateFrom">Датум на пристигнување:</label>
+                <label htmlFor="dateFrom">Датум на пристигнување:</label>
               </Form.Floating>
             </Row>
@@ -93,7 +91,6 @@
                   placeholder="Датум на заминување:"
                   id="dateTo"
-                  value={to}
                 ></Form.Control>
-                <label style={{left: "10px"}} htmlFor="dateTo">Датум на заминување:</label>
+                <label htmlFor="dateTo">Датум на заминување:</label>
               </Form.Floating>
             </Row>
@@ -106,5 +103,5 @@
                   id="floatingPassengers"
                 ></Form.Control>
-                <label style={{left: "10px"}} htmlFor="floatingPassengers">Број на гости:</label>
+                <label htmlFor="floatingPassengers">Број на гости:</label>
               </Form.Floating>
             </Row>
@@ -114,20 +111,4 @@
               <Row>
                 <Carousel activeIndex={index} onSelect={handleSelect}>
-                  {data.images.map((image) => {
-                    let link = image.url;
-                    if (image.url.includes('Desktop')) {
-                      link = 'http://localhost:8080/download?fileName=' + encodeURIComponent(image.url);
-                    }
-                    return (
-                        <Carousel.Item>
-                          <img
-                              className="d-block w-100 h-400 rounded-5"
-                              src={link}
-                              alt="First slide"
-                              style={{ height: "50vh" }}
-                          />
-                        </Carousel.Item>
-                    )
-                  })}
                   <Carousel.Item>
                     <img
@@ -164,5 +145,5 @@
         <Row className="mb-5">
           <Col className="col-md-8"><DescriptionContainer data={data.hotelDescripiton} type="hotel"></DescriptionContainer></Col>
-          <Col className="col-md-4"><ReviewsCarousel reviews={data.hotelReviews}></ReviewsCarousel></Col>
+          <Col className="col-md-4"><ReviewsCarousel></ReviewsCarousel></Col>
         </Row>
         <Row className="mb-3"><RoomsTable from={from} to={to} data={data.hotelRooms}></RoomsTable></Row>
Index: frontend/src/Pages/HotelEditPage.js
===================================================================
--- frontend/src/Pages/HotelEditPage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Pages/HotelEditPage.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,60 +1,59 @@
-import React, {useState} from "react";
-import {Container, Col, Row, Image} from "react-bootstrap";
+import React, { useState } from "react";
+import { Container, Col, Row, Image } from "react-bootstrap";
 import Navigation from "../Components/Layout/Navbar/Navigation";
 import ResourcesTab from "../Components/Resources/ResourcesTab";
 import HotelEditTab from "../Components/HotelEdit/HotelEditTab";
 import useGet from "../Components/Hooks/useGet";
-import {Navigate, useParams} from "react-router-dom";
-import {useAuth} from "../Components/Context/AuthContext";
+import { useParams } from "react-router-dom";
 
 
 const HotelEditPage = () => {
 
-    const params = useParams();
-    const link = `/hotel/${params.hotelId}/list`;
-    const [changed, setChanged] = useState(0)
-    const {data, setData, isLoading, getData} = useGet(link, changed);
+  const params = useParams();
+  const link = "/hotel/list/" + params.hotelId;
+  const [changed, setChanged] = useState(0)
+  const { data, setData, isLoading, getData } = useGet(link, changed);
 
 
-    console.log(data)
-    return (
-        <>
-            <Navigation/>
-            {!isLoading && <Container>
-                <Row className="mb-5">
-                    <h2 style={{color: "#159895", textAlign: "left"}}>Мои ресурси</h2>
-                </Row>
-                <Row className="mb-5">
-                    <Col>
-                        <Row className="d-flex mb-3">
-                            <Col
-                                className="d-flex justify-content-center"
-                                style={{maxWidth: "30%"}}
-                            >
-                                <Image
-                                    src="https://t3.ftcdn.net/jpg/05/16/27/58/360_F_516275801_f3Fsp17x6HQK0xQgDQEELoTuERO4SsWV.jpg"
-                                    style={{
-                                        height: "5em",
-                                        borderRadius: "50%",
-                                        maxWidth: "100%",
-                                    }}
-                                    className="m-auto"
-                                ></Image>
-                            </Col>
-                            <Col className="d-flex justify-content-center">
-                                <Container className="pt-2" style={{textAlign: "left"}}>
-                                    <h4>{data.hotelName}</h4>
-                                    <h5>{data.hotelLocation}</h5>
-                                </Container>
-                            </Col>
-                        </Row>
-                    </Col>
-                </Row>
-                <Row>
-                    <HotelEditTab refresh={setChanged} displayRoom={data}/>
-                </Row>
-            </Container>}
-        </>
-    );
+  console.log(data)
+  return (
+    <>
+      <Navigation />
+      {!isLoading && <Container>
+        <Row className="mb-5">
+          <h2 style={{ color: "#159895", textAlign: "left" }}>Мои ресурси</h2>
+        </Row>
+        <Row className="mb-5">
+          <Col>
+            <Row className="d-flex mb-3">
+              <Col
+                className="d-flex justify-content-center"
+                style={{ maxWidth: "30%" }}
+              >
+                <Image
+                  src="https://t3.ftcdn.net/jpg/05/16/27/58/360_F_516275801_f3Fsp17x6HQK0xQgDQEELoTuERO4SsWV.jpg"
+                  style={{
+                    height: "5em",
+                    borderRadius: "50%",
+                    maxWidth: "100%",
+                  }}
+                  className="m-auto"
+                ></Image>
+              </Col>
+              <Col className="d-flex justify-content-center">
+                <Container className="pt-2" style={{ textAlign: "left" }}>
+                  <h4>{data.hotelName}</h4>
+                  <h5>{data.hotelLocation}</h5>
+                </Container>
+              </Col>
+            </Row>
+          </Col>
+        </Row>
+        <Row>
+            <HotelEditTab refresh={setChanged} displayRoom={data}/>
+        </Row>
+      </Container>}
+    </>
+  );
 };
 
Index: frontend/src/Pages/LoginErrorPage.js
===================================================================
--- frontend/src/Pages/LoginErrorPage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Pages/LoginErrorPage.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -11,4 +11,5 @@
     const [show, setShow] = useState(false);
     const [changed, setChanged] = useState(0);
+    const {data, isLoading} = useGet("/username")
     const userId = localStorage.getItem("userId")
     const [registered, setRegistered] = useState(false);
Index: frontend/src/Pages/LoginPage.js
===================================================================
--- frontend/src/Pages/LoginPage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Pages/LoginPage.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -3,7 +3,4 @@
 import { Container } from "react-bootstrap";
 import Navigation from "../Components/Layout/Navbar/Navigation";
-import {useAuth} from "../Components/Context/AuthContext";
-import {Navigate} from "react-router-dom";
-
 
 const LoginPage = () => {
@@ -11,12 +8,4 @@
   document.body.style.marginTop = "auto";
   document.body.style.marginBottom = "auto";
-
-  const Auth = useAuth();
-  const isLoggedIn = Auth.userIsAuthenticated();
-
-    if (isLoggedIn) {
-        return <Navigate to={'/home'}/>
-    }
-
   return (
     <>
Index: frontend/src/Pages/NoBusinessRegisteredError.js
===================================================================
--- frontend/src/Pages/NoBusinessRegisteredError.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Pages/NoBusinessRegisteredError.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -6,13 +6,11 @@
 import RegisterBusinessForm from "../Components/Forms/RegisterBusinessForm";
 import useGet from "../Components/Hooks/useGet";
-import {Navigate, useNavigate} from "react-router-dom";
-import {useAuth} from "../Components/Context/AuthContext";
+import { useNavigate } from "react-router-dom";
 
 const NoBusinessRegisteredError = (props) => {
   const [show, setShow] = useState(false);
   const [changed, setChanged] = useState(0);
-  const Auth = useAuth();
-  const isLoggedIn = Auth.userIsAuthenticated();
-  const userId = Auth.getUser().userId
+  const {data, isLoading} = useGet("/username")
+  const userId = localStorage.getItem("userId")
   const [registered, setRegistered] = useState(false);
   let checked = false;
@@ -26,6 +24,5 @@
   
   const { data: firma, isLoading: firmaIsLoading, getData: getFirmi} = useGet("/business/" + userId + "/unapproved", changed)
-  const { data, isLoading, getData} = useGet("/" + userId + "/hasBusiness")
-
+  
 
   useEffect(() => {
@@ -48,10 +45,8 @@
 
 
-  if(!isLoggedIn)
-  {
-    return <Navigate to={'/login'}/>
-  }
+  console.log(data)
 
-  !isLoading && data && navigator("/resources/hotel")
+  !isLoading && !data && navigator("/login")
+  !firmaIsLoading && firma && firma.length > 0 && firma[0].approved && navigator("/resources/hotel")
   
 
Index: frontend/src/Pages/ProfilePage.js
===================================================================
--- frontend/src/Pages/ProfilePage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Pages/ProfilePage.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -8,13 +8,10 @@
 import ChangePasswordForm from "../Components/Forms/ChangePasswordForm";
 import useGet from "../Components/Hooks/useGet";
-import {useAuth} from "../Components/Context/AuthContext";
-import {Navigate} from "react-router-dom";
 
 const ProfilePage = () => {
 
-    const { data, setData, isLoading, getData } = useGet("/principal");
+  const { data, setData, isLoading, getData } = useGet("/principal");
 
-
-
+  
     const profileData = {
         "name": "Марко",
@@ -22,5 +19,5 @@
         "address": "ул. Раскрсница бр. 10",
         "dateOfBirth": "2002-01-01",
-        "country": "Македонија",
+        "country": "Никогаш Северна само МАКЕДОНИЈА",
         "zip": "1000",
         "city": "Скопје",
@@ -30,9 +27,8 @@
 
 
-
   return (
     <>
       <Navigation />
-    {!isLoading && <Container>
+{      !isLoading && <Container>
         <Row className="mb-5">
           <h2 style={{ color: "#159895", textAlign: "left" }}>Мојот профил</h2>
Index: ontend/src/Pages/ProfilesManagementPage.js
===================================================================
--- frontend/src/Pages/ProfilesManagementPage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,47 +1,0 @@
-import React from "react";
-import {Container, Col, Row, Image, Tabs, Tab} from "react-bootstrap";
-import Navigation from "../Components/Layout/Navbar/Navigation";
-import ResourcesTab from "../Components/Resources/ResourcesTab";
-import {useState} from "react";
-import useGet from "../Components/Hooks/useGet";
-import {useAuth} from "../Components/Context/AuthContext";
-import {Navigate} from "react-router-dom";
-import {FaCheckCircle} from "react-icons/fa";
-import UnapprovedBusinessesTable from "../Components/AdminPanel/UnapprovedBusinessesTable";
-import UnapprovedProfilesTable from "../Components/AdminPanel/UnapprovedProfilesTable";
-import AllProfilesTable from "../Components/AdminPanel/AllProfilesTable";
-
-const ProfilesManagementPage = (props) => {
-
-    console.log(props.tab)
-
-
-    return (
-        <>
-            <Navigation/>
-            <Container>
-                <Row className="mb-5">
-                    <h2 style={{color: "#159895", textAlign: "left"}}>Менаџмент со профили</h2>
-                </Row>
-            </Container>
-            <Container>
-                <Tabs
-                    defaultActiveKey="home"
-                    id="uncontrolled-tab-example"
-                    className="mb-3"
-                >
-                    <Tab eventKey="home" title="Неодобрени регистрации за фирма">
-                        <UnapprovedBusinessesTable/>
-                    </Tab>
-                    <Tab eventKey="profile" title="Неверифицирани профили">
-                        <UnapprovedProfilesTable/>
-                    </Tab>
-                    <Tab eventKey="contact" title="Сите профили">
-                        <AllProfilesTable/>
-                    </Tab>
-                </Tabs>
-            </Container>
-        </>)
-}
-
-export default ProfilesManagementPage;
Index: frontend/src/Pages/ResourcesPage.js
===================================================================
--- frontend/src/Pages/ResourcesPage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Pages/ResourcesPage.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,55 +1,54 @@
 import React from "react";
-import {Container, Col, Row, Image} from "react-bootstrap";
+import { Container, Col, Row, Image } from "react-bootstrap";
 import Navigation from "../Components/Layout/Navbar/Navigation";
 import ResourcesTab from "../Components/Resources/ResourcesTab";
-import {useState} from "react";
+import { useState } from "react";
 import useGet from "../Components/Hooks/useGet";
-import {useAuth} from "../Components/Context/AuthContext";
-import {Navigate} from "react-router-dom";
 
 const ResourcesPage = (props) => {
 
-    const Auth = useAuth();
-    const user = Auth.getUser();
+  console.log(props.tab)
+  const { data, setData, isLoading, getData } = useGet("/principal");
 
-    return (
-        <>
-            <Navigation/>
-            {<Container>
-                <Row className="mb-5">
-                    <h2 style={{color: "#159895", textAlign: "left"}}>Мои ресурси</h2>
-                </Row>
-                <Row className="mb-5">
-                    <Col>
-                        <Row className="d-flex mb-3">
-                            <Col
-                                className="d-flex justify-content-center"
-                                style={{maxWidth: "30%"}}
-                            >
-                                <Image
-                                    src="https://t3.ftcdn.net/jpg/05/16/27/58/360_F_516275801_f3Fsp17x6HQK0xQgDQEELoTuERO4SsWV.jpg"
-                                    style={{
-                                        height: "5em",
-                                        borderRadius: "50%",
-                                        maxWidth: "100%",
-                                    }}
-                                    className="m-auto"
-                                ></Image>
-                            </Col>
-                            <Col className="d-flex justify-content-center">
-                                <Container className="pt-2" style={{textAlign: "left"}}>
-                                    <h4>{user.name + " " + user.surname}</h4>
-                                    <h5>{user.username}</h5>
-                                </Container>
-                            </Col>
-                        </Row>
-                    </Col>
-                </Row>
-                <Row>
-                    <ResourcesTab tab={props.tab}></ResourcesTab>
-                </Row>
-            </Container>}
-        </>
-    );
+
+  return (
+    <>
+      <Navigation />
+{!isLoading && <Container>
+        <Row className="mb-5">
+          <h2 style={{ color: "#159895", textAlign: "left" }}>Мои ресурси</h2>
+        </Row>
+        <Row className="mb-5">
+          <Col>
+            <Row className="d-flex mb-3">
+              <Col
+                className="d-flex justify-content-center"
+                style={{ maxWidth: "30%" }}
+              >
+                <Image
+                  src="https://t3.ftcdn.net/jpg/05/16/27/58/360_F_516275801_f3Fsp17x6HQK0xQgDQEELoTuERO4SsWV.jpg"
+                  style={{
+                    height: "5em",
+                    borderRadius: "50%",
+                    maxWidth: "100%",
+                  }}
+                  className="m-auto"
+                ></Image>
+              </Col>
+              <Col className="d-flex justify-content-center">
+                <Container className="pt-2" style={{ textAlign: "left" }}>
+                  <h4>{data.name + " " + data.surname}</h4>
+                  <h5>{data.email}</h5>
+                </Container>
+              </Col>
+            </Row>
+          </Col>
+        </Row>
+        <Row>
+            <ResourcesTab tab={props.tab}></ResourcesTab>
+        </Row>
+      </Container>}
+    </>
+  );
 };
 
Index: frontend/src/Pages/RestaurantDetailsPage.js
===================================================================
--- frontend/src/Pages/RestaurantDetailsPage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Pages/RestaurantDetailsPage.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,8 +1,8 @@
 import React from "react";
 import LoginForm from "../Components/Login/LoginForm";
-import {Container, Row, Col, Form} from "react-bootstrap";
+import { Container, Row, Col, Form } from "react-bootstrap";
 import Navigation from "../Components/Layout/Navbar/Navigation";
 import Carousel from "react-bootstrap/Carousel";
-import {useState} from "react";
+import { useState } from "react";
 import DescriptionContainer from "../Components/HotelDetails/DescriptionContainer";
 import ReviewsCarousel from "../Components/HotelDetails/ReviewsCarousel";
@@ -11,168 +11,140 @@
 import Menu from "../Components/RestaurantDetails/Menu";
 import MenuCarousel from "../Components/RestaurantDetails/Carousel";
-import {useLocation} from "react-router-dom";
-import TablesTable from "../Components/RestaurantDetails/TablesTable";
 
 const RestaurantDetailsPage = (props) => {
-    document.body.style.backgroundColor = "white";
+  document.body.style.backgroundColor = "white";
 
-    const [index, setIndex] = useState(0);
-    const location = useLocation();
-    const {data, params: formData} = location.state;
+  const [index, setIndex] = useState(0);
 
-    const handleSelect = (selectedIndex) => {
-        setIndex(selectedIndex);
-    };
+  const handleSelect = (selectedIndex) => {
+    setIndex(selectedIndex);
+  };
 
-    return (
-        <>
-            <Navigation/>
-            <Container className="my-3">
-                <Row className="d-flex justify-content-between">
-                    <Col style={{textAlign: "left"}}>
-                        <h2 style={{color: "#159895"}}>{data.restaurantName}</h2>
-                    </Col>
-                    <Col>
-                        <Container>
-                            <Row className="mb-4">
-                                <Col style={{textAlign: "right"}}>
+  return (
+    <>
+      <Navigation />
+      <Container className="my-3">
+        <Row className="d-flex justify-content-between">
+          <Col style={{textAlign: "left"}}>
+            <h2 style={{color: "#159895"}}>Име на ресторант</h2>
+          </Col>
+          <Col>
+            <Container>
+              <Row className="mb-4">
+                <Col style={{textAlign: "right"}}>
                   <span
-                      style={{
-                          backgroundColor: "#159895",
-                          padding: "0.75em",
-                          fontWeight: "bold",
-                          fontSize: "1.25rem",
-                          borderRadius: "0.75em",
-                          color: "white",
-                      }}
+                    style={{
+                      backgroundColor: "#159895",
+                      padding: "0.75em",
+                      fontWeight: "bold",
+                      fontSize: "1.25rem",
+                      borderRadius: "0.75em",
+                      color: "white",
+                    }}
                   >
-                    {data.averageScore.toFixed(1)}
+                    9.1
                   </span>
-                                </Col>
-                            </Row>
-                        </Container>
-                    </Col>
-                </Row>
-                <Row>
-                    <Col
-                        className="p-3 rounded-4"
-                        sm={3}
-                        style={{backgroundColor: "#002B5B"}}
-                    >
-                        <Row>
-                            <h3 className="mb-5 mt-3" style={{color: "white"}}>Критериуми од пребарувањето</h3>
-                            <Form.Floating className="mb-3">
-                                <Form.Control
-                                    size="md"
-                                    type="text"
-                                    placeholder="Каде ќе патувате?:"
-                                    id="location"
-                                    name={'restaurantLocation'}
-                                    value={formData.restaurantLocation}
-                                ></Form.Control>
-                                <label style={{left: "10px"}} htmlFor="location">Локација:</label>
-                            </Form.Floating>
-                        </Row>
-                        <Row>
-                            <Form.Floating className="mb-3">
-                                <Form.Control
-                                    size="md"
-                                    type="date"
-                                    placeholder="Датум на резервација:"
-                                    id="date"
-                                    name={'date'}
-                                    value={formData.date}
-                                ></Form.Control>
-                                <label style={{left: "10px"}} htmlFor="dateFrom">Датум на резерација:</label>
-                            </Form.Floating>
-                        </Row>
-                        <Row>
-                            <Col>
-                                <Form.Floating className="mb-3">
-                                    <Form.Control
-                                        size="lg"
-                                        type="text"
-                                        placeholder="Место:"
-                                        id="location"
-                                        name={'hourFrom'}
-                                        value={formData.hourFrom}
-                                    ></Form.Control>
-                                    <label style={{left: "10px"}} htmlFor="location">Време од:</label>
-                                </Form.Floating>
-                            </Col>
-                            <Col>
-                                <Form.Floating className="mb-3">
-                                    <Form.Control
-                                        size="lg"
-                                        type="text"
-                                        placeholder="Место:"
-                                        id="location"
-                                        name={'hourTo'}
-                                        value={formData.hourTo}
-                                    ></Form.Control>
-                                    <label style={{left: "10px"}} htmlFor="location">Време до:</label>
-                                </Form.Floating>
-                            </Col>
-                        </Row>
-                        <Row>
-                            <Form.Floating className="mb-3">
-                                <Form.Control
-                                    size="md"
-                                    type="number"
-                                    placeholder="Број на гости:"
-                                    id="floatingPassengers"
-                                    name={'numPeople'}
-                                    value={formData.numPeople}
-                                ></Form.Control>
-                                <label style={{left: "10px"}} htmlFor="floatingPassengers">Број на гости:</label>
-                            </Form.Floating>
-                        </Row>
-                    </Col>
-                    <Col>
-                        <Container>
-                            <Row>
-                                <Carousel activeIndex={index} onSelect={handleSelect}>
-                                    {data.images.map((image) => {
-                                        let link = image.url;
-                                        if (image.url.includes('Desktop')) {
-                                            link = 'http://localhost:8080/download?fileName=' + encodeURIComponent(image.url);
-                                        }
-                                        return (
-                                            <Carousel.Item>
-                                                <img
-                                                    className="d-block w-100 h-400 rounded-5"
-                                                    src={link}
-                                                    alt="First slide"
-                                                    style={{ height: "50vh" }}
-                                                />
-                                            </Carousel.Item>
-                                        )
-                                    })}
-                                    {data.images.length == 0 && <Carousel.Item>
-                                        <img
-                                            className="d-block w-100 h-400 rounded-5"
-                                            src="https://emagazin.mk/wp-content/uploads/2022/03/Karos_Photography-7795.jpg"
-                                            alt="First slide"
-                                            style={{height: "50vh"}}
-                                        />
-                                    </Carousel.Item>}
-                                </Carousel>
-                            </Row>
-                            <Row>
-                                <Container></Container>
-                            </Row>
-                        </Container>
-                    </Col>
-                </Row>
-                <Row className="mb-5">
-                    <Col className="col-md-8"><DescriptionContainer data={data.restaurantDescription} type="restaurant"></DescriptionContainer></Col>
-                    <Col className="col-md-4"><ReviewsCarousel reviews={data.reviews}></ReviewsCarousel></Col>
-                </Row>
-                <Row className="mb-3"><MenuCarousel images={data.menuImages} menu={data.menus}></MenuCarousel></Row>
-                <Row><TablesTable params={formData} data={data.tables}></TablesTable></Row>
-                <Row><ContactBar></ContactBar></Row>
+                </Col>
+              </Row>
             </Container>
-        </>
-    );
+          </Col>
+        </Row>
+        <Row>
+          <Col
+            className="p-3 rounded-4"
+            sm={3}
+            style={{ backgroundColor: "#002B5B" }}
+          >
+            <Row>
+              <h3 className="mb-5 mt-3" style={{color: "white"}}>Критериуми од пребарувањето</h3>
+              <Form.Floating className="mb-3">
+                <Form.Control
+                  size="md"
+                  type="text"
+                  placeholder="Каде ќе патувате?:"
+                  id="location"
+                ></Form.Control>
+                <label htmlFor="location">Локација:</label>
+              </Form.Floating>
+            </Row>
+            <Row>
+              <Form.Floating className="mb-3">
+                <Form.Control
+                  size="md"
+                  type="date"
+                  placeholder="Датум на резервација:"
+                  id="date"
+                ></Form.Control>
+                <label htmlFor="dateFrom">Датум на резерација:</label>
+              </Form.Floating>
+            </Row>
+            <Row>
+              <Form.Floating className="mb-3">
+                <Form.Control
+                  size="md"
+                  type="time"
+                  placeholder="Време на пристигање:"
+                  id="time"
+                ></Form.Control>
+                <label htmlFor="time">Време на пристигање:</label>
+              </Form.Floating>
+            </Row>
+            <Row>
+              <Form.Floating className="mb-3">
+                <Form.Control
+                  size="md"
+                  type="number"
+                  placeholder="Број на гости:"
+                  id="floatingPassengers"
+                ></Form.Control>
+                <label htmlFor="floatingPassengers">Број на гости:</label>
+              </Form.Floating>
+            </Row>
+          </Col>
+          <Col>
+            <Container>
+              <Row>
+                <Carousel activeIndex={index} onSelect={handleSelect}>
+                  <Carousel.Item>
+                    <img
+                      className="d-block w-100 h-400 rounded-5"
+                      src="https://emagazin.mk/wp-content/uploads/2022/03/Karos_Photography-7795.jpg"
+                      alt="First slide"
+                      style={{ height: "50vh" }}
+                    />
+                  </Carousel.Item>
+                  <Carousel.Item>
+                    <img
+                      className="d-block w-100 rounded-5"
+                      src="https://emagazin.mk/wp-content/uploads/2022/03/Karos_Photography-7871.jpg"
+                      alt="Second slide"
+                      style={{ height: "50vh" }}
+                    />
+                  </Carousel.Item>
+                  <Carousel.Item>
+                    <img
+                      className="d-block w-100 rounded-5"
+                      src="https://lh5.googleusercontent.com/p/AF1QipMQAwahuuJCJ2rDUYNrhnwiX1070adTsM6LmzV5=w480-h300-k-n"
+                      alt="Third slide"
+                      style={{ height: "50vh" }}
+                    />
+                  </Carousel.Item>
+                </Carousel>
+              </Row>
+              <Row>
+                <Container></Container>
+              </Row>
+            </Container>
+          </Col>
+        </Row>
+        <Row className="mb-5">
+          <Col className="col-md-8"><DescriptionContainer type="restaurant"></DescriptionContainer></Col>
+          <Col className="col-md-4"><ReviewsCarousel></ReviewsCarousel></Col>
+        </Row>
+        <Row className="mb-3"><MenuCarousel></MenuCarousel></Row>
+        <Row><ContactBar></ContactBar></Row>
+      </Container>
+    </>
+  );
 };
 
Index: frontend/src/Pages/RestaurantEditPage.js
===================================================================
--- frontend/src/Pages/RestaurantEditPage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Pages/RestaurantEditPage.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -6,6 +6,5 @@
 import RestaurantEditTab from "../Components/RestaurantEdit/RestaurantEditTab";
 import useGet from "../Components/Hooks/useGet";
-import {Navigate, useParams, useSearchParams} from "react-router-dom";
-import {useAuth} from "../Components/Context/AuthContext";
+import { useParams, useSearchParams } from "react-router-dom";
 
 const RestaurantEditPage = () => {
Index: frontend/src/Pages/SearchPage.js
===================================================================
--- frontend/src/Pages/SearchPage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Pages/SearchPage.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,8 +1,8 @@
-import React, {useState} from "react";
+import React from "react";
 import Navigation from '../Components/Layout/Navbar/Navigation';
 import 'bootstrap/dist/css/bootstrap.css';
 import 'bootstrap/dist/js/bootstrap.js';
 import HomeCarousel from '../Components/Layout/CarouselHome/Carousel';
-import {Card, Container, Nav, Row, Col} from 'react-bootstrap';
+import { Card, Container, Nav, Row, Col } from 'react-bootstrap';
 import TabComponent from '../Components/Tab/Tab';
 import Offers from '../Components/Layout/Offers/Offers';
@@ -11,13 +11,10 @@
 import BecomeAHost from "../Components/BecomeAHost/BecomeAHost"
 import HotelLisitng from "../Components/Listings/HotelListing"
-import SearchCriteriasHotel from "../Components/SearchCriterias/SearchCriteriasHotel";
+import SearchCriterias from "../Components/SearchCriterias/SearchCriteriasBar";
 import SortButton from "../Components/Listings/SortButton";
 import FilterButton from "../Components/Listings/FilterButton";
 import TransportListing from "../Components/Listings/TransportListing";
 import useGet from "../Components/Hooks/useGet";
-import {useParams} from "react-router-dom";
-import SearchCriteriasBar from "../Components/SearchCriterias/SearchCriteriasBar";
-import RestaurantDetailsPage from "./RestaurantDetailsPage";
-import RestaurantListing from "../Components/Listings/RestaurantListing";
+import { useParams } from "react-router-dom";
 
 
@@ -26,5 +23,5 @@
     const params = useParams();
     console.log(params)
-    const [sortingArg, setSortingArg] = useState("")
+
 
     document.body.style.backgroundColor = "white"
@@ -38,73 +35,13 @@
 
     }
-
-    const getSortingFn = (type, arg) => {
-        if (type === 'hotel') {
-            if (arg === "priceAsc")
-            {
-                return (a, b) => {
-                    return a.totalPrice - b.totalPrice;
-                }
-            }
-            else if (arg === "priceDesc")
-            {
-                return (a, b) => {
-                    return -(a.totalPrice - b.totalPrice);
-                }
-            }
-            else if (arg === 'nameAsc')
-            {
-                return (a, b) => {
-                    return a.hotelName.localeCompare(b.hotelName);
-                }
-            }
-            else if(arg === 'nameDesc')
-            {
-                return (a, b) => {
-                    return -a.hotelName.localeCompare(b.hotelName);
-                }
-            }
-        }
-        else if (type === 'transport')
-        {
-            if (arg === "priceAsc")
-            {
-                return (a, b) => {
-                    return a.price - b.price;
-                }
-            }
-            else if (arg === "priceDesc")
-            {
-                return (a, b) => {
-                    return -(a.price - b.price);
-                }
-            }
-        }
-        else if (type === 'restaurant')
-        {
-            if (arg === 'nameAsc')
-            {
-                return (a, b) => {
-                    return a.restaurantName.localeCompare(b.restaurantName);
-                }
-            }
-            else if(arg === 'nameDesc')
-            {
-                return (a, b) => {
-                    return -a.restaurantName.localeCompare(b.restaurantName);
-                }
-            }
-        }
-    }
-
-    let link = props.type === "transport" ? `/transport/search?from=${params.from}&to=${params.to}&date=${params.date}&numPassengers=${params.numPassengers}` : props.type === "hotel" ? `/hotel/search?hotelLocation=${params.hotelLocation}&dateFrom=${params.dateFrom}&dateTo=${params.dateTo}&numBeds=${params.numBeds}&flexible=${params.flexible}` : `/restaurant/search?restaurantLocation=${params.restaurantLocation}&date=${params.date}&hourFrom=${params.hourFrom}&hourTo=${params.hourTo}&numPeople=${params.numPeople}`
+    
+    let link = props.type === "transport" ? `/transport/search?from=${params.from}&to=${params.to}&date=${params.date}` : props.type === "hotel" ? `/hotel/search?hotelLocation=${params.hotelLocation}&dateFrom=${params.dateFrom}&dateTo=${params.dateTo}&numBeds=${params.numBeds}` : ""
     console.log(link)
-    console.log(params.date)
-    const {data, isLoading, getData, setData} = useGet(link);
+    const { data, isLoading, getData, setData } = useGet(link);
     !isLoading && console.log(data)
     return (
         <>
             <Navigation></Navigation>
-            <SearchCriteriasBar type={props.type} criterias={useParams()}></SearchCriteriasBar>
+            <SearchCriterias criterias={useParams()}></SearchCriterias>
             <Container className="d-flex justify-content-end gx-5" style={{maxWidth: "60%"}}>
                 <Row>
@@ -113,21 +50,16 @@
                     </Col>
                     <Col>
-                        <SortButton setSortingArg={setSortingArg} type={props.type}></SortButton>
+                        <SortButton></SortButton>
                     </Col>
                 </Row>
             </Container>
             {props.type === "hotel" && !isLoading && data && <Container fluid>
-                {data.sort(getSortingFn(props.type, sortingArg)).map(hotel => {
+                {data.map(hotel => {
                     return <HotelLisitng from={params.dateFrom} to={params.dateTo} data={hotel}/>
                 })}
-            </Container>}
+                </Container>}
             {props.type === "transport" && !isLoading && data && <Container fluid>
-                {data.sort(getSortingFn(props.type, sortingArg)).map(transport => {
-                    return <TransportListing params={params} data={transport}/>
-                })}
-            </Container>}
-            {props.type === "restaurant" && !isLoading && data && <Container fluid>
-                {data.sort(getSortingFn(props.type, sortingArg)).map(restaurant => {
-                    return <RestaurantListing params={params} data={restaurant}/>
+                {data.map(transport => {
+                    return <TransportListing data={transport}/>
                 })}
             </Container>}
Index: frontend/src/Pages/TransportDetailsPage.js
===================================================================
--- frontend/src/Pages/TransportDetailsPage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Pages/TransportDetailsPage.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,8 +1,8 @@
 import React from "react";
 import LoginForm from "../Components/Login/LoginForm";
-import {Container, Row, Col, Form, Image, Button, Modal} from "react-bootstrap";
+import { Container, Row, Col, Form, Image, Button } from "react-bootstrap";
 import Navigation from "../Components/Layout/Navbar/Navigation";
 import Carousel from "react-bootstrap/Carousel";
-import {useState} from "react";
+import { useState } from "react";
 import DescriptionContainer from "../Components/HotelDetails/DescriptionContainer";
 import ReviewsCarousel from "../Components/HotelDetails/ReviewsCarousel";
@@ -10,197 +10,115 @@
 import ContactBar from "../Components/HotelDetails/ContactBar";
 import RouteContainer from "../Components/TransportDetails/RouteContainer";
-import {useLocation, useParams} from "react-router-dom";
-import SearchCriteriasTransport from "../Components/SearchCriterias/SearchCriteriasTransport";
-import SearchCriteriasBar from "../Components/SearchCriterias/SearchCriteriasBar";
-import useCreate from "../Components/Hooks/useCreate";
+import { useLocation } from "react-router-dom";
 
 const TransportDetailsPage = (props) => {
-    document.body.style.backgroundColor = "white";
-    const {createEntity} = useCreate()
+  document.body.style.backgroundColor = "white";
 
-    const [index, setIndex] = useState(0);
-    const [getData, setData] = useState(0);
+  const [index, setIndex] = useState(0);
 
-    const location = useLocation();
-    const {data, params} = location.state;
-    const [show, setShow] = useState(false);
-    const handleClose = () => setShow(false);
-    const handleShow = () => setShow(true);
-    const route = data.transportRoutes.filter(x => x.from === params.from && x.to === params.to)[0];
-    const dateFormatter = (str) => {
-        const inputDate = new Date(str);
+  const location = useLocation();
+  const { data } = location.state;
 
-        const options = {
-            year: 'numeric',
-            month: '2-digit',
-            day: '2-digit',
-            hour12: false,
-            hour: '2-digit',
-            minute: '2-digit'
-        };
+  const handleSelect = (selectedIndex) => {
+    setIndex(selectedIndex);
+  };
 
-        return inputDate.toLocaleString('de-DE', options);
-
-    }
-
-    const handleSelect = (selectedIndex) => {
-        setIndex(selectedIndex);
-    };
-
-    return (
-        <>
-            <Navigation/>
-            <Container className="my-3">
-                <Row>
-                    <span><h2 style={{color: "#159895", textAlign: 'left'}}>Вашето пребарување</h2></span>
-                </Row>
-                <SearchCriteriasBar type={'transport'} showButton={false} criterias={params}></SearchCriteriasBar>
-                <Row className="d-flex justify-content-between">
-                    <Col style={{textAlign: "left"}}>
-                        <span>
-                            <h3 style={{color: "#159895"}}><b>Резултантна рута</b></h3>
-                            <h2 style={{color: "#159895"}}>{data.from} - {data.to}</h2>
-                            <h5 style={{color: "#159895"}}>({data.routes.join(", ")})</h5>
-                        </span>
-                    </Col>
-                    <Col>
-                        <Container>
-                            <Row className="mb-4">
-                                <Col style={{textAlign: "right"}}>
+  return (
+    <>
+      <Navigation />
+      <Container className="my-3">
+        <Row className="d-flex justify-content-between">
+          <Col style={{textAlign: "left"}}>
+            <span><h2 style={{color: "#159895"}}>{data.from} - {data.to}</h2><h5 style={{color: "#159895"}}>({data.routes.join(", ")})</h5></span>
+          </Col>
+          <Col>
+            <Container>
+              <Row className="mb-4">
+                <Col style={{textAlign: "right"}}>
                   <span
-                      style={{
-                          backgroundColor: "#159895",
-                          padding: "0.75em",
-                          fontWeight: "bold",
-                          fontSize: "1.25rem",
-                          borderRadius: "0.75em",
-                          color: "white",
-                      }}
+                    style={{
+                      backgroundColor: "#159895",
+                      padding: "0.75em",
+                      fontWeight: "bold",
+                      fontSize: "1.25rem",
+                      borderRadius: "0.75em",
+                      color: "white",
+                    }}
                   >
                     9.1
                   </span>
-                                </Col>
-                            </Row>
-                        </Container>
-                    </Col>
-                </Row>
-                <Row>
-                    <RouteContainer data={data}></RouteContainer>
-                </Row>
-                <hr></hr>
-                <Row>
-                    <Col>
-                        <h3>Одбрана рута</h3>
-                    </Col>
-                    <Col>
-                        <h3>{params.from + ' - ' + params.to}</h3>
-                    </Col>
-                </Row>
-                <hr></hr>
-                <Row>
-                    <Col>
-                        <h3>Очекувано време на поаѓање</h3>
-                    </Col>
-                    <Col>
-                        <h3>{dateFormatter(route.departure)}</h3>
-                    </Col>
-                </Row>
-                <hr></hr>
-                <Row>
-                    <Col>
-                        <h3>Цена</h3>
-                    </Col>
-                    <Col>
-                        <h3>{data.price}$</h3>
-                    </Col>
-                </Row>
-                <hr></hr>
-                <Row>
-                    <Col className="d-flex flex-column justify-content-center">
-                        <h3>Возач</h3>
-                    </Col>
-                    <Col className="d-flex flex-column justify-content-center">
-                        <Container className="d-flex flex-row justify-content-center mb-3" style={{paddingLeft: "28%"}}>
-                            <Col className="d-flex flex-column justify-content-center" style={{maxWidth: "30%"}}>
-                                <Image
-                                    src="https://t3.ftcdn.net/jpg/05/16/27/58/360_F_516275801_f3Fsp17x6HQK0xQgDQEELoTuERO4SsWV.jpg"
-                                    style={{
-                                        height: "4em",
-                                        borderRadius: "50%",
-                                        maxWidth: "100%",
-                                    }}
-                                    className="m-auto"
-                                ></Image>
-                            </Col>
-                            <Col className="d-flex flex-column justify-content-center">
-                                <Container className="pt-2" style={{textAlign: "left"}}>
-                                    <h4>{data.transport.owner.name} {data.transport.owner.surname.substring(0, 1)}.</h4>
-                                </Container>
-                            </Col>
-                        </Container>
-                    </Col>
-                </Row>
-                <hr></hr>
-                <Row>
-                    <Col>
-                        <h3>Возило</h3>
-                    </Col>
-                    <Col>
-                        <h3>{data.transport.carBrand + " " + data.transport.carType}</h3>
-                    </Col>
-                </Row>
-                <hr></hr>
-                <Row>
-                    <Col className="d-flex flex-column justify-content-center">
-                        <h3>Број на патници</h3>
-                    </Col>
-                    <Col md="auto" className="d-flex flex-column justify-content-center">
-                        <Form.Select onChange={(e) => {
-                            setData(e.target.value)
-                        }} aria-label="Default select example">
-                            <option></option>
-                            {[...Array(route.freeSpace).keys()].map(x => {
-                                return (
-                                    <option value={x+1}  >{x + 1}</option>
-                                )
-                            })}
-                        </Form.Select>
-                    </Col>
-                    <Col>
-                        <Button className="m-2" size="lg" style={{backgroundColor: "#159895"}} onClick={handleShow}>Резервирај</Button>
-                    </Col>
-                </Row>
-                <Row><ContactBar></ContactBar></Row>
+                </Col>
+              </Row>
             </Container>
-
-            <Modal show={show} size={'lg'} onHide={handleClose}>
-                <Modal.Header closeButton>
-                    <Modal.Title>Потврда на резервација</Modal.Title>
-                </Modal.Header>
-                <Modal.Body>
-                    <h4>Резервација на рута</h4>
-                    <h3>{route.from + ' ' + route.to}</h3>
-                    <h4>Време на поаѓање:<b>{' ' + dateFormatter(route.departure)}</b></h4>
-                    <h4>Време на престигнување:<b>{' ' + dateFormatter(route.arrival)}</b></h4>
-                    <h4>Број на патници:<b>{' ' + getData}</b></h4>
-                </Modal.Body>
-                <Modal.Footer>
-                    <Button variant="secondary" onClick={handleClose}>
-                        Close
-                    </Button>
-                    <Button variant="primary" onClick={() => {
-                        createEntity('transport/reserve', {
-                            transportRouteId: route.routeId,
-                            userId: 1,
-                            numSeats: getData
-                        })
-                        handleClose();
-                    }}>
-                        Резервирај
-                    </Button>
-                </Modal.Footer>
-            </Modal>
-        </>
-    );
+          </Col>
+        </Row>
+        <Row>
+            <RouteContainer data={data}></RouteContainer>
+        </Row>
+        <hr></hr>
+        <Row>
+            <Col>
+               <h3>Цена</h3>     
+            </Col>
+            <Col>
+                <h3>{data.price}$</h3>
+            </Col>
+        </Row>
+        <hr></hr>
+        <Row>
+            <Col className="d-flex flex-column justify-content-center">
+               <h3>Возач</h3>     
+            </Col>
+            <Col className="d-flex flex-column justify-content-center">
+            <Container className="d-flex flex-row justify-content-center mb-3" style={{paddingLeft: "28%"}}>
+              <Col className="d-flex flex-column justify-content-center" style={{maxWidth: "30%"}}>
+                <Image
+                  src="https://t3.ftcdn.net/jpg/05/16/27/58/360_F_516275801_f3Fsp17x6HQK0xQgDQEELoTuERO4SsWV.jpg"
+                  style={{
+                    height: "4em",
+                    borderRadius: "50%",
+                    maxWidth: "100%",
+                  }}
+                  className="m-auto"
+                ></Image>
+              </Col>
+              <Col className="d-flex flex-column justify-content-center">
+                <Container className="pt-2" style={{ textAlign: "left" }}>
+                  <h4>{data.transport.owner.name} {data.transport.owner.surname.substring(0, 1)}.</h4>
+                </Container>
+              </Col>
+            </Container>
+            </Col>
+        </Row>
+        <hr></hr>
+        <Row>
+            <Col>
+               <h3>Возило</h3>     
+            </Col>
+            <Col>
+                <h3>{data.transport.carBrand + " " + data.transport.carType}</h3>
+            </Col>
+        </Row>
+        <hr></hr>
+        <Row>
+            <Col className="d-flex flex-column justify-content-center">
+                <h3>Број на патници</h3>
+            </Col>
+            <Col md="auto" className="d-flex flex-column justify-content-center"> 
+            <Form.Select aria-label="Default select example">
+                <option></option>
+                <option value="1">1</option>
+                <option value="2">2</option>
+                <option value="3">3</option>
+              </Form.Select>
+            </Col>
+            <Col >   
+            <Button className="m-2" size="lg" style={{backgroundColor: "#159895"}}>Резервирај</Button>
+            </Col>
+        </Row>
+        <Row><ContactBar></ContactBar></Row>
+      </Container>
+    </>
+  );
 };
 
Index: frontend/src/Pages/TransportEditPage.js
===================================================================
--- frontend/src/Pages/TransportEditPage.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/Pages/TransportEditPage.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,4 +1,4 @@
-import React, {useState} from "react";
-import {Container, Col, Row, Image} from "react-bootstrap";
+import React, { useState } from "react";
+import { Container, Col, Row, Image } from "react-bootstrap";
 import Navigation from "../Components/Layout/Navbar/Navigation";
 import ResourcesTab from "../Components/Resources/ResourcesTab";
@@ -7,58 +7,56 @@
 import TransportEditTab from "../Components/TransportEdit/TransportEditTab";
 import useGet from "../Components/Hooks/useGet";
-import {Navigate, useParams} from "react-router-dom";
-import {useAuth} from "../Components/Context/AuthContext";
+import { useParams } from "react-router-dom";
 
 const TransportEditPage = () => {
+  const params = useParams();
+  console.log("transportot ima id " + params.transportId);
+  const link = "/transport/" + params.transportId;
+  const [changed, setChanged] = useState(0);
+  const { data, setData, isLoading, getData } = useGet(link, changed);
 
-    const params = useParams();
+  !isLoading && console.log(data)
 
-    const link = "/transport/" + params.transportId;
-
-    const {data, setData, isLoading, getData, setChanged} = useGet(link);
-
-    !isLoading && console.log(data)
-
-    return (
-        <>
-            <Navigation/>
-            {!isLoading && (
-                <Container>
-                    <Row className="mb-5">
-                        <h2 style={{color: "#159895", textAlign: "left"}}>Мои ресурси</h2>
-                    </Row>
-                    <Row className="mb-5">
-                        <Col>
-                            <Row className="d-flex mb-3">
-                                <Col
-                                    className="d-flex justify-content-center"
-                                    style={{maxWidth: "30%"}}
-                                >
-                                    <Image
-                                        src="https://t3.ftcdn.net/jpg/05/16/27/58/360_F_516275801_f3Fsp17x6HQK0xQgDQEELoTuERO4SsWV.jpg"
-                                        style={{
-                                            height: "5em",
-                                            borderRadius: "50%",
-                                            maxWidth: "100%",
-                                        }}
-                                        className="m-auto"
-                                    ></Image>
-                                </Col>
-                                <Col className="d-flex justify-content-center">
-                                    <Container className="pt-2" style={{textAlign: "left"}}>
-                                        <h4>{data.transportName}</h4>
-                                        <h5>{data.carBrand + " " + data.carType}</h5>
-                                    </Container>
-                                </Col>
-                            </Row>
-                        </Col>
-                    </Row>
-                    <Row>
-                        {data && <TransportEditTab displayRoute={data} refresh={setChanged}/>}
-                    </Row>
-                </Container>
-            )}
-        </>
-    );
+  return (
+    <>
+      <Navigation />
+      {!isLoading && (
+        <Container>
+          <Row className="mb-5">
+            <h2 style={{ color: "#159895", textAlign: "left" }}>Мои ресурси</h2>
+          </Row>
+          <Row className="mb-5">
+            <Col>
+              <Row className="d-flex mb-3">
+                <Col
+                  className="d-flex justify-content-center"
+                  style={{ maxWidth: "30%" }}
+                >
+                  <Image
+                    src="https://t3.ftcdn.net/jpg/05/16/27/58/360_F_516275801_f3Fsp17x6HQK0xQgDQEELoTuERO4SsWV.jpg"
+                    style={{
+                      height: "5em",
+                      borderRadius: "50%",
+                      maxWidth: "100%",
+                    }}
+                    className="m-auto"
+                  ></Image>
+                </Col>
+                <Col className="d-flex justify-content-center">
+                  <Container className="pt-2" style={{ textAlign: "left" }}>
+                    <h4>{data.transportName}</h4>
+                    <h5>{data.carBrand + " " + data.carType}</h5>
+                  </Container>
+                </Col>
+              </Row>
+            </Col>
+          </Row>
+          <Row>
+            {data && <TransportEditTab displayRoute={data} refresh={setChanged}/>}
+          </Row>
+        </Container>
+      )}
+    </>
+  );
 };
 
Index: ontend/src/Pages/UserReservationsManagement.js
===================================================================
--- frontend/src/Pages/UserReservationsManagement.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,34 +1,0 @@
-import React from "react";
-import {Container, Col, Row, Image, Tabs, Tab} from "react-bootstrap";
-import Navigation from "../Components/Layout/Navbar/Navigation";
-import ResourcesTab from "../Components/Resources/ResourcesTab";
-import {useState} from "react";
-import useGet from "../Components/Hooks/useGet";
-import {useAuth} from "../Components/Context/AuthContext";
-import {Navigate} from "react-router-dom";
-import {FaCheckCircle} from "react-icons/fa";
-import UnapprovedBusinessesTable from "../Components/AdminPanel/UnapprovedBusinessesTable";
-import UnapprovedProfilesTable from "../Components/AdminPanel/UnapprovedProfilesTable";
-import AllProfilesTable from "../Components/AdminPanel/AllProfilesTable";
-import TypeSelectionTab from "../Components/UserPanel/TypeSelectionTab";
-
-const UserReservationsManagement = (props) => {
-
-    console.log(props.tab)
-
-
-    return (
-        <>
-            <Navigation/>
-            <Container>
-                <Row className="mb-5">
-                    <h2 style={{color: "#159895", textAlign: "left"}}>Менаџмент со резервации</h2>
-                </Row>
-            </Container>
-            <Container>
-                <TypeSelectionTab/>
-            </Container>
-        </>)
-}
-
-export default UserReservationsManagement;
Index: frontend/src/axios.js
===================================================================
--- frontend/src/axios.js	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ frontend/src/axios.js	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,16 +1,21 @@
 import axios from "axios";
-
 
 const instance = axios.create({
     baseURL: "http://localhost:8080/",
     withCredentials: true,
-    maxRedirects: 1,
-    beforeRedirect: (options, { headers }) => {
-        console.log(options)
-        if (options.hostname === "example.com") {
-            options.auth = "user:password";
-        }}
-
+    maxRedirects: 1
 })
 
+instance.interceptors.response.use(function (response) {
+    // Any status code that lie within the range of 2xx cause this function to trigger
+    // Do something with response data
+    return response;
+  }, function (error) {
+    console.log(error)
+    //  window.location.href="/login"
+    // Any status codes that falls outside the range of 2xx cause this function to trigger
+    // Do something with response error
+    return Promise.reject(error);
+  });
+
 export default instance
Index: pom.xml
===================================================================
--- pom.xml	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ pom.xml	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -19,12 +19,4 @@
 	</properties>
 	<dependencies>
-		<dependency>
-			<groupId>org.springframework.boot</groupId>
-			<artifactId>spring-boot-starter-oauth2-client</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.springframework.boot</groupId>
-			<artifactId>spring-boot-starter-mail</artifactId>
-		</dependency>
 		<dependency>
 			<groupId>org.springframework.boot</groupId>
Index: src/main/java/com/tourMate/TourMateApplication.java
===================================================================
--- src/main/java/com/tourMate/TourMateApplication.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/TourMateApplication.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -3,17 +3,8 @@
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.context.annotation.Bean;
-import org.springframework.mail.javamail.JavaMailSender;
-import org.springframework.mail.javamail.JavaMailSenderImpl;
-import org.springframework.scheduling.annotation.EnableScheduling;
-import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
-import org.springframework.security.crypto.password.PasswordEncoder;
 import org.springframework.transaction.annotation.EnableTransactionManagement;
-
-import java.util.Properties;
 
 @SpringBootApplication
 @EnableTransactionManagement
-@EnableScheduling
 public class TourMateApplication {
 
@@ -22,26 +13,3 @@
 	}
 
-	@Bean
-	public PasswordEncoder passwordEncoder() {
-		return new BCryptPasswordEncoder();
-	}
-
-	@Bean
-	public JavaMailSender getJavaMailSender() {
-		JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
-		mailSender.setHost("smtp.gmail.com");
-		mailSender.setPort(587);
-
-		mailSender.setUsername("trip2mk@gmail.com");
-		mailSender.setPassword("xarb ggqg mvmr zciw");
-
-		Properties props = mailSender.getJavaMailProperties();
-		props.put("mail.transport.protocol", "smtp");
-		props.put("mail.smtp.auth", "true");
-		props.put("mail.smtp.starttls.enable", "true");
-		props.put("mail.debug", "true");
-
-		return mailSender;
-	}
-
 }
Index: src/main/java/com/tourMate/config/SecurityConfig.java
===================================================================
--- src/main/java/com/tourMate/config/SecurityConfig.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/config/SecurityConfig.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,17 +1,17 @@
 package com.tourMate.config;
 
-import com.tourMate.config.oauth2.CustomOAuth2FailureHandler;
-import com.tourMate.config.oauth2.CustomOAuth2SuccessHandler;
-import com.tourMate.config.oauth2.CustomOAuth2UserDetailService;
-import org.springframework.beans.factory.annotation.Autowired;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import jakarta.servlet.http.HttpServletResponse;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.http.HttpHeaders;
 import org.springframework.http.HttpMethod;
-import org.springframework.http.HttpStatus;
 import org.springframework.security.config.annotation.web.builders.HttpSecurity;
 import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
 import org.springframework.security.config.http.SessionCreationPolicy;
+import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
+import org.springframework.security.crypto.password.PasswordEncoder;
 import org.springframework.security.web.SecurityFilterChain;
-import org.springframework.security.web.authentication.logout.HttpStatusReturningLogoutSuccessHandler;
+import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
 import org.springframework.security.web.util.matcher.AntPathRequestMatcher;
 import org.springframework.web.cors.CorsConfiguration;
@@ -21,19 +21,9 @@
 import java.util.Arrays;
 
+import static org.springframework.security.config.Customizer.withDefaults;
+
 @Configuration
 @EnableWebSecurity
 public class SecurityConfig {
-
-    private final UserSecurity userSecurity;
-    @Autowired
-    private CustomOAuth2UserDetailService customOAuth2UserDetailService;
-    @Autowired
-    private CustomOAuth2FailureHandler oAuth2FailureHandler;
-    @Autowired
-    private CustomOAuth2SuccessHandler oAuth2SuccessHandler;
-
-    public SecurityConfig(UserSecurity userSecurity) {
-        this.userSecurity = userSecurity;
-    }
 
     @Bean
@@ -62,4 +52,8 @@
         return bean;
     }
+    @Bean
+    public PasswordEncoder passwordEncoder() {
+        return new BCryptPasswordEncoder();
+    }
 
     @Bean
@@ -70,32 +64,26 @@
                             try {
                                 authz
-                                        .requestMatchers(new AntPathRequestMatcher("/{userId}/hasBusiness")).access(userSecurity)
-                                        .requestMatchers(new AntPathRequestMatcher("/business/*/unapproved")).permitAll()
+                                        .requestMatchers(new AntPathRequestMatcher("/1/hasBusiness")).permitAll()
+                                        .requestMatchers(new AntPathRequestMatcher("/business/1/unapproved")).permitAll()
                                         .requestMatchers(new AntPathRequestMatcher("/register")).permitAll()
                                         .requestMatchers(new AntPathRequestMatcher("/hotel/search")).permitAll()
                                         .requestMatchers(new AntPathRequestMatcher("/transport/search")).permitAll()
-                                        .requestMatchers(new AntPathRequestMatcher("/restaurant/search")).permitAll()
-                                        .requestMatchers(new AntPathRequestMatcher("/upload")).permitAll()
-                                        .requestMatchers(new AntPathRequestMatcher("/business/approve/*")).hasAnyAuthority("SUPERADMIN")
-                                        .requestMatchers(new AntPathRequestMatcher("/users/unlock/*")).hasAnyAuthority("SUPERADMIN")
-                                        .requestMatchers(new AntPathRequestMatcher("/users/approve/*")).hasAnyAuthority("SUPERADMIN")
-                                        .requestMatchers(new AntPathRequestMatcher("/business/unapproved")).hasAnyAuthority("SUPERADMIN")
-                                        .requestMatchers(new AntPathRequestMatcher("/business/add/*")).authenticated()
-                                        .requestMatchers(new AntPathRequestMatcher("/*/user/{userId}")).access(userSecurity)
-//                                        .anyRequest().permitAll()
+                                        .requestMatchers(new AntPathRequestMatcher("/business/*")).hasAnyAuthority("SUPERADMIN")
                                         .anyRequest().authenticated()
                                         .and()
-                                        .oauth2Login()
-                                        .loginPage("/login")
-                                        .permitAll()
-                                        .userInfoEndpoint(x -> x.userService(customOAuth2UserDetailService))
-//                                        .userService(customOAuth2UserDetailService)
-                                        .successHandler(oAuth2SuccessHandler)
-                                        .failureHandler(oAuth2FailureHandler)
-                                        .and()
-                                        .formLogin()
-                                        .loginPage("/login")
-                                        .successHandler(oAuth2SuccessHandler)
-                                        .permitAll()
+                                        .formLogin().loginPage("http://localhost:3000/login")
+                                        .loginProcessingUrl("/api/login").usernameParameter("username").passwordParameter("password")
+                                        .successHandler((request, response, authentication) -> {
+                                            response.setStatus(HttpServletResponse.SC_OK);
+                                            response.setContentType("application/json");
+                                            response.getWriter().print("{\"message\": \"Login successful\",");
+                                            response.getWriter().print("\"auth\":" + new ObjectMapper().writeValueAsString(authentication) + "}");
+                                            response.getWriter().flush();
+                                        })
+                                        .failureHandler((request, response, exception) -> {
+                                            response.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
+                                            response.getWriter().print("Pukla veza\n" + exception.getMessage());
+                                            response.getWriter().flush();
+                                        })
                                         .permitAll()
                                         .and()
@@ -103,5 +91,5 @@
                                         .sessionCreationPolicy(SessionCreationPolicy.ALWAYS)
                                         .and()
-                                        .logout().logoutSuccessHandler((new HttpStatusReturningLogoutSuccessHandler(HttpStatus.OK)))
+                                        .logout()
                                         .permitAll();
 
Index: c/main/java/com/tourMate/config/UserSecurity.java
===================================================================
--- src/main/java/com/tourMate/config/UserSecurity.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,42 +1,0 @@
-package com.tourMate.config;
-
-import com.tourMate.config.oauth2.CustomOAuth2UserDetailService;
-import com.tourMate.config.oauth2.OAuth2UserDetailsCustom;
-import com.tourMate.entities.Hotels;
-import com.tourMate.entities.User;
-import com.tourMate.services.HotelManager;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.authorization.AuthorizationDecision;
-import org.springframework.security.authorization.AuthorizationManager;
-import org.springframework.security.core.Authentication;
-import org.springframework.security.web.access.intercept.RequestAuthorizationContext;
-import org.springframework.stereotype.Component;
-
-import java.util.function.Supplier;
-
-@Component
-public class UserSecurity implements AuthorizationManager<RequestAuthorizationContext> {
-
-    @Override
-    public AuthorizationDecision check(Supplier authenticationSupplier, RequestAuthorizationContext ctx) {
-        Long userId = Long.parseLong(ctx.getVariables().get("userId"));
-        Authentication authentication = (Authentication) authenticationSupplier.get();
-        return new AuthorizationDecision(hasUserId(authentication, userId));
-    }
-
-    public boolean hasUserId(Authentication authentication, Long userId) {
-        System.out.println(userId);
-        Long id;
-        if(authentication.getPrincipal() instanceof OAuth2UserDetailsCustom oAuth2UserDetailsCustom)
-        {
-            id = oAuth2UserDetailsCustom.getId();
-        }
-        else
-        {
-            User user = (User) authentication.getPrincipal();
-            id = user.getUserID();
-        }
-        return userId == id;
-    }
-
-}
Index: c/main/java/com/tourMate/config/oauth2/CustomOAuth2FailureHandler.java
===================================================================
--- src/main/java/com/tourMate/config/oauth2/CustomOAuth2FailureHandler.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,18 +1,0 @@
-package com.tourMate.config.oauth2;
-
-import jakarta.servlet.ServletException;
-import jakarta.servlet.http.HttpServletRequest;
-import jakarta.servlet.http.HttpServletResponse;
-import org.springframework.security.core.AuthenticationException;
-import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler;
-import org.springframework.stereotype.Component;
-
-import java.io.IOException;
-
-@Component
-public class CustomOAuth2FailureHandler extends SimpleUrlAuthenticationFailureHandler {
-    @Override
-    public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, AuthenticationException exception) throws IOException, ServletException {
-        getRedirectStrategy().sendRedirect(request, response, "/login");
-    }
-}
Index: c/main/java/com/tourMate/config/oauth2/CustomOAuth2SuccessHandler.java
===================================================================
--- src/main/java/com/tourMate/config/oauth2/CustomOAuth2SuccessHandler.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,19 +1,0 @@
-package com.tourMate.config.oauth2;
-
-import jakarta.servlet.ServletException;
-import jakarta.servlet.http.HttpServletRequest;
-import jakarta.servlet.http.HttpServletResponse;
-import org.springframework.security.core.Authentication;
-import org.springframework.security.web.authentication.SimpleUrlAuthenticationSuccessHandler;
-import org.springframework.stereotype.Component;
-
-import java.io.IOException;
-
-@Component
-public class CustomOAuth2SuccessHandler extends SimpleUrlAuthenticationSuccessHandler {
-    @Override
-    public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws IOException, ServletException {
-//        OAuth2UserDetailsCustom oAuth2UserDetailsCustom = (OAuth2UserDetailsCustom) authentication.getPrincipal();
-        getRedirectStrategy().sendRedirect(request, response, "http://localhost:3000/login-callback");
-    }
-}
Index: c/main/java/com/tourMate/config/oauth2/CustomOAuth2UserDetailService.java
===================================================================
--- src/main/java/com/tourMate/config/oauth2/CustomOAuth2UserDetailService.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,93 +1,0 @@
-package com.tourMate.config.oauth2;
-
-import com.tourMate.dao.UsersDao;
-import com.tourMate.entities.Role;
-import com.tourMate.entities.User;
-import org.springframework.security.core.AuthenticationException;
-import org.springframework.security.core.authority.SimpleGrantedAuthority;
-import org.springframework.security.oauth2.client.userinfo.DefaultOAuth2UserService;
-import org.springframework.security.oauth2.client.userinfo.OAuth2UserRequest;
-import org.springframework.security.oauth2.core.OAuth2AuthenticationException;
-import org.springframework.security.oauth2.core.user.OAuth2User;
-import org.springframework.stereotype.Service;
-import org.springframework.util.ObjectUtils;
-
-import java.util.Collections;
-import java.util.Objects;
-
-@Service
-public class CustomOAuth2UserDetailService extends DefaultOAuth2UserService {
-
-    private final UsersDao usersDao;
-
-    public CustomOAuth2UserDetailService(UsersDao usersDao) {
-        this.usersDao = usersDao;
-    }
-
-    @Override
-    public OAuth2User loadUser(OAuth2UserRequest userRequest) throws OAuth2AuthenticationException {
-        OAuth2User oAuth2User = super.loadUser(userRequest);
-
-        try
-        {
-            return checkOAuth2User(userRequest, oAuth2User);
-        }
-        catch (AuthenticationException e)
-        {
-            throw e;
-        }
-        catch (Exception ex)
-        {
-            throw ex;
-            //throw new InternalAuthenticationServiceException(ex.getMessage(), ex.getCause());
-        }
-    }
-
-    private OAuth2User checkOAuth2User(OAuth2UserRequest oAuth2UserRequest, OAuth2User oAuth2User)
-    {
-        OAuth2UserDetails oAuth2UserDetails = OAuth2UserDetailsFactory
-                .createOAuth2UserDetails(oAuth2UserRequest.getClientRegistration().getRegistrationId(), oAuth2User.getAttributes());
-
-        if(ObjectUtils.isEmpty(oAuth2UserRequest))
-        {
-            throw new RuntimeException("Cannot identifty OAuth2 user!");
-        }
-
-        User user = usersDao.findByUsernameAndProvider(
-                oAuth2UserDetails.getEmail(),
-                oAuth2UserRequest.getClientRegistration().getRegistrationId());
-        User userDetails = null;
-        if(user != null)
-        {
-            userDetails = user;
-            userDetails = updateOAuth2UserDetail(userDetails, oAuth2UserDetails);
-        }
-        else
-        {
-            userDetails = registerOAuth2UserDetail(oAuth2UserRequest, oAuth2UserDetails);
-        }
-        return new OAuth2UserDetailsCustom(
-                userDetails.getUserID(),
-                userDetails.getUsername(),
-                userDetails.getPassword(),
-                Collections.singletonList(new SimpleGrantedAuthority(userDetails.getRole().getRoleName()))
-        );
-    }
-
-    public User registerOAuth2UserDetail(OAuth2UserRequest oAuth2UserRequest, OAuth2UserDetails oAuth2UserDetails)
-    {
-        Role r = usersDao.findById(1L);
-        User user = new User();
-        user.setName(Objects.requireNonNullElse(oAuth2UserDetails.getName(), ""));
-        user.setEmail(oAuth2UserDetails.getEmail());
-        user.setProvider(oAuth2UserRequest.getClientRegistration().getRegistrationId());
-        user.setRole(r);
-        return usersDao.updateUser(user);
-    }
-
-    public User updateOAuth2UserDetail(User user, OAuth2UserDetails oAuth2UserDetails)
-    {
-        user.setEmail(oAuth2UserDetails.getEmail());
-        return usersDao.mergeUser(user);
-    }
-}
Index: c/main/java/com/tourMate/config/oauth2/OAuth2FacebookUser.java
===================================================================
--- src/main/java/com/tourMate/config/oauth2/OAuth2FacebookUser.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,19 +1,0 @@
-package com.tourMate.config.oauth2;
-
-import java.util.Map;
-
-public class OAuth2FacebookUser extends OAuth2UserDetails{
-    public OAuth2FacebookUser(Map<String, Object> attributes) {
-        super(attributes);
-    }
-
-    @Override
-    public String getName() {
-        return (String) attributes.get("name");
-    }
-
-    @Override
-    public String getEmail() {
-        return (String) attributes.get("email");
-    }
-}
Index: c/main/java/com/tourMate/config/oauth2/OAuth2GitHubUser.java
===================================================================
--- src/main/java/com/tourMate/config/oauth2/OAuth2GitHubUser.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,19 +1,0 @@
-package com.tourMate.config.oauth2;
-
-import java.util.Map;
-
-public class OAuth2GitHubUser extends OAuth2UserDetails{
-    public OAuth2GitHubUser(Map<String, Object> attributes) {
-        super(attributes);
-    }
-
-    @Override
-    public String getName() {
-        return (String) attributes.get("name");
-    }
-
-    @Override
-    public String getEmail() {
-        return (String) attributes.get("login");
-    }
-}
Index: c/main/java/com/tourMate/config/oauth2/OAuth2GoogleUser.java
===================================================================
--- src/main/java/com/tourMate/config/oauth2/OAuth2GoogleUser.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,19 +1,0 @@
-package com.tourMate.config.oauth2;
-
-import java.util.Map;
-
-public class OAuth2GoogleUser extends OAuth2UserDetails{
-    public OAuth2GoogleUser(Map<String, Object> attributes) {
-        super(attributes);
-    }
-
-    @Override
-    public String getName() {
-        return (String) attributes.get("name");
-    }
-
-    @Override
-    public String getEmail() {
-        return (String) attributes.get("email");
-    }
-}
Index: c/main/java/com/tourMate/config/oauth2/OAuth2UserDetails.java
===================================================================
--- src/main/java/com/tourMate/config/oauth2/OAuth2UserDetails.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,14 +1,0 @@
-package com.tourMate.config.oauth2;
-
-import java.util.Map;
-
-public abstract class OAuth2UserDetails {
-    protected Map<String, Object> attributes;
-
-    public OAuth2UserDetails(Map<String, Object> attributes) {
-        this.attributes = attributes;
-    }
-
-    public abstract String getName();
-    public abstract String getEmail();
-}
Index: c/main/java/com/tourMate/config/oauth2/OAuth2UserDetailsCustom.java
===================================================================
--- src/main/java/com/tourMate/config/oauth2/OAuth2UserDetailsCustom.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,83 +1,0 @@
-package com.tourMate.config.oauth2;
-
-import jakarta.persistence.Column;
-import org.springframework.security.core.GrantedAuthority;
-import org.springframework.security.core.userdetails.UserDetails;
-import org.springframework.security.oauth2.core.user.OAuth2User;
-
-import java.util.Collection;
-import java.util.List;
-import java.util.Map;
-
-public class OAuth2UserDetailsCustom implements OAuth2User, UserDetails {
-
-    Long id;
-    String username;
-    String password;
-    List<GrantedAuthority> authorities;
-    Map<String, Object> attributes;
-    Boolean locked = true;
-    Boolean enabled = true;
-    Boolean expired = false;
-
-
-    public OAuth2UserDetailsCustom(Long id, String username, String password, List<GrantedAuthority> authorities) {
-        this.id = id;
-        this.username = username;
-        this.password = password;
-        this.authorities = authorities;
-    }
-
-    @Override
-    public String getPassword() {
-        return password;
-    }
-
-    @Override
-    public String getUsername() {
-        return username;
-    }
-
-    @Override
-    public boolean isAccountNonExpired() {
-        return expired;
-    }
-
-    @Override
-    public boolean isAccountNonLocked() {
-        return locked;
-    }
-
-    @Override
-    public boolean isCredentialsNonExpired() {
-        return true;
-    }
-
-    @Override
-    public boolean isEnabled() {
-        return enabled;
-    }
-
-    @Override
-    public Map<String, Object> getAttributes() {
-        return attributes;
-    }
-
-    @Override
-    public Collection<? extends GrantedAuthority> getAuthorities() {
-        return authorities;
-    }
-
-    @Override
-    public String getName() {
-        return String.valueOf(id);
-    }
-
-    public Long getId() {
-        return id;
-    }
-
-    public void setId(Long id) {
-        this.id = id;
-    }
-}
Index: c/main/java/com/tourMate/config/oauth2/OAuth2UserDetailsFactory.java
===================================================================
--- src/main/java/com/tourMate/config/oauth2/OAuth2UserDetailsFactory.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,27 +1,0 @@
-package com.tourMate.config.oauth2;
-
-import com.tourMate.entities.Providers;
-
-import java.util.Map;
-
-public class OAuth2UserDetailsFactory {
-    public static OAuth2UserDetails createOAuth2UserDetails (String registrationId, Map<String, Object> attributes)
-    {
-        if(registrationId.equals(Providers.google.name()))
-        {
-            return new OAuth2GoogleUser(attributes);
-        }
-        else if(registrationId.equals(Providers.facebook.name()))
-        {
-            return new OAuth2FacebookUser(attributes);
-        }
-        else if(registrationId.equals(Providers.github.name()))
-        {
-            return new OAuth2GitHubUser(attributes);
-        }
-        else
-        {
-            throw  new RuntimeException("Login with this provider is not supported!");
-        }
-    }
-}
Index: src/main/java/com/tourMate/controllers/HotelController.java
===================================================================
--- src/main/java/com/tourMate/controllers/HotelController.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/controllers/HotelController.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -2,8 +2,7 @@
 
 import com.tourMate.dto.HotelDto;
-import com.tourMate.dto.HotelReservationDto;
-import com.tourMate.dto.HotelReservationUserDto;
 import com.tourMate.entities.*;
 import com.tourMate.services.HotelManager;
+import com.tourMate.services.UsersManager;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.format.annotation.DateTimeFormat;
@@ -35,4 +34,5 @@
             return ResponseEntity.ok(hoteli);
         } catch (Exception e) {
+            // Handle the exception, log it, and return an error response
             return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(null);
         }
@@ -40,6 +40,8 @@
 
     @GetMapping(path = "/hotel/user/{id}")
-    public ResponseEntity<List<Hotels>> getHotelsForUser(@PathVariable(name = "id") long userId) {
-        try {
+    public ResponseEntity<List<Hotels>> getHotelsForUser (@PathVariable(name = "id") long userId)
+    {
+        try {
+
             List<Hotels> hoteli = hotelManager.getHotelsForUser(userId);
             return ResponseEntity.ok(hoteli);
@@ -49,7 +51,9 @@
     }
 
-    @GetMapping(path = "/hotel/{id}/list")
-    public ResponseEntity<Hotels> getHotelById(@PathVariable(name = "id") long hotelId) {
-        try {
+    @GetMapping(path = "/hotel/list/{id}")
+    public ResponseEntity<Hotels> getHotelById (@PathVariable(name = "id") long hotelId)
+    {
+        try {
+
             return ResponseEntity.ok(hotelManager.findHotelByID(hotelId));
         } catch (Exception e) {
@@ -60,5 +64,6 @@
 
     @PostMapping(path = "/hotel/edit")
-    public void edit(@RequestBody Hotels hotel) {
+    public void edit(@RequestBody Hotels hotel)
+    {
         hotelManager.editHotel(hotel.getHotelId(), hotel.getHotelName(), hotel.getHotelDescripiton(), hotel.getHotelLocation(), hotel.getHotelEDBS(), hotel.getParking(), hotel.getPetFriendly(), hotel.getInternetAvailable());
     }
@@ -66,12 +71,28 @@
     @GetMapping(path = "/hotel/delete")
     public ResponseEntity remove(@RequestParam(name = "hotelId") long hotelId) {
-        try {
+        try
+        {
             hotelManager.deleteHotel(hotelId);
             return new ResponseEntity(HttpStatus.OK);
-        } catch (Exception exception) {
-            return new ResponseEntity(HttpStatus.NOT_FOUND);
-        }
-    }
-
+        }
+        catch (Exception exception)
+        {
+            return new ResponseEntity(HttpStatus.NOT_FOUND);
+        }
+    }
+
+    // HOTEL IMAGE CRUD
+    @GetMapping(path = "/hotel/images")
+    public List<HotelsImages> getHotelImages(@RequestBody Hotels hotel)
+    {
+        return hotelManager.getHotelImages(hotel);
+    }
+
+    @GetMapping(path = "/hotel/images/add")
+    public void addHotelImages(@RequestParam(name = "hotelId") long hotelId, @RequestParam(name = "url") String url)
+    {
+        Hotels h = hotelManager.findHotelByID(hotelId);
+        hotelManager.addHotelImage(h, url);
+    }
 
     @GetMapping(path = "/hotel/images/delete")
@@ -80,5 +101,6 @@
             hotelManager.deleteHotelImage(hotelId);
             return new ResponseEntity(HttpStatus.OK);
-        } catch (Exception exception) {
+        }
+        catch (Exception exception) {
             return new ResponseEntity(HttpStatus.NOT_FOUND);
         }
@@ -86,5 +108,6 @@
 
     @GetMapping(path = "/hotel/{id}/room")
-    public List<HotelRoom> getHotelRooms(@PathVariable(value = "id") long hotelId) {
+    public List<HotelRoom> getHotelRooms(@PathVariable(value = "id") long hotelId)
+    {
         System.out.println("ovde so id: " + hotelId);
         return hotelManager.getRoomsOfHotel(hotelId);
@@ -94,7 +117,7 @@
     //HOTEL ROOM CRUD
     @PostMapping(path = "/hotel/rooms/add")
-    public void addRoom(@RequestBody HotelRoom room,
-                        @RequestParam(name = "hotelId") long hotelId) {
-        hotelManager.createRoom(hotelId, room.getHotelRoomDescription(), room.getHotelRoomName(), room.getKitchenAvailable(), room.getAirConditioning(), room.getBalcony(), room.getPrice(), room.getNumOfBeds());
+    public void addRoom(@RequestBody HotelRoom room, @RequestParam(name = "hotelId") long hotelId) {
+        Hotels h = hotelManager.findHotelByID(hotelId);
+        hotelManager.createRoom(h, room.getHotelRoomDescription(), room.getHotelRoomName(), room.getKitchenAvailable(), room.getAirConditioning(), room.getBalcony(), room.getPrice());
     }
 
@@ -106,8 +129,11 @@
     @GetMapping(path = "/hotel/rooms/delete")
     public ResponseEntity removeRoom(@RequestParam(name = "hotelRoomId") long hotelRoomId) {
-        try {
+        try
+        {
             hotelManager.deleteRoom(hotelRoomId);
             return new ResponseEntity(HttpStatus.OK);
-        } catch (Exception exception) {
+        }
+        catch (Exception exception)
+        {
             return new ResponseEntity(HttpStatus.NOT_FOUND);
         }
@@ -123,31 +149,39 @@
     @GetMapping(path = "/hotel/rooms/reservation/delete")
     public ResponseEntity removeReservation(@RequestParam(name = "hotelRoomReservationId") long hotelRoomReservationId) {
-        try {
+        try
+        {
             hotelManager.deleteReservation(hotelRoomReservationId);
             return new ResponseEntity(HttpStatus.OK);
-        } catch (Exception exception) {
-            return new ResponseEntity(HttpStatus.NOT_FOUND);
-        }
-    }
-
-    //HOTEL AVAILABILITY CRUD
+        }
+        catch (Exception exception)
+        {
+            return new ResponseEntity(HttpStatus.NOT_FOUND);
+        }
+    }
+
+        //HOTEL AVAILABILITY CRUD
     @PostMapping(path = "/hotel/rooms/available/{id}/add")
-    public void addRoomAvailible(@RequestBody HotelRoomAvailable hotelRoomAvailable,
-                                 @PathVariable long id) {
-
-        hotelManager.createRoomAvailible(id, hotelRoomAvailable.getDateFrom(), hotelRoomAvailable.getDateTo(), hotelRoomAvailable.getNumberOfBeds());
+    public void addRoomAvailible(@RequestBody HotelRoomAvailable hotelRoomAvailable, @PathVariable long id)
+    {
+        HotelRoom hotelRoom = hotelManager.findRoomById(id);
+        hotelManager.createRoomAvailible(hotelRoom, hotelRoomAvailable.getDateFrom(), hotelRoomAvailable.getDateTo(), hotelRoomAvailable.getNumberOfBeds());
     }
 
     @PostMapping(path = "/hotel/rooms/available/edit")
-    public void editRoomAvailible(@RequestBody HotelRoomAvailable hotelRoomAvailable) {
+    public void editRoomAvailible(@RequestBody HotelRoomAvailable hotelRoomAvailable)
+    {
         hotelManager.editRoomAvailible(hotelRoomAvailable.getHotelRoomAvailableId(), hotelRoomAvailable.getHotelRoom(), hotelRoomAvailable.getDateFrom(), hotelRoomAvailable.getDateTo(), hotelRoomAvailable.getNumberOfBeds());
     }
 
     @GetMapping(path = "/hotel/rooms/available/remove")
-    public ResponseEntity removeRoomAvailible(@RequestParam(name = "hotelRoomAvailibleId") long hotelRoomAvailibleId) {
-        try {
+    public ResponseEntity removeRoomAvailible(@RequestParam(name = "hotelRoomAvailibleId") long hotelRoomAvailibleId)
+    {
+        try
+        {
             hotelManager.deleteRoomAvailible(hotelRoomAvailibleId);
             return new ResponseEntity(HttpStatus.OK);
-        } catch (Exception ex) {
+        }
+        catch (Exception ex)
+        {
             return new ResponseEntity(HttpStatus.NOT_FOUND);
         }
@@ -155,24 +189,26 @@
 
     @GetMapping(path = "hotel/rooms/{id}/available")
-    public List<HotelRoomAvailable> getRoomAvailability(@PathVariable Long id) {
-        return hotelManager.getRoomsAvailableById(id);
+    public List<HotelRoomAvailable> getRoomAvailability(@PathVariable Long id)
+    {
+        return hotelManager.getRoomsAvailibility();
     }
 
     @GetMapping(path = "/hotel/search")
-    public List<HotelDto> searchAvailibleRooms(@RequestParam(name = "hotelLocation") String hotelLocation,
-                                               @RequestParam(name = "dateFrom") @DateTimeFormat(pattern = "yyyy-MM-dd") Date dateFrom,
-                                               @RequestParam(name = "dateTo") @DateTimeFormat(pattern = "yyyy-MM-dd") Date dateTo,
-                                               @RequestParam(name = "numBeds") int numBeds,
-                                               @RequestParam(name = "flexible") Boolean flexible) {
-        return hotelManager.getRoomsAvailibilityByDateAndLocation(hotelLocation, dateFrom, dateTo, numBeds, flexible);
+    public List<HotelDto> searchAvailibleRooms(@RequestParam(name = "hotelLocation") String hotelLocation, @RequestParam(name = "dateFrom") @DateTimeFormat(pattern = "yyyy-MM-dd") Date dateFrom,
+                                               @RequestParam(name = "dateTo") @DateTimeFormat(pattern = "yyyy-MM-dd") Date dateTo, @RequestParam(name = "numBeds") int numBeds)
+    {
+        System.out.println(hotelLocation);
+        System.out.println(dateFrom + " " + dateTo);
+        return hotelManager.getRoomsAvailibilityByDateAndLocation(hotelLocation, dateFrom, dateTo, numBeds);
     }
 
     @PostMapping(path = "/hotel/reserve")
-    public void reserveHotelRoom(@RequestParam(name = "hotelRoomId") Long hotelRoomId,
+    public void reserveHotelRoom(@RequestParam(name = "hotelRoomId")Long hotelRoomId,
                                  @RequestParam(name = "userId") Long userId,
                                  @RequestParam(name = "hotelRoomAvailableId") Long hotelRoomAvailableId,
                                  @RequestParam(name = "numberOfBeds") Integer numberOfBeds,
                                  @RequestParam(name = "from") @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) Date from,
-                                 @RequestParam(name = "to") @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) Date to) {
+                                 @RequestParam(name = "to") @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) Date to){
+
 
 
@@ -180,33 +216,3 @@
     }
 
-    @GetMapping(path = "/hotel/{id}/reservations/active")
-    public List<HotelReservationDto> getActiveReservationsForHotel(@PathVariable Long id) {
-        return hotelManager.findVaidReseravtionsByHotel(id);
-    }
-
-    @GetMapping(path = "/hotel/reservations/user/{id}")
-    public List<HotelReservationUserDto> getActiveReservationsForUser(@PathVariable Long id) {
-        return hotelManager.findValidHotelReservationsByUser(id);
-    }
-
-    @GetMapping(path = "/hotel/reservations/user/{id}/past")
-    public List<HotelReservationUserDto> getPastReservationsForUser(@PathVariable Long id) {
-        return hotelManager.findPastHotelReservationsByUser(id);
-    }
-
-    @GetMapping(path = "/hotel/{id}/images")
-    public List<HotelsImages> getImagesForHotel(@PathVariable Long id) {
-        return hotelManager.getHotelImages(id);
-    }
-
-    @GetMapping(path = "/room/{id}/images")
-    public List<HotelRoomImages> getImagesForHotelRoom(@PathVariable Long id) {
-        return hotelManager.getRoomImages(id);
-    }
-
-    @PostMapping("/hotel/{id}/cancel")
-    public void cancelHotelReservation(@PathVariable Long id) {
-        hotelManager.deleteReservation(id);
-    }
-
 }
Index: c/main/java/com/tourMate/controllers/ImageController.java
===================================================================
--- src/main/java/com/tourMate/controllers/ImageController.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,54 +1,0 @@
-package com.tourMate.controllers;
-
-import com.tourMate.services.HotelManager;
-import com.tourMate.services.ImageManager;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.core.io.InputStreamResource;
-import org.springframework.http.HttpHeaders;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.nio.file.Path;
-import java.nio.file.Paths;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-@CrossOrigin("*")
-@RestController
-public class ImageController {
-
-    @Autowired
-    HotelManager hotelManager;
-    @Autowired
-    ImageManager imageManager;
-
-    @PostMapping(value = "/upload/{type}/{id}", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
-    public ResponseEntity<?> uploadImageHotel(@RequestParam List<MultipartFile> files,
-                                              @PathVariable Long id,
-                                              @PathVariable String type) {
-
-        imageManager.uploadImages(files, id, type);
-        return ResponseEntity.ok().build();
-    }
-
-    @GetMapping("/download")
-    public ResponseEntity<?> downloadFile1(@RequestParam String fileName) throws IOException {
-
-        File file = new File(fileName);
-        InputStreamResource resource = new InputStreamResource(new FileInputStream(file));
-
-        return ResponseEntity.ok()
-                .header(HttpHeaders.CONTENT_DISPOSITION, "attachment;filename=" + file.getName())
-                .contentType(MediaType.APPLICATION_OCTET_STREAM)
-                .contentLength(file.length())
-                .body(resource);
-    }
-}
Index: src/main/java/com/tourMate/controllers/ImagesController.java
===================================================================
--- src/main/java/com/tourMate/controllers/ImagesController.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
+++ src/main/java/com/tourMate/controllers/ImagesController.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -0,0 +1,54 @@
+package com.tourMate.controllers;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.core.io.InputStreamResource;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.MediaType;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+
+@CrossOrigin("*")
+@RestController
+@RequestMapping("/images")
+class ImageController {
+
+    private static final Logger logger = LoggerFactory.getLogger(ImageController.class);
+
+    @PostMapping(value = "/upload", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
+    public ResponseEntity uploadFile(@RequestParam MultipartFile file, @RequestParam String type) {
+
+        try
+        {
+            Path desktopPath = Paths.get(System.getProperty("user.home"), "Desktop\\images_tm");
+            Path filePath = desktopPath.resolve(file.getOriginalFilename());
+            System.out.println(filePath);
+            file.transferTo(filePath.toFile());
+        } catch (IOException e) {
+            throw new RuntimeException(e);
+        }
+
+        logger.info(String.format("File name '%s' uploaded successfully.", file.getOriginalFilename()));
+        return ResponseEntity.ok().build();
+    }
+
+    @GetMapping("/download")
+    public ResponseEntity downloadFile1(@RequestParam String fileName) throws IOException {
+
+        File file = new File(fileName);
+        InputStreamResource resource = new InputStreamResource(new FileInputStream(file));
+
+        return ResponseEntity.ok()
+                .header(HttpHeaders.CONTENT_DISPOSITION, "attachment;filename=" + file.getName())
+                .contentType(MediaType.APPLICATION_OCTET_STREAM)
+                .contentLength(file.length())
+                .body(resource);
+    }
+}
Index: src/main/java/com/tourMate/controllers/RestaurantController.java
===================================================================
--- src/main/java/com/tourMate/controllers/RestaurantController.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/controllers/RestaurantController.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,10 +1,6 @@
 package com.tourMate.controllers;
 
-import com.tourMate.dto.HotelReservationDto;
 import com.tourMate.dto.RestaurantDto;
-import com.tourMate.dto.RestaurantReservationDto;
-import com.tourMate.dto.RestaurantReservationUserDto;
 import com.tourMate.entities.*;
-import com.tourMate.services.MenuManager;
 import com.tourMate.services.RestaurantManager;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -24,6 +20,4 @@
     @Autowired
     RestaurantManager restaurantManager;
-    @Autowired
-    MenuManager menuManager;
 
     @PostMapping(path = "/restaurant/add")
@@ -35,20 +29,7 @@
 
     @PostMapping(path = "/restaurant/{id}/menu/add")
-    public void addMenu(@PathVariable(name = "id") long restaurantId, @RequestBody Menu menu) {
+    public void addMenu(@PathVariable(name = "id") long restaurantId, @RequestBody Menu menu)
+    {
         restaurantManager.addMenuToRestaurant(restaurantId, menu);
-    }
-
-    @PostMapping(path = "/menu/{id}/edit")
-    public void editMenu(@PathVariable Long id,
-                         @RequestParam String name,
-                         @RequestParam String ingredients,
-                         @RequestParam double price)
-    {
-        menuManager.editMenu(id, name, ingredients, price);
-    }
-
-    @PostMapping("/restaurant/{id}/cancel")
-    public void removeRestaurant(@PathVariable Long id){
-        restaurantManager.deleteReservation(id);
     }
 
@@ -61,5 +42,5 @@
     public List<Restaurant> showRestaurantsForUser(@PathVariable(name = "id") long userId) {
 
-        return restaurantManager.getRestaurantsByUser(userId);
+        return restaurantManager.getRestaurants();
     }
 
@@ -71,5 +52,6 @@
 
     @GetMapping(path = "/restaurant/{id}")
-    public Restaurant getRestaurantById(@PathVariable(name = "id") long restaurantId) {
+    public Restaurant getRestaurantById(@PathVariable(name = "id") long restaurantId)
+    {
         return restaurantManager.findRestaurantByID(restaurantId);
     }
@@ -102,5 +84,6 @@
             restaurantManager.removeRestaurantImage(restaurantId);
             return new ResponseEntity(HttpStatus.OK);
-        } catch (Exception exception) {
+        }
+        catch (Exception exception) {
             return new ResponseEntity(HttpStatus.NOT_FOUND);
         }
@@ -135,15 +118,7 @@
 
     // RESTAURANT RESERVATION CRUD
-
-    @PostMapping(path = "/restaurant/reserve")
-    public void reserveRestaurantTable(@RequestParam(name = "restaurantTableId") Long restaurantTableId,
-                                       @RequestParam(name = "userId") Long userId,
-                                       @RequestParam(name = "restaurantAvailibleId") Long restaurantAvailibleId,
-                                       @RequestParam(name = "hourFrom") String hourFrom,
-                                       @RequestParam(name = "hourTo") String hourTo,
-                                       @RequestParam(name = "date") @DateTimeFormat(pattern = "yyyy-MM-dd") Date date) {
-
-
-        restaurantManager.createReservation(userId, restaurantTableId, restaurantAvailibleId, hourFrom, hourTo, date);
+    @PostMapping(path = "/restaurant/table/reservation/add")
+    public void addTableReservation(@RequestBody RestaurantReservations restaurantReservations) {
+        //restaurantManager.createReservation(restaurantReservations);
     }
 
@@ -152,45 +127,15 @@
                                   @PathVariable Long id) {
         System.out.println(restaurantsAvailible.getHourFrom() + " " + restaurantsAvailible.getHourTo());
-        restaurantManager.createTableAvailable(id, restaurantsAvailible.getHourFrom(), restaurantsAvailible.getHourTo(), restaurantsAvailible.getNumTables());
+        restaurantManager.createTableAvailable(id, restaurantsAvailible.getHourFrom(), restaurantsAvailible.getHourTo());
     }
 
     @GetMapping(path = "/restaurant/search")
     public List<RestaurantDto> searchAvailableRestaurant(@RequestParam(name = "restaurantLocation") String restaurantLocation,
-                                                         @RequestParam(name = "date") @DateTimeFormat(pattern = "yyyy-MM-dd") Date date,
-                                                         @RequestParam(name = "hourFrom") String hourFrom,
-                                                         @RequestParam(name = "hourTo") String hourTo,
-                                                         @RequestParam(name = "numPeople") int noSeats) {
-
-        return restaurantManager.getTablesByDateAndLocation(restaurantLocation, date, hourFrom, hourTo, noSeats);
-    }
-
-    @GetMapping(path = "/restaurant/reservations/user/{id}")
-    public List<RestaurantReservationUserDto> getActiveReservationsForUser(@PathVariable Long id)
-    {
-        return restaurantManager.findValidRestaurantReservationsByUser(id);
-    }
-
-    @GetMapping(path = "/restaurant/reservations/user/{id}/past")
-    public List<RestaurantReservationUserDto> getPastReservationsForUser(@PathVariable Long id)
-    {
-        return restaurantManager.findPastRestaurantReservationsByUser(id);
-    }
-
-    @GetMapping(path = "/restaurant/{id}/images")
-    public List<RestaurantImages> getImagesForRestaurant(@PathVariable Long id)
-    {
-        return restaurantManager.getRestaurantImages(id);
-    }
-
-    @GetMapping(path = "/menu/{id}/images")
-    public List<MenuImages> getImagesForMenu(@PathVariable Long id)
-    {
-        return restaurantManager.getMenuImages(id);
-    }
-
-    @GetMapping(path = "/restaurant/{id}/reservations/active")
-    public List<RestaurantReservationDto> getActiveReservationsForHotel(@PathVariable Long id)
-    {
-        return restaurantManager.findReservationByRestaurant(id);
+                                                         @RequestParam(name = "cousineType") String cousineType,
+                                                         @RequestParam(name = "hourFrom") @DateTimeFormat(pattern = "yyyy-mm-ddThh:mm") Date hourFrom,
+                                                         @RequestParam(name = "hourTo") @DateTimeFormat (pattern = "yyyy-mm-ddThh:mm") Date hourTo,
+                                                         @RequestParam(name = "noSeats") int noSeats){
+            //return restaurantManager.getTablesByDateAndLocation(restaurantLocation, cousineType, hourFrom, hourTo, noSeats);
+        return null;
     }
 }
Index: src/main/java/com/tourMate/controllers/ReviewController.java
===================================================================
--- src/main/java/com/tourMate/controllers/ReviewController.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/controllers/ReviewController.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -15,12 +15,7 @@
 
     @PostMapping(path = "/review/add")
-    public void add(@RequestParam(name = "title") String title,
-                    @RequestParam(name = "numStars") Integer numStars,
-                    @RequestParam(name = "description") String description,
-                    @RequestParam(name = "hotelId", required = false) Long hotelId,
-                    @RequestParam(name = "restaurantId", required = false) Long restaurantId,
-                    @RequestParam(name = "transportId", required = false) Long transportId,
-                    @RequestParam(name = "reservationId") Long reservationId) {
-        reviewManager.createReview(title, numStars, description, hotelId, restaurantId, transportId, reservationId);
+    public void add(@RequestBody Reviews review) {
+//        String title, int numStar, String description, Hotels hotel, Restaurants restaurant, Transport transport
+        reviewManager.createReview(review.getTitle(), review.getNumStar(), review.getDescription(), review.getHotel(), review.getRestaurant(), review.getTransport());
     }
 
@@ -28,4 +23,5 @@
     public void edit(@RequestBody Reviews review)
     {
+//        editReview(long id, String title, String description, int numStar, Hotels hotel, Restaurants restaurant, Transport transport)
         reviewManager.editReview(review.getReviewId(), review.getTitle(), review.getDescription(), review.getNumStar(), review.getHotel(), review.getRestaurant(), review.getTransport());
     }
Index: src/main/java/com/tourMate/controllers/TransportController.java
===================================================================
--- src/main/java/com/tourMate/controllers/TransportController.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/controllers/TransportController.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,5 +1,7 @@
 package com.tourMate.controllers;
 
-import com.tourMate.dto.*;
+import com.tourMate.dto.RouteListingDto;
+import com.tourMate.dto.TransportDto;
+import com.tourMate.dto.TransportListingDto;
 import com.tourMate.entities.*;
 import com.tourMate.services.TransportManager;
@@ -10,4 +12,5 @@
 import org.springframework.web.bind.annotation.*;
 
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -20,8 +23,7 @@
 
     // TRANSPORT CRUD //
-    @PostMapping(path = "/transport/add/{userId}")
-    public void add(@RequestBody Transport transport,
-                    @PathVariable Long userId) {
-        transportManager.createTransport(transport.getTransportName(), transport.getCarBrand(), transport.getCarType(), transport.getCarManufacturedYear(), transport.getNoPassengers(), transport.getNoBags(), transport.getEMBG(), userId, transport.getCarPlate());
+    @PostMapping(path = "/transport/add")
+    public void add(@RequestBody Transport transport) {
+        transportManager.createTransport(transport.getTransportName(), transport.getCarBrand(), transport.getCarType(), transport.getCarManufacturedYear(), transport.getNoPassengers(), transport.getNoBags(), transport.getEMBG(), new User(), transport.getCarPlate());
 
     }
@@ -46,4 +48,5 @@
     public TransportDto getTransport(@PathVariable(name = "id") long transportId)
     {
+        System.out.println("TUKA SUUUUUM");
         return transportManager.findTransportById(transportId);
     }
@@ -61,4 +64,9 @@
     // TANSPORT RESERVATION CRUDE //
 
+    @PostMapping(path = "/transport/reservation/sadd")
+    public void add(@RequestBody TransportReservation transportReservation) {
+        transportManager.createTransportReservation(transportReservation.getTransport(), transportReservation.getDepartureLocation(), transportReservation.getArrivalLocation(), transportReservation.getDate(), transportReservation.getNoSeats(), transportReservation.getUser(), transportReservation.getDepartureHour());
+    }
+
     @GetMapping(path = "/transport/reservations")
     public List<TransportReservation> showTransportReservations() {
@@ -68,5 +76,5 @@
     @PostMapping(path = "/transport/reservations/edit")
     public void edit(@RequestBody TransportReservation transportReservation) {
-//        transportManager.editTransportReservation(transportReservation.getTransportRoute().getParentRoute().getTransport(), getTransport(), transportReservation.getReservationID(), transportReservation.getDepartureLocation(), transportReservation.getArrivalLocation(), transportReservation.getDate(), transportReservation.getNoSeats(), transportReservation.getUser(), transportReservation.getDepartureHour());
+        transportManager.editTransportReservation(transportReservation.getTransport(), transportReservation.getReservationID(), transportReservation.getDepartureLocation(), transportReservation.getArrivalLocation(), transportReservation.getDate(), transportReservation.getNoSeats(), transportReservation.getUser(), transportReservation.getDepartureHour());
     }
 
@@ -84,6 +92,13 @@
     @PostMapping(path = "/transport/available/add")
     public void add(@RequestBody TransportAvailible transportAvailable, @RequestParam(name = "transportId") long transportId) {
-
-        transportManager.createTransportAvailable(transportAvailable, transportAvailable.getTransport(), transportAvailable.getFrom(), transportAvailable.getTo(), transportAvailable.getDate(), transportAvailable.getFreeSpace(), transportAvailable.getTime(), transportId, transportAvailable.getRoutes());
+        System.out.println("OREEEEEL");
+        System.out.println("DVA ORLA");
+        Transport t = transportManager.getTransportById(transportId);
+        List<TransportRoute> routes = transportAvailable.getRoutes().stream().toList();
+        routes.get(0).setDeparture(transportAvailable.getDate());
+        transportAvailable.setTime(routes.get(routes.size() - 1).getArrival());
+        routes.forEach(x -> x.setParentRoute(transportAvailable));
+        transportAvailable.setTransport(t);
+        transportManager.createTransportAvailable(transportAvailable.getTransport(), transportAvailable.getFrom(), transportAvailable.getTo(), transportAvailable.getDate(), transportAvailable.getFreeSpace(), transportAvailable.getTime(), routes);
     }
 
@@ -120,34 +135,7 @@
 
     @GetMapping(path = "/transport/search")
-    public List<TransportListingDto> searchAvailableTransport(@RequestParam(name = "from") String from,
-                                                              @RequestParam(name = "to") String to,
-                                                              @RequestParam(name = "date") @DateTimeFormat(pattern = "yyyy-MM-dd") Date date,
-                                                              @RequestParam(name = "numPassengers") int numPassengers){
-        return transportManager.getTransportsAvailableByFilters(from, to, date, numPassengers);
-    }
-
-    @PostMapping(path = "/transport/reserve")
-    public void reserveTransport(@RequestParam(name = "transportRouteId") Long transportRouteId,
-                                 @RequestParam(name = "userId") Long userId,
-                                 @RequestParam(name = "numSeats") int numSeats)
-    {
-        transportManager.createTransportReservation(transportRouteId, userId, numSeats);
-    }
-
-    @GetMapping(path = "/transport/reservations/user/{id}")
-    public List<TransportReservationUserDto> getActiveReservationsForUser(@PathVariable Long id)
-    {
-        return transportManager.findValidTransportReservationsByUser(id);
-    }
-
-    @GetMapping(path = "/transport/reservations/user/{id}/past")
-    public List<TransportReservationUserDto> getPastReservationsForUser(@PathVariable Long id)
-    {
-        return transportManager.findPastTransportReservationsByUser(id);
-    }
-
-    @GetMapping(path = "/transport/{id}/reservations/active")
-    public List<TransportReservation> showTransportReservationsByTransport(@PathVariable Long id) {
-        return transportManager.findTransportReservationByTransportId(id);
+    public List<TransportListingDto> searchAvailableTransport(@RequestParam(name = "from") String from, @RequestParam(name = "to") String to,
+                                                              @RequestParam(name = "date") @DateTimeFormat(pattern = "yyyy-MM-dd") Date date){
+        return transportManager.getTransportsAvailableByFilters(from, to, date);
     }
 }
Index: src/main/java/com/tourMate/controllers/UsersController.java
===================================================================
--- src/main/java/com/tourMate/controllers/UsersController.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/controllers/UsersController.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,8 +1,6 @@
 package com.tourMate.controllers;
 
-import com.tourMate.dto.PrincipalInfo;
 import com.tourMate.entities.Business;
 import com.tourMate.entities.User;
-import com.tourMate.config.oauth2.OAuth2UserDetailsCustom;
 import com.tourMate.services.BusinessManager;
 import com.tourMate.services.UsersManager;
@@ -11,7 +9,7 @@
 import org.springframework.http.ResponseEntity;
 import org.springframework.security.core.Authentication;
-import org.springframework.security.core.parameters.P;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.ArrayList;
 import java.util.List;
 
@@ -43,32 +41,7 @@
     }
 
-    @GetMapping(path = "/business/unapproved")
-    public List<Business> getAllUnapprovedBusinesses()
-    {
-        return businessManager.getUnapprovedBusinesses();
-    }
-
-    @GetMapping(path = "/users/unapproved")
-    public List<User> getAllUnapprovedUsers()
-    {
-        return usersManager.getUnapprovedUsers();
-    }
-
-    @GetMapping(path = "/users/approve/{userId}")
-    public ResponseEntity<?> approveUserProfile(@PathVariable Long userId)
-    {
-        usersManager.approveUserProfile(userId);
-        return new ResponseEntity<>(HttpStatus.OK);
-    }
-
-    @GetMapping(path = "/business/approve/{businessId}")
-    public ResponseEntity<?> approveBusiness(@PathVariable Long businessId)
-    {
-        businessManager.approveBusiness(businessId);
-        return new ResponseEntity<>(HttpStatus.OK);
-    }
-
     @PostMapping(path = "/register")
     public List<User> add(@RequestBody User user) {
+        System.out.println(user.getName() + user.getSurname());
         usersManager.createUser(user.getName(), user.getSurname(), user.getEmail(), user.getBirthDate(), user.getAddress(), user.getContact());
         return usersManager.getCreatedUsers();
@@ -88,57 +61,27 @@
     @GetMapping(value = "/principal")
     @ResponseBody
-    public PrincipalInfo currentUser(Authentication authentication) {
-        Long id;
-        if(authentication.getPrincipal() instanceof OAuth2UserDetailsCustom)
-        {
-            OAuth2UserDetailsCustom oAuth2UserDetailsCustom = (OAuth2UserDetailsCustom) authentication.getPrincipal();
-            id = oAuth2UserDetailsCustom.getId();
-        }
-        else
-        {
-            User user = (User) authentication.getPrincipal();
-            id = user.getUserID();
-        }
-        return usersManager.getPrincipalInfo(id);
+    public User currentUser(Authentication authentication) {
+        return (User) authentication.getPrincipal();
     }
     @PostMapping(path = "/user/edit")
-    public void edit(@RequestBody User user)
+    public List<User> edit(@RequestBody User user)
     {
+        System.out.println(user.getName() + " " + user.getSurname() + "id e " + user.getUserID());
+        // long userID, String name, String surname, String email, Date birthDate, String address, String contact
         usersManager.editUser(user.getUserID(), user.getName(), user.getSurname(), user.getEmail(), user.getBirthDate(), user.getAddress(), user.getContact());
+        return usersManager.getCreatedUsers();
     }
 
     @GetMapping(path = "/user/delete")
-    public ResponseEntity<?> remove(@RequestParam(name = "userId") long userId) {
+    public ResponseEntity remove(@RequestParam(name = "userId") long userId) {
         try
         {
             usersManager.deleteUser(userId);
-            return new ResponseEntity<>(HttpStatus.OK);
+            return new ResponseEntity(HttpStatus.OK);
         }
         catch (Exception exception)
         {
-            return new ResponseEntity<>(HttpStatus.NOT_FOUND);
+            return new ResponseEntity(HttpStatus.NOT_FOUND);
         }
-    }
-
-    @GetMapping("/users/unlock/{id}")
-    public ResponseEntity<?> unlock(@PathVariable Long id)
-    {
-        usersManager.unlock(id);
-        return new ResponseEntity<>(HttpStatus.OK);
-    }
-
-    @PostMapping("/users/{id}/connect")
-    public ResponseEntity<?> connectAccount(@PathVariable Long id,
-                                            @RequestParam String username,
-                                            @RequestParam String password)
-    {
-        usersManager.connectAccount(id, username, password);
-        return new ResponseEntity<>(HttpStatus.OK);
-    }
-
-    @GetMapping("/users/{id}/connected")
-    public List<User> getConnectedAccounts(@PathVariable Long id)
-    {
-        return usersManager.findConnectedAccountsByUser(id);
     }
 }
Index: c/main/java/com/tourMate/controllers/UtilsController.java
===================================================================
--- src/main/java/com/tourMate/controllers/UtilsController.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,20 +1,0 @@
-package com.tourMate.controllers;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RestController;
-import org.springframework.web.servlet.mvc.support.RedirectAttributes;
-import org.springframework.web.servlet.view.RedirectView;
-import org.springframework.web.util.UriComponentsBuilder;
-
-import java.net.http.HttpResponse;
-
-@Controller
-public class UtilsController {
-    @GetMapping("/login")
-    public String getLoginPage()
-    {
-        return "login";
-    }
-}
Index: src/main/java/com/tourMate/dao/BusinessDao.java
===================================================================
--- src/main/java/com/tourMate/dao/BusinessDao.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/BusinessDao.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -9,23 +9,14 @@
 public interface BusinessDao {
 
-    List<Business> getCreatedBusinesses();
-
-    Business findBusinessById(long businessId);
+    @Transactional
+    void createBusiness(Business business, long userId);
+    public List<Business> getUnapprovedBusinessesOfUser(long userId);
+    public void deleteBusiness(long businessId);
+    public List<Business> getCreatedBusinesses();
+    public Business findBusinessById (long businessId);
 
     @Transactional
-    void createBusiness(Business business);
+    void editBusiness(long businessId, String name, String phone, String address, String edbs, User user, boolean approved);
+    public boolean hasBusiness(long userId);
 
-    List<Business> getUnapprovedBusinessesOfUser(User u);
-
-    @Transactional
-    void deleteBusiness(Business business);
-
-    boolean hasBusiness(User u);
-
-    List<Business> getUnapprovedBusinesses();
-
-    void approveBusiness(Business business);
-
-    @Transactional
-    void editBusiness(Business business);
 }
Index: src/main/java/com/tourMate/dao/HotelDao.java
===================================================================
--- src/main/java/com/tourMate/dao/HotelDao.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/HotelDao.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -9,138 +9,41 @@
 
 public interface HotelDao {
-    @Transactional
-    void createHotel(Hotels hotel);
+    public void createHotel(Hotels hotel, long userId);
+    public void editHotel(long hotelId, String hotelName, String hotelDescripiton, String hotelLocation, String hotelEDBS, Boolean parking, Boolean petFriendly, Boolean internetAvailable);
+    public void deleteHotel(long hotelId);
+    public Hotels findHotelByID (long hotelId);
+    public List<Hotels> getHotels();
+    public List<Hotels> getHotelsForUser(long userId);
+    public List<Hotels> getHotelsByLocation(String hotelLocation);
 
-    List<Hotels> getHotels();
+    public void addHotelImage(Hotels hotel, String url);
+    public void deleteHotelImage(long hotelImageId);
+    public HotelsImages findHotelImageById(long hotelImageId);
+    public List<HotelsImages> getHotelImages(Hotels hotels);
+    public List<HotelRoomImages> getRoomImages(HotelRoom hotelRoom);
 
-    List<Hotels> getHotelsForUser(User u);
-
-    List<Hotels> getHotelsByLocation(String hotelLocation);
+    public void createRoom(Hotels hotel, String hotelRoomDescription, String hotelRoomName, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price);
+    public void editRoom(long hotelRoomId, Hotels hotel, String hotelRoomDescription, String HotelRoomName, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price);
+    public void deleteRoom(long hotelRoomId);
+    public HotelRoom findRoomById (long hotelRoomId);
+    public List<HotelRoom> getRoomsOfHotel (long hotelId);
+    public List<HotelRoomAvailable> getRoomsAvailable(Long id);
 
     @Transactional
-    void editHotel(Hotels hotel);
+    public void createRoomAvailible(HotelRoom hotelRoom, Date dateFrom, Date dateTo, int numberOfBeds);
+    public void editRoomAvailible(long hotelRoomAvailableId, HotelRoom hotelRoom, Date dateFrom, Date dateTo, int numberOfBeds);
+    public void deleteRoomAvailible(long hotelRoomAvailableId);
+    public HotelRoomAvailable findAvailibleRoomById(long hotelRoomAvailableId);
+    public List<HotelRoomAvailable> getRoomsAvailibility();
+    public List<HotelRoomAvailable> getRoomsAvailibilityByHotel(Hotels hotel);
+    public List<HotelRoomAvailable> getRoomsAvailibilityByDateAndLocation(String hotelLocation, Date dateFrom, Date dateTo, int numberOfBeds);
 
-    @Transactional
-    void deleteHotel(Hotels hotel);
+    public void createReservation(User user, HotelRoom hotelRoom, Date dateFrom, Date dateTo, Integer numberOfBeds);
+    public void editReservation(long hotelRoomReservedId, User user, HotelRoom hotelRoom, Date dateFrom, Date dateTo, Integer numberOfBeds);
+    public void deleteReservation(long hotelRoomReservedId);
+    public HotelRoomReservations findReservationById(long hotelRoomReservedId);
+    public List<HotelRoomReservations> findReservationByUser(User user);
+    public List<HotelRoomReservations> findReservationByHotel(Hotels hotel);
+    public List<HotelRoomReservations> getReservations();
 
-    Hotels findHotelByID(long hotelId);
-
-    List<HotelsImages> getHotelImages(Hotels hotel);
-
-    @Transactional
-    void addHotelImage(HotelsImages image);
-
-    @Transactional
-    void addRoomImage(HotelRoomImages x);
-
-    @Transactional
-    void  saveReservation(HotelRoomReservations hotelRoomReservations);
-
-    @Transactional
-    HotelsImages findHotelImageById(long hotelImageId);
-
-    @Transactional
-    void deleteHotelImage(HotelsImages hotelsImages);
-
-    List<HotelRoom> getRoomsOfHotel(Hotels hotel);
-
-    List<HotelRoomAvailable> getRoomsAvailable(Long id);
-
-    HotelRoom findRoomById(long hotelRoomId);
-
-    List<HotelRoomImages> getRoomImages(HotelRoom hotelRoom);
-
-    @Transactional
-    void createRoom(HotelRoom hotelRoom);
-
-    @Transactional
-    void editRoom(HotelRoom hr);
-
-    @Transactional
-    void deleteRoom(HotelRoom hr);
-
-    @Transactional
-    void createRoomAvailible(HotelRoomAvailable hra);
-
-    @Transactional
-    void editRoomAvailible(HotelRoomAvailable hr);
-
-    @Transactional
-    void deleteRoomAvailible(HotelRoomAvailable hra);
-
-    HotelRoomAvailable findAvailibleRoomById(long hotelRoomAvailableId);
-
-    List<HotelRoomAvailable> getRoomsAvailibility();
-
-    List<HotelRoomAvailable> getRoomsAvailibilityByHotel(Hotels hotel);
-
-    List<HotelRoomAvailable> getRoomsAvailibilityByDateAndLocation(String hotelLocation, Date dateFrom, Date dateTo, int numberOfBeds, Boolean flexible);
-
-    @Transactional
-    void createReservation(HotelRoomReservations r);
-
-    @Transactional
-    void editReservation(HotelRoomReservations hr);
-
-    @Transactional
-    void deleteReservation(HotelRoomReservations hr);
-
-    HotelRoomReservations findReservationById(long hotelRoomReservedId);
-
-    List<HotelRoomReservations> findReservationByUser(User user);
-
-    List<HotelRoomReservations> findReservationByHotel(Hotels hotel);
-
-    List<HotelRoomReservations> getReservations();
-
-    List<Reviews> findReviewsByHotel(Hotels hotel);
-
-    List<HotelRoomReservations> findPastReservationByUser(User u);
-
-    List<HotelRoomReservations> getReservationsInPeriod(String hotelLocation, Date dateFrom, Date dateTo);
-//    public void createHotel(Hotels hotel, long userId);
-//    public void editHotel(long hotelId, String hotelName, String hotelDescripiton, String hotelLocation, String hotelEDBS, Boolean parking, Boolean petFriendly, Boolean internetAvailable);
-//    public void deleteHotel(long hotelId);
-//    public Hotels findHotelByID (long hotelId);
-//    public List<Hotels> getHotels();
-//    public List<Hotels> getHotelsForUser(long userId);
-//    public List<Hotels> getHotelsByLocation(String hotelLocation);
-//
-//    public void deleteHotelImage(long hotelImageId);
-//    public HotelsImages findHotelImageById(long hotelImageId);
-//    public List<HotelsImages> getHotelImages(Hotels hotels);
-//    public List<HotelRoomImages> getRoomImages(HotelRoom hotelRoom);
-//
-//    public void createRoom(Hotels hotel, String hotelRoomDescription, String hotelRoomName, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price, int numOfBeds);
-//    public void editRoom(long hotelRoomId, Hotels hotel, String hotelRoomDescription, String HotelRoomName, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price);
-//    public void deleteRoom(long hotelRoomId);
-//    public HotelRoom findRoomById (long hotelRoomId);
-//    public List<HotelRoom> getRoomsOfHotel (long hotelId);
-//    public List<HotelRoomAvailable> getRoomsAvailable(Long id);
-//
-//    @Transactional
-//    public void createRoomAvailible(HotelRoom hotelRoom, Date dateFrom, Date dateTo, int numberOfBeds);
-//    public void editRoomAvailible(long hotelRoomAvailableId, HotelRoom hotelRoom, Date dateFrom, Date dateTo, int numberOfBeds);
-//    public void deleteRoomAvailible(long hotelRoomAvailableId);
-//    public HotelRoomAvailable findAvailibleRoomById(long hotelRoomAvailableId);
-//    public List<HotelRoomAvailable> getRoomsAvailibility();
-//    public List<HotelRoomAvailable> getRoomsAvailibilityByHotel(Hotels hotel);
-//    public List<HotelRoomAvailable> getRoomsAvailibilityByDateAndLocation(String hotelLocation, Date dateFrom, Date dateTo, int numberOfBeds, Boolean flexible);
-//
-//    public void createReservation(User user, HotelRoom hotelRoom, Date dateFrom, Date dateTo, Integer numberOfBeds);
-//    public void editReservation(long hotelRoomReservedId, User user, HotelRoom hotelRoom, Date dateFrom, Date dateTo, Integer numberOfBeds);
-//    public void deleteReservation(long hotelRoomReservedId);
-//    public HotelRoomReservations findReservationById(long hotelRoomReservedId);
-//    public List<HotelRoomReservations> findReservationByUser(User user);
-//    public List<HotelRoomReservations> findReservationByHotel(Hotels hotel);
-//    public List<HotelRoomReservations> getReservations();
-//
-//    List<Reviews> findReviewsByHotel(Hotels hotel);
-//
-//    List<HotelRoomReservations> findPastReservationByUser(User u);
-//
-//    void addHotelImage(HotelsImages x);
-//
-//    void addRoomImage(HotelRoomImages x);
-//    void saveReservation(HotelRoomReservations hotelRoomReservations);
 }
Index: src/main/java/com/tourMate/dao/MenuDao.java
===================================================================
--- src/main/java/com/tourMate/dao/MenuDao.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/MenuDao.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -2,33 +2,12 @@
 
 import com.tourMate.entities.Menu;
-import jakarta.transaction.Transactional;
 
 import java.util.List;
 
 public interface MenuDao {
-    @Transactional
-    void createMenu(Menu menu);
-
-    @Transactional
-    void deleteMenu(Menu menu);
-
-    List<Menu> getCreatedMenus();
-
-    Menu findMenuById(long menuId);
-
-    @Transactional
-    void editMenu(Menu menu);
-//    public void createMenu(String name, String ingredients, double price);
-//
-//    @Transactional
-//    void createMenu(Menu menu);
-//
-//    public void deleteMenu(long menuId);
-//
-//    @Transactional
-//    void deleteMenu(Menu menu);
-//
-//    public List<Menu> getCreatedMenus();
-//    public Menu findMenuById(long menuId);
-//    public void editMenu(long menuId, String name, String ingredients, double price);
+    public void createMenu(String name, String ingredients, double price);
+    public void deleteMenu(long menuId);
+    public List<Menu> getCreatedMenus();
+    public Menu findMenuById(long menuId);
+    public void editMenu(long menuId, String name, String ingredients, double price);
 }
Index: src/main/java/com/tourMate/dao/RestaurantDao.java
===================================================================
--- src/main/java/com/tourMate/dao/RestaurantDao.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/RestaurantDao.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -8,116 +8,45 @@
 
 public interface RestaurantDao {
+    public void createRestaurant(Restaurant restaurant, long userId);
+    public void deleteRestaurant(long restaurantID);
     @Transactional
-    void createRestaurant(Restaurant restaurant);
-    List<RestaurantsAvailible> getTablesByDateAndLocation(String restaurantLocation, Date hourFrom, Date hourTo, int noSeats);
+    public void editRestaurant(long restaurantID, String restaurantName, String restaurantLocation, String cousineType, String restaurantDescription, String restaurantEdbs, User restaurantOwner);
+    public Restaurant findRestaurantByID (long restaurantID);
+    public List<Restaurant> searchByRestaurantName(String restaurantName);
+    public List<Restaurant> searchByRestaurantLocation(String restaurantLocation);
+    public List<Restaurant> getRestaurants();
     @Transactional
-    void addRestaurantImage(RestaurantImages restaurantImages);
+    public void addMenuToRestaurant(long restaurantId, Menu menu);
+
+    public List<RestaurantsAvailible> getTablesByDateAndLocation(String restaurantLocation, Date hourFrom, Date hourTo, int noSeats);
+
+    public void createTable(Restaurant restaurant, int noSeats);
+    public void editTable(Restaurant restaurant, long tableId, int noSeats);
+    public void deleteTable(long tableId);
+    public List<Restaurant> getRestaurantsByUser(long userId);
+    public RestaurantsTable findTableById(long tableId);
+    public List<RestaurantsTable> searchByNoSeats(int noSeats);
+    public List<RestaurantsTable> getRestaurantTables(long restaurantID);
+
+    public void addRestaurantImage(Restaurant restaurant, String url);
+    public void removeRestaurantImage(long restaurantImageId);
+    public RestaurantImages findRestaurantImageById(long restaurantImageId);
+    public List<RestaurantImages> getRestaurantImages(long restaurantID);
+
+    public void createTableAvailable(RestaurantsTable restaurantsTable, Date hourFrom, Date hourTo, int noSeats);
     @Transactional
-    void removeRestaurantImage(RestaurantImages image);
-    @Transactional
-    void saveTable(RestaurantsTable resTable);
-    @Transactional
-    RestaurantImages findRestaurantImageById(long restaurantImageId);
-    void deleteRestaurant(Restaurant r);
-    List<Restaurant> getRestaurants();
-    @Transactional
-    void addMenuToRestaurant(Menu menu);
-    Restaurant findRestaurantByID(long restaurantID);
-    List<RestaurantImages> getRestaurantImages(long restaurantID);
-    List<RestaurantsTable> getRestaurantTables(long restaurantID);
-    RestaurantsTable findTableById(long tableId);
-    @Transactional
-    void deleteTable(RestaurantsTable rt);
-    List<Restaurant> getRestaurantsByUser(User u);
-    List<RestaurantsAvailible> getTablesAvailabilityById(Long id);
-    @Transactional
-    void saveTableAvailable(RestaurantsAvailible ra);
-    @Transactional
-    void deleteTableAvailable(RestaurantsAvailible ra);
+    abstract void createTableAvailable(RestaurantsTable restaurantsTable, Date hourFrom, Date hourTo);
+    public List<RestaurantsAvailible> getTablesAvailabilityById(Long id);
+    public void editTableAvailable(long tableId, Restaurant restaurant, int noSeats);
+    public void deleteTableAvailable(long tableId);
+    public RestaurantsAvailible findAvailableReservationByID(long availibleId);
 
-    List<RestaurantsAvailible> getTablesAvailability();
-
-    //    List<RestaurantsAvailible> getTablesAvailability();
-    @Transactional
-    void createReservation(RestaurantReservations reservations);
-    @Transactional
-    void deleteReservation(RestaurantReservations r);
-    RestaurantReservations findReservationByID(long tableId);
-    RestaurantsAvailible findAvailableReservationByID(long availibleId);
-    List<RestaurantReservations> findReservationByUser(User user);
-    List<RestaurantReservations> findReservationByRestaurant(Restaurant restaurant);
-    List<RestaurantReservations> getReservations();
-    List<Restaurant> searchByRestaurantName(String restaurantName);
-
-    List<Restaurant> searchByRestaurantLocation(String restaurantLocation);
-
-    List<RestaurantsTable> searchByNoSeats(int noSeats);
-
-    List<Reviews> findReviewsByRestaurant(Restaurant restaurant);
-
-    List<RestaurantReservations> findPastReservationsByUser(User user);
-
-    List<MenuImages> getMenuImages(long menuId);
-
-    List<MenuImages> getMenuImagesByRestaurant(Restaurant restaurant);
-
-    @Transactional
-    void addMenuImage(MenuImages menuImages);
-
-    Menu findMenuId(Long menuId);
-
-    void saveReservation(RestaurantReservations r);
-
-//    public void createRestaurant(Restaurant restaurant, long userId);
-//    public void deleteRestaurant(long restaurantID);
-//    @Transactional
-//    public void editRestaurant(long restaurantID, String restaurantName, String restaurantLocation, String cousineType, String restaurantDescription, String restaurantEdbs, User restaurantOwner);
-//    public Restaurant findRestaurantByID (long restaurantID);
-//    public List<Restaurant> searchByRestaurantName(String restaurantName);
-//    public List<Restaurant> searchByRestaurantLocation(String restaurantLocation);
-//    public List<Restaurant> getRestaurants();
-//    @Transactional
-//    public void addMenuToRestaurant(long restaurantId, Menu menu);
-//
-//    public List<RestaurantsAvailible> getTablesByDateAndLocation(String restaurantLocation, Date hourFrom, Date hourTo, int noSeats);
-//
-//    public void createTable(Restaurant restaurant, int noSeats);
-//    public void editTable(Restaurant restaurant, long tableId, int noSeats);
-//    public void deleteTable(long tableId);
-//    public List<Restaurant> getRestaurantsByUser(long userId);
-//    public RestaurantsTable findTableById(long tableId);
-//    public List<RestaurantsTable> searchByNoSeats(int noSeats);
-//    public List<RestaurantsTable> getRestaurantTables(long restaurantID);
-//
-//    public void addRestaurantImage(RestaurantImages restaurantImages);
-//    public void removeRestaurantImage(long restaurantImageId);
-//    public RestaurantImages findRestaurantImageById(long restaurantImageId);
-//    public List<RestaurantImages> getRestaurantImages(long restaurantID);
-//
-//    public void createTableAvailable(RestaurantsTable restaurantsTable, Date hourFrom, Date hourTo, int noSeats);
-//    @Transactional
-//    abstract void createTableAvailable(RestaurantsTable restaurantsTable, Date hourFrom, Date hourTo);
-//    public List<RestaurantsAvailible> getTablesAvailabilityById(Long id);
-//    public void editTableAvailable(long tableId, Restaurant restaurant, int noSeats);
-//    public void deleteTableAvailable(long tableId);
-//    public RestaurantsAvailible findAvailableReservationByID(long availibleId);
-//
-//    public List<RestaurantsAvailible> getTablesAvailability();
-//    public void createReservation(RestaurantReservations reservations);
-//    public void editReservation(long restaurantsTableId, RestaurantsTable rt, Date hourFrom, Date hourTo, int noSeats, User user);
-//    public void deleteReservation(long restaurantsTableId);
-//    public RestaurantReservations findReservationByID(long tableId);
-//    public List<RestaurantReservations> findReservationByUser(User user);
-//    public List<RestaurantReservations> findReservationByRestaurant(Restaurant restaurant);
-//    public List<RestaurantReservations> getReservations();
-//
-//    List<Reviews> findReviewsByRestaurant(Restaurant restaurant);
-//
-//    List<RestaurantReservations> findPastReservationsByUser(User u);
-//    List<MenuImages> getMenuImages(long menuId);
-//    public void addMenuImage(MenuImages menuImages);
-//
-//    Menu findMenuId(Long menuId);
-//
-//    void saveReservation(RestaurantReservations restaurantReservations);
+    public List<RestaurantsAvailible> getTablesAvailability();
+    public void createReservation(RestaurantsTable rt, Date hourFrom, Date hourTo, User user);
+    public void editReservation(long restaurantsTableId, RestaurantsTable rt, Date hourFrom, Date hourTo, int noSeats, User user);
+    public void deleteReservation(long restaurantsTableId);
+    public RestaurantReservations findReservationByID(long tableId);
+    public List<RestaurantReservations> findReservationByUser(User user);
+    public List<RestaurantReservations> findReservationByRestaurant(Restaurant restaurant);
+    public List<RestaurantReservations> getReservations();
 }
Index: src/main/java/com/tourMate/dao/ReviewDao.java
===================================================================
--- src/main/java/com/tourMate/dao/ReviewDao.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/ReviewDao.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -5,44 +5,19 @@
 import com.tourMate.entities.Reviews;
 import com.tourMate.entities.Transport;
-import jakarta.transaction.Transactional;
-
 import java.util.List;
 
 public interface ReviewDao {
-    @Transactional
-    void createReview(Reviews review);
 
-    void deleteReview(Reviews review);
-
-    Reviews findReviewById(long id);
-
-    void editReview(Reviews review);
-
-    List<Reviews> getAllReviews();
-
-    List<Reviews> getHotelReviews();
-
-    List<Reviews> getTransportReviews();
-
-    List<Reviews> getRestaurantReviews();
-
-    List<Reviews> getHotelReviews(Hotels hotel);
-
-    List<Reviews> getRestaurantReviews(Restaurant restaurant);
-
-    List<Reviews> getTransportReviews(Transport transport);
-//    @Transactional
-//    void createReview(Reviews review);
-//
-//    public void deleteReview(long id);
-//    public void editReview(long id, String title, String description, int numStar, Hotels hotel, Restaurant restaurant, Transport transport);
-//    public Reviews findReviewById(long id);
-//    public List<Reviews> getAllReviews();
-//    public List<Reviews> getHotelReviews();
-//    public List<Reviews> getTransportReviews();
-//    public List<Reviews> getRestaurantReviews();
-//    public List<Reviews> getHotelReviews(Hotels hotel);
-//    public List<Reviews> getRestaurantReviews(Restaurant restaurant);
-//    public List<Reviews> getTransportReviews(Transport transport);
+    public void createReview(String title, String description, int numStar, Hotels hotel, Restaurant restaurant, Transport transport);
+    public void deleteReview(long id);
+    public void editReview(long id, String title, String description, int numStar, Hotels hotel, Restaurant restaurant, Transport transport);
+    public Reviews findReviewById(long id);
+    public List<Reviews> getAllReviews();
+    public List<Reviews> getHotelReviews();
+    public List<Reviews> getTransportReviews();
+    public List<Reviews> getRestaurantReviews();
+    public List<Reviews> getHotelReviews(Hotels hotel);
+    public List<Reviews> getRestaurantReviews(Restaurant restaurant);
+    public List<Reviews> getTransportReviews(Transport transport);
 
 }
Index: src/main/java/com/tourMate/dao/TokenDao.java
===================================================================
--- src/main/java/com/tourMate/dao/TokenDao.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
+++ src/main/java/com/tourMate/dao/TokenDao.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -0,0 +1,14 @@
+package com.tourMate.dao;
+
+import com.tourMate.entities.Token;
+import jakarta.transaction.Transactional;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+
+public interface TokenDao {
+    public void saveToken(Token token);
+    public Token getToken(String token);
+    @Transactional
+    public void setConfirmedAt(String token, LocalDateTime dateTime);
+}
Index: src/main/java/com/tourMate/dao/TransportDao.java
===================================================================
--- src/main/java/com/tourMate/dao/TransportDao.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/TransportDao.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,127 +1,58 @@
 package com.tourMate.dao;
 
+import com.tourMate.dto.RouteListingDto;
+import com.tourMate.dto.TransportDto;
 import com.tourMate.entities.*;
-import jakarta.transaction.Transactional;
 
 
+import java.util.Collection;
 import java.util.Date;
 import java.util.List;
 
 public interface TransportDao {
-    @Transactional
-    void createTransport(Transport t);
 
-    @Transactional
-    void deleteTransport(Transport t);
+    public void createTransport(String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, User owner, String carPlate);
 
-    List<Transport> getTransports();
+    public void deleteTransport(long transportId);
 
-    List<Transport> getTransportsByUser(User u);
+    public void editTransport(long transportID, String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, User owner, String carPlate);
 
-    List<TransportAvailible> getRoutesForTransport(Transport t);
+    public List<Transport> getTransports();
+    public List<TransportDto> getTransportsByUser(long userId);
 
-    Transport findTransportById(long transportId);
+    public List<RouteListingDto> getRoutesForTransport(long transportId);
+    public Transport getTransportById(long transportId);
+    public TransportDto findTransportById (long transportId);
 
-    Transport getTransportById(long transportId);
+    public void createTransportReservation(Transport transport, String departureLocation, String arrivalLocation, Date date, Integer noSeats, User user, Date departureHour);
 
-    @Transactional
-    void editTransport(Transport t);
+    public void editTransportReservation(Transport transport, long reservationID, String departureLocation, String arrivalLocation, Date date, Integer noSeats, User user, Date departureHour);
 
-    @Transactional
-    void createTransportReservation(TransportReservation transportReservation);
+    public void deleteTransportReservation(long reservationID);
 
-    TransportReservation findTransportReservationByID(long reservationID);
+    public TransportReservation findTransportReservationByID(long reservationID);
 
-    List<TransportReservation> getTransportReservations();
+    public List<TransportReservation> getTransportReservations();
 
-    TransportAvailible findTransportAvailableByID(long reservationID);
+    public List<TransportReservation> getTransportsReservationsByUserID(long userID);
 
-    List<TransportRoute> getTransportsAvailableByFilters(String fromL, String toL, Date date, int numPassengers);
+    public void createTransportAvailable(Transport transport, String departureLocation, String arrivalLocation, Date date, Integer noSeats, Date departureHour, Collection<TransportRoute> routes);
 
-    List<TransportReservation> getTransportsReservationsByUserID(long userID);
+    public void editTransportAvailable(Transport transport, long availableID, String departureLocation, String arrivalLocation, Date date, Integer noSeats, Date departureHour);
 
-    List<TransportAvailible> getTransportsAvailable();
+    public void deleteTransportAvailable(long availableID);
 
-    @Transactional
-    void createTransportAvailable(TransportAvailible ta);
+    public TransportAvailible findTransportAvailableByID (long reservationID);
 
-    void editTransportAvailable(TransportAvailible ta);
+    public List<TransportAvailible> getTransportsAvailable();
 
-    TransportRoute findTransportRouteById(long transportRouteId);
+    public List<TransportRoute> getTransportsAvailableByFilters (String from,String to,Date date);
 
-    List<Reviews> getReviewsForTransport(Transport transport);
+    public void createTransportRoute(TransportAvailible parentRoute, String from, String to, double price, Date departure, Date arrival, int freeSpace, int order);
 
-    List<TransportReservation> findPastReservationByUser(User user);
+    public void deleteTransportRoute(long transportRouteId);
 
-    @Transactional
-    void saveReservation(TransportReservation transportReservation);
+    public void editTransportRoute(long transportRouteId, TransportAvailible parentRoute, String from, String to, double price, Date departure, Date arrival, int freeSpace, int order);
 
-    List<TransportReservation> findReservationByUser(User user);
-
-    @Transactional
-    void deleteTransportReservation(TransportReservation tr);
-
-    @Transactional
-    void deleteTransportAvailable(TransportAvailible ta);
-
-    void createTransportRoute(TransportRoute tr);
-
-    void deleteTransportRoute(TransportRoute tr);
-
-    void editTransportRoute(TransportRoute tr);
-
-    List<TransportReservation> findTransportReservationByTransportId(Transport t);
-
-//    public void createTransport(String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, Long userId, String carPlate);
-//
-//    public void deleteTransport(long transportId);
-//
-//    public void editTransport(long transportID, String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, User owner, String carPlate);
-//
-//    public List<Transport> getTransports();
-//    public List<TransportDto> getTransportsByUser(long userId);
-//
-//    public List<RouteListingDto> getRoutesForTransport(long transportId);
-//    public Transport getTransportById(long transportId);
-//    public TransportDto findTransportById (long transportId);
-//
-//    public void createTransportReservation(TransportReservation transportReservation);
-//
-//    public void editTransportReservation(Transport transport, long reservationID, String departureLocation, String arrivalLocation, Date date, Integer noSeats, User user, Date departureHour);
-//
-//    public void deleteTransportReservation(long reservationID);
-//
-//    public TransportReservation findTransportReservationByID(long reservationID);
-//
-//    public List<TransportReservation> getTransportReservations();
-//
-//    public List<TransportReservation> getTransportsReservationsByUserID(long userID);
-//
-//    public void createTransportAvailable(Transport transport, String departureLocation, String arrivalLocation, Date date, Integer noSeats, Date departureHour, Collection<TransportRoute> routes);
-//
-//    public void editTransportAvailable(Transport transport, long availableID, String departureLocation, String arrivalLocation, Date date, Integer noSeats, Date departureHour);
-//
-//    public void deleteTransportAvailable(long availableID);
-//
-//    public TransportAvailible findTransportAvailableByID (long reservationID);
-//
-//    public List<TransportAvailible> getTransportsAvailable();
-//
-//    public List<TransportRoute> getTransportsAvailableByFilters (String from, String to, Date date, int numPassengers);
-//
-//    public void createTransportRoute(TransportAvailible parentRoute, String from, String to, double price, Date departure, Date arrival, int freeSpace, int order);
-//
-//    public void deleteTransportRoute(long transportRouteId);
-//
-//    public void editTransportRoute(long transportRouteId, TransportAvailible parentRoute, String from, String to, double price, Date departure, Date arrival, int freeSpace, int order);
-//
-//    public TransportRoute findTransportRouteById(long transportRouteId);
-//
-//    List<Reviews> getReviewsForTransport(Transport transport);
-//
-//    List<TransportReservation> findReservationByUser(User u);
-//
-//    List<TransportReservation> findPastReservationByUser(User user);
-//
-//    void saveReservation(TransportReservation transportReservation);
+    public TransportRoute findTransportRouteById(long transportRouteId);
 }
Index: src/main/java/com/tourMate/dao/UsersDao.java
===================================================================
--- src/main/java/com/tourMate/dao/UsersDao.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/UsersDao.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,8 +1,6 @@
 package com.tourMate.dao;
 
-import com.tourMate.entities.Providers;
 import com.tourMate.entities.Role;
 import com.tourMate.entities.User;
-import jakarta.transaction.Transactional;
 import org.springframework.security.core.userdetails.UserDetails;
 
@@ -25,18 +23,3 @@
 
     UserDetails findUserByUsername(String username);
-
-    List<User> getUnapprovedUsers();
-
-    void approveUserProfile(User u);
-
-    Role findById(Long id);
-    User updateUser(User s);
-    User findByUsernameAndProvider(String username, String providers);
-
-    @Transactional
-    User mergeUser(User user);
-
-    List<User> getAdmins();
-
-    List<User> findConnectedAccountsByUser(User u);
 }
Index: src/main/java/com/tourMate/dao/impl/BusinessDaoImpl.java
===================================================================
--- src/main/java/com/tourMate/dao/impl/BusinessDaoImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/impl/BusinessDaoImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -4,10 +4,7 @@
 import com.tourMate.entities.Business;
 import com.tourMate.entities.User;
-import com.tourMate.events.OnBusinessApprovedEvent;
 import jakarta.persistence.EntityManager;
 import jakarta.persistence.PersistenceContext;
 import jakarta.transaction.Transactional;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.ApplicationEventPublisher;
 import org.springframework.stereotype.Service;
 
@@ -19,15 +16,16 @@
     @PersistenceContext
     EntityManager em;
-    @Autowired
-    ApplicationEventPublisher eventPublisher;
 
     @Transactional
     @Override
-    public void createBusiness(Business business) {
+    public void createBusiness(Business business, long userId) {
+        User u = em.find(User.class, userId);
+        business.setUser(u);
         em.persist(business);
     }
 
     @Override
-    public List<Business> getUnapprovedBusinessesOfUser(User u) {
+    public List<Business> getUnapprovedBusinessesOfUser(long userId) {
+        User u = em.find(User.class, userId);
         return em.createQuery("SELECT b FROM Business b WHERE b.user = :user").setParameter("user", u).getResultList();
     }
@@ -35,27 +33,15 @@
     @Transactional
     @Override
-    public void deleteBusiness(Business business) {
+    public void deleteBusiness(long businessId) {
+        Business business = findBusinessById(businessId);
         em.remove(business);
+
     }
 
     @Override
-    public boolean hasBusiness(User u)
+    public boolean hasBusiness(long userId)
     {
-        return Integer.parseInt(em.createQuery("SELECT COUNT(b) FROM Business b WHERE b.user = :user or b.user in :users")
-                .setParameter("user", u)
-                .setParameter("users", u.getConnectedAccounts())
-                .getSingleResult().toString()) > 0;
-    }
-
-    @Override
-    public List<Business> getUnapprovedBusinesses() {
-        return em.createQuery("select b from Business b where not b.approved").getResultList();
-    }
-
-    @Override
-    @Transactional
-    public void approveBusiness(Business b) {
-        em.persist(b);
-        eventPublisher.publishEvent(new OnBusinessApprovedEvent(b.getUser()));
+        User u = em.find(User.class, userId);
+        return Integer.parseInt(em.createQuery("SELECT COUNT(b) FROM Business b WHERE b.user = :user").setParameter("user", u).getSingleResult().toString()) > 0;
     }
 
@@ -71,8 +57,14 @@
     }
 
-
     @Transactional
     @Override
-    public void editBusiness(Business business) {
+    public void editBusiness(long businessId, String name, String phone, String address, String edbs, User user, boolean approved) {
+        Business business = findBusinessById(businessId);
+        business.setName(name);
+        business.setPhone(phone);
+        business.setAddress(address);
+        business.setEdbs(edbs);
+        business.setUser(user);
+        business.setApproved(approved);
         em.persist(business);
     }
Index: src/main/java/com/tourMate/dao/impl/HotelDaoImpl.java
===================================================================
--- src/main/java/com/tourMate/dao/impl/HotelDaoImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/impl/HotelDaoImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -3,14 +3,9 @@
 import com.tourMate.dao.HotelDao;
 import com.tourMate.entities.*;
-import com.tourMate.events.OnHotelReservationEvent;
-import com.tourMate.events.OnRegistrationSuccessEvent;
 import jakarta.persistence.EntityManager;
 import jakarta.persistence.PersistenceContext;
 import jakarta.transaction.Transactional;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.ApplicationEventPublisher;
 import org.springframework.stereotype.Service;
 
-import java.util.Calendar;
 import java.util.Date;
 import java.util.List;
@@ -21,35 +16,51 @@
     @PersistenceContext
     EntityManager em;
-    @Autowired
-    ApplicationEventPublisher eventPublisher;
-
-    @Override
-    @Transactional
-    public void createHotel(Hotels hotel) {
+
+    @Override
+    @Transactional
+    public void createHotel(Hotels hotel, long userId) {
+        User u = em.find(User.class, userId);
+        Hotels h = new Hotels(hotel.getHotelName(), hotel.getHotelDescripiton(), hotel.getHotelLocation(), hotel.getHotelEDBS(), hotel.getParking(), hotel.getPetFriendly(), hotel.getInternetAvailable(), u);
+        em.persist(h);
+    }
+
+    @Override
+    public List<Hotels> getHotels() {
+        List<Hotels> hoteli = em.createQuery("select h from Hotels h order by h.hotelId").getResultList();
+        System.out.println("OREEEEEEL");
+        return hoteli;
+        //return em.createQuery("select h from Hotels h order by h.hotelId").getResultList();
+    }
+
+    @Override
+    public List<Hotels> getHotelsForUser(long userId) {
+        User u = em.find(User.class, userId);
+        return em.createQuery("select h from Hotels h where h.owner = :u").setParameter("u", u).getResultList();
+    }
+
+    @Override
+    public List<Hotels> getHotelsByLocation(String hotelLocation) {
+        return em.createQuery("select h from Hotels h where h.hotelLocation = hotelLocation").getResultList();
+    }
+
+    @Transactional
+    @Override
+    public void editHotel(long hotelId, String hotelName, String hotelDescripiton, String hotelLocation, String hotelEDBS, Boolean parking, Boolean petFriendly, Boolean internetAvailable) {
+        Hotels hotel = findHotelByID(hotelId);
+        hotel.setHotelName(hotelName);
+        hotel.setHotelDescripiton(hotelDescripiton);
+        hotel.setHotelLocation(hotelLocation);
+        hotel.setHotelEDBS(hotelEDBS);
+        hotel.setParking(parking);
+        hotel.setPetFriendly(petFriendly);
+        hotel.setInternetAvailable(internetAvailable);
         em.persist(hotel);
     }
 
-    @Override
-    public List<Hotels> getHotels() {
-        return em.createQuery("select h from Hotels h order by h.hotelId").getResultList();
-    }
-
-    @Override
-    public List<Hotels> getHotelsForUser(User u) {
-        return em.createQuery("select h from Hotels h where h.owner = :u or h.owner in :users")
-                .setParameter("u", u)
-                .setParameter("users", u.getConnectedAccounts())
-                .getResultList();
-    }
-    @Transactional
-    @Override
-    public void editHotel(Hotels hotel) {
-        em.persist(hotel);
-    }
-
-    @Transactional
-    @Override
-    public void deleteHotel(Hotels hotel) {
-        em.remove(hotel);
+    @Transactional
+    @Override
+    public void deleteHotel(long hotelId) {
+        Hotels h = findHotelByID(hotelId);
+        em.remove(h);
     }
 
@@ -66,23 +77,13 @@
     @Override
     @Transactional
-    public void addHotelImage(HotelsImages image) {
-        em.persist(image);
-    }
-
-    @Transactional
-    @Override
-    public void addRoomImage(HotelRoomImages x) {
-        em.persist(x);
-    }
-
-    @Override
-    @Transactional
-    public void  saveReservation(HotelRoomReservations hotelRoomReservations) {
-        em.persist(hotelRoomReservations);
-    }
-
-    @Override
-    @Transactional
-    public HotelsImages findHotelImageById(long hotelImageId) {
+    public void addHotelImage(Hotels hotel, String url)
+    {
+        HotelsImages hotelsImages = new HotelsImages(hotel, url);
+        em.persist(hotelsImages);
+    }
+
+    @Override
+    @Transactional
+    public HotelsImages findHotelImageById(long hotelImageId){
         return em.find(HotelsImages.class, hotelImageId);
     }
@@ -90,11 +91,13 @@
     @Override
     @Transactional
-    public void deleteHotelImage(HotelsImages hotelsImages) {
+    public void deleteHotelImage(long hotelImageId){
+        HotelsImages hotelsImages = findHotelImageById(hotelImageId);
         em.remove(hotelsImages);
     }
 
     @Override
-    public List<HotelRoom> getRoomsOfHotel(Hotels hotel) {
-        return em.createQuery("SELECT hr from HotelRoom hr where hr.hotel = :hotel").setParameter("hotel", hotel).getResultList();
+    public List<HotelRoom> getRoomsOfHotel(long hotelId) {
+        Hotels h = findHotelByID(hotelId);
+        return em.createQuery("SELECT hr from HotelRoom hr where hr.hotel = :hotel").setParameter("hotel", h).getResultList();
     }
 
@@ -111,10 +114,11 @@
     @Override
     public List<HotelRoomImages> getRoomImages(HotelRoom hotelRoom) {
-        return em.createQuery("select i from HotelRoomImages i where i.room = :hotelRoom").setParameter("hotelRoom", hotelRoom).getResultList();
-    }
-
-    @Transactional
-    @Override
-    public void createRoom(HotelRoom hotelRoom) {
+        return em.createQuery("select i.url from HotelRoomImages i where i.room = :hotelRoom").setParameter("hotelRoom", hotelRoom).getResultList();
+    }
+
+    @Transactional
+    @Override
+    public void createRoom(Hotels hotel, String hotelRoomDescription, String hotelRoomName, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price) {
+        HotelRoom hotelRoom = new HotelRoom(hotel, hotelRoomDescription, hotelRoomName, kitchenAvailable, airConditioning, balcony, price);
         em.persist(hotelRoom);
     }
@@ -122,5 +126,13 @@
     @Transactional
     @Override
-    public void editRoom(HotelRoom hr) {
+    public void editRoom(long hotelRoomId, Hotels hotel, String hotelRoomDescription, String hotelRoomName, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price) {
+        HotelRoom hr = findRoomById(hotelRoomId);
+        hr.setHotel(hotel);
+        hr.setHotelRoomDescription(hotelRoomDescription);
+        hr.setHotelRoomName(hotelRoomName);
+        hr.setKitchenAvailable(kitchenAvailable);
+        hr.setAirConditioning(airConditioning);
+        hr.setBalcony(balcony);
+        hr.setPrice(price);
         em.persist(hr);
     }
@@ -128,5 +140,6 @@
     @Transactional
     @Override
-    public void deleteRoom(HotelRoom hr) {
+    public void deleteRoom(long hotelRoomId) {
+        HotelRoom hr = findRoomById(hotelRoomId);
         em.remove(hr);
     }
@@ -134,5 +147,6 @@
     @Transactional
     @Override
-    public void createRoomAvailible(HotelRoomAvailable hra) {
+    public void createRoomAvailible(HotelRoom hotelRoom, Date dateFrom, Date dateTo, int numberOfBeds) {
+        HotelRoomAvailable hra = new HotelRoomAvailable(hotelRoom, dateFrom, dateTo, numberOfBeds);
         em.persist(hra);
     }
@@ -140,5 +154,10 @@
     @Transactional
     @Override
-    public void editRoomAvailible(HotelRoomAvailable hr) {
+    public void editRoomAvailible(long hotelRoomAvailableId, HotelRoom hotelRoom, Date dateFrom, Date dateTo, int numberOfBeds) {
+        HotelRoomAvailable hr = findAvailibleRoomById(hotelRoomAvailableId);
+        hr.setHotelRoom(hotelRoom);
+        hr.setDateFrom(dateFrom);
+        hr.setDateTo(dateTo);
+        hr.setNumberOfBeds(numberOfBeds);
         em.persist(hr);
     }
@@ -146,5 +165,6 @@
     @Transactional
     @Override
-    public void deleteRoomAvailible(HotelRoomAvailable hra) {
+    public void deleteRoomAvailible(long hotelRoomAvailableId) {
+        HotelRoomAvailable hra = findAvailibleRoomById(hotelRoomAvailableId);
         em.remove(hra);
     }
@@ -166,135 +186,60 @@
 
     @Override
-    public List<HotelRoomAvailable> getRoomsAvailibilityByDateAndLocation(String hotelLocation, Date dateFrom, Date dateTo, int numberOfBeds, Boolean flexible) {
-        if(flexible)
-        {
-            Calendar calendar = Calendar.getInstance();
-            Calendar calendar1 = Calendar.getInstance();
-            calendar.setTime(dateTo);
-            calendar1.setTime(dateFrom);
-            return em.createQuery("SELECT hr FROM HotelRoomAvailable hr WHERE " +
-                            "((hr.dateFrom <= :dateTo AND hr.dateTo >= :dateFrom) OR " +
-                            "(hr.dateFrom <= :dateToMinus1 AND hr.dateTo >= :dateFromMinus1) OR " +
-                            "(hr.dateFrom <= :dateToMinus2 AND hr.dateTo >= :dateFromMinus2) OR " +
-                            "(hr.dateFrom <= :dateToMinus3 AND hr.dateTo >= :dateFromMinus3) OR " +
-                            "(hr.dateFrom <= :dateToPlus1 AND hr.dateTo >= :dateFromPlus1) OR " +
-                            "(hr.dateFrom <= :dateToPlus2 AND hr.dateTo >= :dateFromPlus2) OR " +
-                            "(hr.dateFrom <= :dateToPlus3 AND hr.dateTo >= :dateFromPlus3)) " +
-                            "AND hr.hotelRoom.hotel.hotelLocation LIKE :hotelLocation " +
-                            "AND hr.hotelRoom.numOfBeds >= :numBeds")
-                    .setParameter("hotelLocation", hotelLocation)
-                    .setParameter("dateFrom", dateFrom)
-                    .setParameter("dateTo", dateTo)
-                    .setParameter("dateToMinus1", subtractDays(calendar, 1))
-                    .setParameter("dateToMinus2", subtractDays(calendar, 2))
-                    .setParameter("dateToMinus3", subtractDays(calendar, 3))
-                    .setParameter("dateToPlus1", addDays(calendar, 1))
-                    .setParameter("dateToPlus2", addDays(calendar, 2))
-                    .setParameter("dateToPlus3", addDays(calendar, 3))
-                    .setParameter("dateFromMinus1", subtractDays(calendar1, 1))
-                    .setParameter("dateFromMinus2", subtractDays(calendar1, 2))
-                    .setParameter("dateFromMinus3", subtractDays(calendar1, 3))
-                    .setParameter("dateFromPlus1", addDays(calendar1, 1))
-                    .setParameter("dateFromPlus2", addDays(calendar1, 2))
-                    .setParameter("dateFromPlus3", addDays(calendar1, 3))
-                    .setParameter("numBeds", numberOfBeds)
-                    .getResultList();
-        }
-        else
-        {
-            return em.createQuery("SELECT hr FROM HotelRoomAvailable hr WHERE " +
-                            "((hr.dateFrom <= :dateTo AND hr.dateTo >= :dateFrom)) " +
-                            "AND hr.hotelRoom.hotel.hotelLocation LIKE :hotelLocation " +
-                            "AND hr.hotelRoom.numOfBeds >= :numBeds")
-                    .setParameter("hotelLocation", hotelLocation)
-                    .setParameter("dateFrom", dateFrom)
-                    .setParameter("dateTo", dateTo)
-                    .setParameter("numBeds", numberOfBeds)
-                    .getResultList();
-        }
-
-    }
-
-    private Date addDays(Calendar calendar, int days) {
-        Calendar newCalendar = (Calendar) calendar.clone();
-        newCalendar.add(Calendar.DAY_OF_MONTH, days);
-        return newCalendar.getTime();
-    }
-
-    private Date subtractDays(Calendar calendar, int days) {
-        Calendar newCalendar = (Calendar) calendar.clone();
-        newCalendar.add(Calendar.DAY_OF_MONTH, -days);
-        return newCalendar.getTime();
-    }
-
-    @Override
-    @Transactional
-    public void createReservation(HotelRoomReservations  r) {
-        em.persist(r);
-        eventPublisher.publishEvent(new OnHotelReservationEvent(r.getUser(), r));
-    }
-
-    @Override
-    @Transactional
-    public void editReservation(HotelRoomReservations hr) {
-        em.persist(hr);
-    }
-
-    @Transactional
-    @Override
-    public void deleteReservation(HotelRoomReservations hr) {
-        em.remove(hr);
-    }
-
-    @Override
-    public HotelRoomReservations findReservationById(long hotelRoomReservedId) {
-        return em.find(HotelRoomReservations.class, hotelRoomReservedId);
-    }
-
-    @Override
-    public List<HotelRoomReservations> findReservationByUser(User user) {
-        return em.createQuery("select hr from HotelRoomReservations hr where hr.user = :user and hr.dateTo >= now()")
-                .setParameter("user", user).getResultList();
-    }
-
-    @Override
-    public List<HotelRoomReservations> findReservationByHotel(Hotels hotel) {
-        List<HotelRoom> hotelRooms = getRoomsOfHotel(hotel);
-        return em.createQuery("select hr from HotelRoomReservations hr where hr.hotelRoom.hotel = :hotel").setParameter("hotel", hotel).getResultList();
-    }
-
-    @Override
-    public List<HotelRoomReservations> getReservations() {
-        return em.createQuery("select hr from HotelRoomReservations hr order by hr.user.name").getResultList();
-    }
-
-    @Override
-    public List<Reviews> findReviewsByHotel(Hotels hotel) {
-        return em.createQuery("select r from Reviews r where r.hotel = :hotel")
-                .setParameter("hotel", hotel)
-                .getResultList();
-    }
-
-    @Override
-    public List<HotelRoomReservations> findPastReservationByUser(User u) {
-        return em.createQuery("select hr from HotelRoomReservations hr where hr.user = :user and hr.dateTo <= now()")
-                .setParameter("user", u).getResultList();
-    }
-
-    @Override
-    public List<HotelRoomReservations> getReservationsInPeriod(String hotelLocation, Date dateFrom, Date dateTo) {
-        return em.createQuery("select hr from HotelRoomReservations hr where hr.hotelRoom.hotel.hotelLocation like :hotelLocation and (hr.dateFrom between :dateFrom and :dateTo) or (hr.dateTo between :dateFrom and :dateTo)")
+    public List<HotelRoomAvailable> getRoomsAvailibilityByDateAndLocation(String hotelLocation, Date dateFrom, Date dateTo, int numberOfBeds) {
+        return em.createQuery("select hr from HotelRoomAvailable hr where hr.dateFrom <= :dateFrom and hr.dateTo >= :dateTo " +
+                "and hr.hotelRoom.hotel.hotelLocation LIKE :hotelLocation and hr.numberOfBeds >= :numBeds")
                 .setParameter("hotelLocation", hotelLocation)
                 .setParameter("dateFrom", dateFrom)
                 .setParameter("dateTo", dateTo)
+                .setParameter("numBeds", numberOfBeds)
                 .getResultList();
     }
 
     @Override
-    public List<Hotels> getHotelsByLocation(String hotelLocation)
-    {
-        return em.createQuery("select h from Hotels h where h.hotelLocation like :hotelLocation")
-                .setParameter("hotelLocation", hotelLocation)
-                .getResultList();
+    @Transactional
+    public void createReservation(User user, HotelRoom hotelRoom, Date dateFrom, Date dateTo, Integer numberOfBeds) {
+        HotelRoomReservations r = new HotelRoomReservations(user, hotelRoom, dateFrom, dateTo, numberOfBeds);
+        em.persist(r);
+    }
+
+    @Override
+    @Transactional
+    public void editReservation(long hotelRoomReservedId, User user, HotelRoom hotelRoom, Date dateFrom, Date dateTo, Integer numberOfBeds) {
+        HotelRoomReservations hr = findReservationById(hotelRoomReservedId);
+        hr.setUser(user);
+        hr.setHotelRoom(hotelRoom);
+        hr.setDateFrom(dateFrom);
+        hr.setDateTo(dateTo);
+        hr.setNumberOfBeds(numberOfBeds);
+        em.persist(hr);
+
+    }
+
+    @Transactional
+    @Override
+    public void deleteReservation(long hotelRoomReservedId) {
+        HotelRoomReservations r = findReservationById(hotelRoomReservedId);
+        em.remove(hotelRoomReservedId);
+    }
+
+    @Override
+    public HotelRoomReservations findReservationById(long hotelRoomReservedId) {
+        return em.find(HotelRoomReservations.class, hotelRoomReservedId);
+    }
+
+    @Override
+    public List<HotelRoomReservations> findReservationByUser(User user) {
+        return em.createQuery("select hr from HotelRoomReservations hr where hr.user = :user").setParameter("user", user).getResultList();
+    }
+
+    @Override
+    public List<HotelRoomReservations> findReservationByHotel(Hotels hotel) {
+        List<HotelRoom> hotelRooms = getRoomsOfHotel(hotel.getHotelId());
+        return em.createQuery("select hr from HotelRoomReservations hr where hr.hotelRoom in :hotelRooms").setParameter("hotelRooms", hotelRooms).getResultList();
+    }
+
+    @Override
+    public List<HotelRoomReservations> getReservations() {
+        return em.createQuery("select hr from HotelRoomReservations hr order by hr.user.name").getResultList();
     }
 }
Index: src/main/java/com/tourMate/dao/impl/MenuDaoImpl.java
===================================================================
--- src/main/java/com/tourMate/dao/impl/MenuDaoImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/impl/MenuDaoImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -18,5 +18,6 @@
     @Transactional
     @Override
-    public void createMenu(Menu menu) {
+    public void createMenu(String name, String ingredients, double price) {
+        Menu menu = new Menu(name, ingredients, price);
         em.persist(menu);
     }
@@ -24,5 +25,6 @@
     @Transactional
     @Override
-    public void deleteMenu(Menu menu) {
+    public void deleteMenu(long menuId) {
+        Menu menu = findMenuById(menuId);
         em.remove(menu);
     }
@@ -40,6 +42,9 @@
     @Transactional
     @Override
-    public void editMenu(Menu menu) {
-
+    public void editMenu(long menuId, String name, String ingredients, double price) {
+        Menu menu = findMenuById(menuId);
+        menu.setName(name);
+        menu.setIngredients(ingredients);
+        menu.setPrice(price);
         em.persist(menu);
     }
Index: src/main/java/com/tourMate/dao/impl/RestaurantDaoImpl.java
===================================================================
--- src/main/java/com/tourMate/dao/impl/RestaurantDaoImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/impl/RestaurantDaoImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -18,6 +18,8 @@
     @Override
     @Transactional
-    public void createRestaurant(Restaurant restaurant) {
-        em.persist(restaurant);
+    public void createRestaurant(Restaurant restaurant, long userId) {
+        User u = em.find(User.class, userId);
+        Restaurant r = new Restaurant(restaurant.getRestaurantName(), restaurant.getRestaurantLocation(), restaurant.getCousineType(), restaurant.getRestaurantDescription(), restaurant.getRestaurantEdbs(), u);
+        em.persist(r);
     }
 
@@ -33,14 +35,14 @@
     }
 
-    @Transactional
-    @Override
-    public void addRestaurantImage(RestaurantImages restaurantImages){
-        em.persist(restaurantImages);
-    }
-
-    @Transactional
-    @Override
-    public void removeRestaurantImage(RestaurantImages image){
-        em.remove(image);
+    @Override
+    public void addRestaurantImage(Restaurant restaurant, String url){
+
+    }
+
+    @Transactional
+    @Override
+    public void removeRestaurantImage(long restaurantImageId){
+        RestaurantImages restaurantImage = findRestaurantImageById(restaurantImageId);
+        em.remove(restaurantImage);
     }
 
@@ -52,5 +54,6 @@
 
     @Override
-    public void deleteRestaurant(Restaurant r) {
+    public void deleteRestaurant(long restaurantID) {
+        Restaurant r = findRestaurantByID(restaurantID);
         em.remove(r);
     }
@@ -63,5 +66,7 @@
     @Override
     @Transactional
-    public void addMenuToRestaurant(Menu menu) {
+    public void addMenuToRestaurant(long restaurantId, Menu menu) {
+        Restaurant r = findRestaurantByID(restaurantId);
+        menu.setRestaurant(r);
         em.persist(menu);
     }
@@ -78,6 +83,20 @@
 
     @Override
+    @Transactional
+    public void editRestaurant(long restaurantID, String restaurantName, String restaurantLocation, String cousineType, String restaurantDescription, String restaurantEdbs, User restaurantOwner) {
+        Restaurant res = findRestaurantByID(restaurantID);
+        res.setRestaurantName(restaurantName);
+        res.setRestaurantLocation(restaurantLocation);
+        res.setRestaurantEdbs(restaurantEdbs);
+        res.setRestaurantDescription(restaurantDescription);
+        res.setRestaurantOwner(restaurantOwner);
+        res.setCousineType(cousineType);
+        em.persist(res);
+    }
+
+    @Override
     public List<RestaurantsTable> getRestaurantTables(long restaurantID) {
-        return em.createQuery("select rt from RestaurantsTable rt where rt.restaurant.restaurantID = :restaurantId").setParameter("restaurantId", restaurantID).getResultList();
+        List<RestaurantsTable> restaurantsTables = getRestaurantTables(restaurantID);
+        return restaurantsTables;
     }
 
@@ -89,21 +108,36 @@
     @Override
     @Transactional
-    public void saveTable(RestaurantsTable resTable) {
+    public void createTable(Restaurant restaurant, int noSeats) {
+        RestaurantsTable resTable = new RestaurantsTable(restaurant, noSeats);
         em.persist(resTable);
     }
 
-
-    @Override
-    @Transactional
-    public void deleteTable(RestaurantsTable rt) {
+    @Override
+    @Transactional
+    public void editTable(Restaurant restaurant, long tableId, int noSeats) {
+        RestaurantsTable resTable = findTableById(tableId);
+        resTable.setRestaurant(restaurant);
+        resTable.setNoSeats(noSeats);
+        em.persist(resTable);
+    }
+
+    @Override
+    @Transactional
+    public void deleteTable(long tableId) {
+        RestaurantsTable rt  = findTableById(tableId);
         em.persist(rt);
     }
 
     @Override
-    public List<Restaurant> getRestaurantsByUser(User u) {
-        return em.createQuery("select r from Restaurant r where r.restaurantOwner = :u or r.restaurantOwner in :users")
-                .setParameter("u", u)
-                .setParameter("users", u.getConnectedAccounts())
-                .getResultList();
+    public List<Restaurant> getRestaurantsByUser(long userId) {
+        User u = em.find(User.class, userId);
+        return em.createQuery("select r from Restaurant r where r.restaurantOwner = :u").setParameter("u", u).getResultList();
+    }
+
+    @Override
+    @Transactional
+    public void createTableAvailable(RestaurantsTable restaurantsTable, Date hourFrom, Date hourTo, int noSeats) {
+        RestaurantsAvailible ra = new RestaurantsAvailible(restaurantsTable, hourFrom, hourTo, noSeats);
+        em.persist(ra);
     }
 
@@ -116,11 +150,22 @@
     @Override
     @Transactional
-    public void saveTableAvailable(RestaurantsAvailible ra){
-        em.persist(ra);
-    }
-
-    @Override
-    @Transactional
-    public void deleteTableAvailable(RestaurantsAvailible ra) {
+    public void createTableAvailable(RestaurantsTable restaurantsTable, Date hourFrom, Date hourTo){
+        RestaurantsAvailible rta = new RestaurantsAvailible(restaurantsTable, hourFrom, hourTo);
+        em.persist(rta);
+    }
+
+    @Override
+    @Transactional
+    public void editTableAvailable(long tableId, Restaurant restaurant, int noSeats) {
+        RestaurantsTable rt = findTableById(tableId);
+        rt.setRestaurant(restaurant);
+        rt.setNoSeats(noSeats);
+        em.persist(rt);
+    }
+
+    @Override
+    @Transactional
+    public void deleteTableAvailable(long tableId) {
+        RestaurantsAvailible ra = findAvailableReservationByID(tableId);
         em.remove(ra);
     }
@@ -132,13 +177,24 @@
 
     @Override
-    @Transactional
-    public void createReservation(RestaurantReservations reservations) {
-        em.persist(reservations);
-    }
-
-
-    @Override
-    @Transactional
-    public void deleteReservation(RestaurantReservations r) {
+    public void createReservation(RestaurantsTable rt, Date hourFrom, Date hourTo, User user) {
+
+    }
+
+    @Override
+    @Transactional
+    public void editReservation(long restaurantsTableId, RestaurantsTable rt, Date hourFrom, Date hourTo, int noSeats, User user) {
+        RestaurantReservations r = findReservationByID(restaurantsTableId);
+        r.setTable(rt);
+        r.setTimeFrom(hourFrom);
+        r.setTimeTo(hourTo);
+        r.setNoSeats(noSeats);
+        r.setUser(user);
+        em.persist(r);
+    }
+
+    @Override
+    @Transactional
+    public void deleteReservation(long restaurantsTableId) {
+        RestaurantReservations r = findReservationByID(restaurantsTableId);
         em.remove(r);
     }
@@ -156,7 +212,5 @@
     @Override
     public List<RestaurantReservations> findReservationByUser(User user) {
-        return em.createQuery("SELECT r from RestaurantReservations r where r.user = :user and r.timeTo >= now()")
-                .setParameter("user", user)
-                .getResultList();
+        return em.createQuery("SELECT r from RestaurantReservations r where r.user = :user").setParameter("user", user).getResultList();
     }
 
@@ -187,46 +241,3 @@
         return em.createQuery("select rt from RestaurantsTable rt where rt.noSeats = noSeats").getResultList();
     }
-
-    @Override
-    public List<Reviews> findReviewsByRestaurant(Restaurant restaurant) {
-        return em.createQuery("select r from Reviews r where r.restaurant = :restaurant")
-                .setParameter("restaurant", restaurant)
-                .getResultList();
-    }
-
-    @Override
-    public List<RestaurantReservations> findPastReservationsByUser(User user) {
-        return em.createQuery("SELECT r from RestaurantReservations r where r.user = :user and r.timeTo <= now()")
-                .setParameter("user", user).getResultList();
-
-    }
-
-    @Override
-    public List<MenuImages> getMenuImages(long menuId) {
-        return em.createQuery("select ri from MenuImages ri where ri.menu.id = :menuId").setParameter("menuId", menuId).getResultList();
-    }
-
-    @Override
-    public List<MenuImages> getMenuImagesByRestaurant(Restaurant resta) {
-        return em.createQuery("select mi from MenuImages mi where mi.menu.restaurant = :restaurant")
-                .setParameter("restaurant", resta)
-                .getResultList();
-    }
-
-    @Transactional
-    @Override
-    public void addMenuImage(MenuImages menuImages) {
-        em.persist(menuImages);
-    }
-
-    @Override
-    public Menu findMenuId(Long menuId) {
-        return em.find(Menu.class, menuId);
-    }
-
-    @Override
-    @Transactional
-    public void saveReservation(RestaurantReservations restaurantReservations) {
-        em.persist(restaurantReservations);
-    }
 }
Index: src/main/java/com/tourMate/dao/impl/ReviewDaoImpl.java
===================================================================
--- src/main/java/com/tourMate/dao/impl/ReviewDaoImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/impl/ReviewDaoImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -8,5 +8,4 @@
 import jakarta.persistence.EntityManager;
 import jakarta.persistence.PersistenceContext;
-import jakarta.transaction.Transactional;
 import org.springframework.stereotype.Service;
 
@@ -19,11 +18,12 @@
     
     @Override
-    @Transactional
-    public void createReview(Reviews review) {
+    public void createReview(String title, String description, int numStar, Hotels hotel, Restaurant restaurant, Transport transport) {
+        Reviews review = new Reviews (title, numStar, description, hotel, restaurant, transport);
         em.persist(review);
     }
 
     @Override
-    public void deleteReview(Reviews review) {
+    public void deleteReview(long id) {
+        Reviews review = findReviewById(id);
         em.remove(review);
     }
@@ -35,5 +35,12 @@
 
     @Override
-    public void editReview(Reviews review) {
+    public void editReview(long id, String title, String description, int numStar, Hotels hotel, Restaurant restaurant, Transport transport) {
+        Reviews review = findReviewById(id);
+        review.setDescription(description);
+        review.setHotel(hotel);
+        review.setRestaurant(restaurant);
+        review.setTitle(title);
+        review.setNumStar(numStar);
+        review.setTransport(transport);
         em.persist(review);
     }
Index: src/main/java/com/tourMate/dao/impl/TokenDaoImpl.java
===================================================================
--- src/main/java/com/tourMate/dao/impl/TokenDaoImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
+++ src/main/java/com/tourMate/dao/impl/TokenDaoImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -0,0 +1,36 @@
+package com.tourMate.dao.impl;
+
+import com.tourMate.dao.TokenDao;
+import com.tourMate.entities.Token;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.PersistenceContext;
+import jakarta.transaction.Transactional;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+
+@Service
+public class TokenDaoImpl implements TokenDao {
+
+    @PersistenceContext
+    EntityManager em;
+    @Override
+    public void saveToken(Token token) {
+        em.persist(token);
+    }
+
+    @Override
+    public Token getToken(String token) {
+        return (Token) em.createQuery("select t from Token t where t.token = :token").setParameter("token", token).getSingleResult();
+    }
+
+    @Override
+    @Transactional
+    public void setConfirmedAt(String token, LocalDateTime dateTime) {
+        Token t = getToken(token);
+        t.setConfirmedAt(LocalDateTime.now());
+        em.persist(t);
+    }
+}
Index: src/main/java/com/tourMate/dao/impl/TransportDaoImpl.java
===================================================================
--- src/main/java/com/tourMate/dao/impl/TransportDaoImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/impl/TransportDaoImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -2,4 +2,6 @@
 
 import com.tourMate.dao.TransportDao;
+import com.tourMate.dto.RouteListingDto;
+import com.tourMate.dto.TransportDto;
 import com.tourMate.entities.*;
 import jakarta.persistence.EntityManager;
@@ -8,4 +10,5 @@
 import org.springframework.stereotype.Service;
 
+import java.util.Collection;
 import java.util.Date;
 import java.util.List;
@@ -19,5 +22,7 @@
     @Override
     @Transactional
-    public void createTransport(Transport t) {
+    public void createTransport(String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, User owner, String carPlate) {
+        User u = em.find(User.class, 1);
+        Transport t=new Transport(transportName,carBrand,carType,carManufacturedYear,noPassengers,noBags,EMBG,u,carPlate);
         em.persist(t);
     }
@@ -25,5 +30,6 @@
     @Override
     @Transactional
-    public void deleteTransport(Transport t) {
+    public void deleteTransport(long transportId) {
+        Transport t=getTransportById(transportId);
         em.remove(t);
     }
@@ -35,25 +41,70 @@
 
     @Override
-    public List<Transport> getTransportsByUser(User u) {
-        List<Transport> transports = em.createQuery("select t from Transport t where t.owner = :u or t.owner in :users")
-                .setParameter("u", u)
-                .setParameter("users", u.getConnectedAccounts())
-                .getResultList();
-        return transports;
-    }
-
-    @Override
-    public List<TransportAvailible> getRoutesForTransport(Transport t) {
+    public List<TransportDto> getTransportsByUser(long userId) {
+        User u = em.find(User.class, userId);
+        List<Transport> transports = em.createQuery("select t from Transport t where t.owner = :u").setParameter("u", u).getResultList();
+        return transports.stream().map(x -> new TransportDto(
+                x.getTransportID(),
+                x.getTransportName(),
+                x.getCarBrand(),
+                x.getCarType(),
+                x.getCarManufacturedYear(),
+                x.getNoPassengers(),
+                x.getNoBags(),
+                x.getEMBG(),
+                x.getOwner(),
+                x.getCarPlate(),
+                x.getAvailableRoutes().stream().map(y -> new RouteListingDto(
+                        y.getTransportAvailibleId(),
+                        y.getFrom(),
+                        y.getTo(),
+                        y.getDate(),
+                        y.getFreeSpace(),
+                        y.getTime(),
+                        y.getRoutes()
+                )).toList()
+        )).toList();
+    }
+
+    @Override
+    public List<RouteListingDto> getRoutesForTransport(long transportId) {
+        Transport t = em.find(Transport.class, transportId);
         List<TransportAvailible> transportsAvailible = em.createQuery("select ta from TransportAvailible ta where ta.transport = :transport").setParameter("transport", t).getResultList();
-        return transportsAvailible;
-    }
-
-    @Override
-    public Transport findTransportById(long transportId) {
+        return transportsAvailible.stream().map(x -> new RouteListingDto(
+                x.getTransportAvailibleId(),
+                x.getFrom(),
+                x.getTo(),
+                x.getDate(),
+                x.getFreeSpace(),
+                x.getTime(),
+                x.getRoutes()
+        )).toList();
+    }
+
+    @Override
+    public TransportDto findTransportById(long transportId) {
         Transport x = em.find(Transport.class,transportId);
-        return x;
-    }
-
-    @Override
+        return new TransportDto(
+                x.getTransportID(),
+                x.getTransportName(),
+                x.getCarBrand(),
+                x.getCarType(),
+                x.getCarManufacturedYear(),
+                x.getNoPassengers(),
+                x.getNoBags(),
+                x.getEMBG(),
+                x.getOwner(),
+                x.getCarPlate(),
+                x.getAvailableRoutes().stream().map(y -> new RouteListingDto(
+                        y.getTransportAvailibleId(),
+                        y.getFrom(),
+                        y.getTo(),
+                        y.getDate(),
+                        y.getFreeSpace(),
+                        y.getTime(),
+                        y.getRoutes()
+                )).toList());
+    }
+
     public Transport getTransportById(long transportId)
     {
@@ -63,5 +114,15 @@
     @Override
     @Transactional
-    public void editTransport(Transport t) {
+    public void editTransport(long transportID, String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, User owner, String carPlate) {
+        Transport t=getTransportById(transportID);
+        t.setTransportName(transportName);
+        t.setCarBrand(carBrand);
+        t.setCarType(carType);
+        t.setCarManufacturedYear(carManufacturedYear);
+        t.setNoPassengers(noPassengers);
+        t.setNoBags(noBags);
+        t.setEMBG(EMBG);
+        t.setOwner(owner);
+        t.setCarPlate(carPlate);
         em.persist(t);
     }
@@ -69,6 +130,7 @@
     @Override
     @Transactional
-    public void createTransportReservation(TransportReservation transportReservation) {
-        em.persist(transportReservation);
+    public void createTransportReservation(Transport transport, String departureLocation, String arrivalLocation, Date date, Integer noSeats, User user, Date departureHour) {
+        TransportReservation tr=new TransportReservation(transport,departureLocation,arrivalLocation,date,noSeats,user,departureHour);
+        em.persist(tr);
     }
 
@@ -89,11 +151,8 @@
 
     @Override
-    public List<TransportRoute> getTransportsAvailableByFilters(String fromL, String toL, Date date, int numPassengers) {
+    public List<TransportRoute> getTransportsAvailableByFilters(String fromL, String toL, Date date) {
         System.out.println(fromL + " " + toL);
-        return em.createQuery("select h from TransportRoute h where h.from = :froml and h.to = :tol and h.freeSpace >= :nump")
-                .setParameter("froml", fromL)
-                .setParameter("tol", toL)
-                .setParameter("nump", numPassengers)
-                .getResultList();
+        return em.createQuery("select h from TransportRoute h where h.from = :froml and h.to = :tol").setParameter("froml", fromL).
+                setParameter("tol", toL).getResultList();
     }
 
@@ -110,11 +169,37 @@
     @Override
     @Transactional
-    public void createTransportAvailable(TransportAvailible ta) {
+    public void createTransportAvailable(Transport transport, String departureLocation, String arrivalLocation, Date date, Integer noSeats, Date departureHour, Collection<TransportRoute> routes) {
+        TransportAvailible ta=new TransportAvailible(transport,departureLocation,arrivalLocation,date,noSeats,departureHour);
         em.persist(ta);
-
-    }
-
-    @Override
-    public void editTransportAvailable(TransportAvailible ta) {
+        List<TransportRoute> routes1 = routes.stream().toList();
+        routes.forEach(x -> {
+            createTransportRoute(ta, x.getFrom(), x.getTo(), x.getPrice(), x.getDeparture(), x.getArrival(), x.getFreeSpace(), x.getOrder());
+        });
+    }
+
+    @Override
+    @Transactional
+    public void editTransportReservation(Transport transport, long reservationID, String departureLocation, String arrivalLocation, Date date, Integer noSeats, User user, Date departureHour)
+    {
+        TransportReservation tr=findTransportReservationByID(reservationID);
+        tr.setTransport(transport);
+        tr.setDepartureLocation(departureLocation);
+        tr.setArrivalLocation(arrivalLocation);
+        tr.setDate(date);
+        tr.setNoSeats(noSeats);
+        tr.setUser(user);
+        tr.setDepartureHour(departureHour);
+        em.persist(tr);
+    }
+
+    @Override
+    public void editTransportAvailable(Transport transport, long availableID, String departureLocation, String arrivalLocation, Date date, Integer noSeats, Date departureHour) {
+        TransportAvailible ta=findTransportAvailableByID(availableID);
+        ta.setTransport(transport);
+        ta.setFrom(departureLocation);
+        ta.setTo(arrivalLocation);
+        ta.setDate(date);
+        ta.setFreeSpace(noSeats);
+        ta.setTime(departureHour);
         em.persist(ta);
     }
@@ -126,36 +211,7 @@
 
     @Override
-    public List<Reviews> getReviewsForTransport(Transport transport) {
-        return em.createQuery("select r from Reviews r where r.transport = :transport")
-                .setParameter("transport", transport)
-                .getResultList();
-    }
-
-    @Override
-    public List<TransportReservation> findPastReservationByUser(User user) {
-        return em.createQuery("SELECT r from TransportReservation r where r.user = :user and r.transportRoute.arrival <= now()")
-                .setParameter("user", user)
-                .getResultList();
-
-    }
-
-    @Transactional
-    @Override
-    public void saveReservation(TransportReservation transportReservation) {
-        em.persist(transportReservation);
-    }
-
-    @Override
-    public List<TransportReservation> findReservationByUser(User user) {
-        return em.createQuery("SELECT r from TransportReservation r where r.user = :user and r.transportRoute.arrival >= now()")
-                .setParameter("user", user)
-                .getResultList();
-
-    }
-
-
-    @Override
-    @Transactional
-    public void deleteTransportReservation(TransportReservation tr) {
+    @Transactional
+    public void deleteTransportReservation(long reservationID) {
+        TransportReservation tr=findTransportReservationByID(reservationID);
         em.remove(tr);
     }
@@ -163,32 +219,34 @@
     @Override
     @Transactional
-    public void deleteTransportAvailable(TransportAvailible ta) {
+    public void deleteTransportAvailable(long availableID) {
+        TransportAvailible ta=findTransportAvailableByID(availableID);
         em.remove(ta);
     }
 
     @Override
-    @Transactional
-    public void createTransportRoute(TransportRoute tr) {
-        em.persist(tr);
-    }
-
-    @Override
-    public void deleteTransportRoute(TransportRoute tr) {
+    public void createTransportRoute(TransportAvailible parentRoute, String from, String to, double price, Date departure, Date arrival, int freeSpace, int order) {
+        TransportRoute tr = new TransportRoute(parentRoute, from, to, price, departure, arrival, freeSpace, order);
+        em.persist(tr);
+    }
+
+    @Override
+    public void deleteTransportRoute(long transportRouteId) {
+        TransportRoute tr = findTransportRouteById(transportRouteId);
         em.remove(tr);
     }
 
     @Override
-    public void editTransportRoute(TransportRoute tr) {
-        em.persist(tr);
-
-    }
-
-    @Override
-    public List<TransportReservation> findTransportReservationByTransportId(Transport t) {
-        return em.createQuery("SELECT tr from TransportReservation tr where tr.transportRoute.parentRoute.transport= :transport")
-                .setParameter("transport", t)
-                .getResultList();
-    }
-
-
+    public void editTransportRoute(long transportRouteId, TransportAvailible parentRoute, String from, String to, double price, Date departure, Date arrival, int freeSpace, int order) {
+        TransportRoute tr = findTransportRouteById(transportRouteId);
+        tr.setParentRoute(parentRoute);
+        tr.setFrom(from);
+        tr.setTo(to);
+        tr.setPrice(price);
+        tr.setDeparture(departure);
+        tr.setArrival(arrival);
+        tr.setFreeSpace(freeSpace);
+        tr.setOrder(order);
+        em.persist(tr);
+
+    }
 }
Index: src/main/java/com/tourMate/dao/impl/UsersDaoImpl.java
===================================================================
--- src/main/java/com/tourMate/dao/impl/UsersDaoImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dao/impl/UsersDaoImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -4,40 +4,31 @@
 import com.tourMate.entities.Role;
 import com.tourMate.entities.User;
-import com.tourMate.events.OnProfileEnabledEvent;
-import com.tourMate.events.OnRegistrationSuccessEvent;
 import jakarta.persistence.EntityManager;
 import jakarta.persistence.PersistenceContext;
 import jakarta.transaction.Transactional;
+import org.jetbrains.annotations.NotNull;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.ApplicationEventPublisher;
 import org.springframework.security.core.userdetails.UserDetails;
 import org.springframework.security.crypto.password.PasswordEncoder;
-import org.springframework.stereotype.Repository;
+import org.springframework.stereotype.Service;
 
 import java.util.Date;
 import java.util.List;
 
-@Repository
+@Service
 public class UsersDaoImpl implements UsersDao {
 
     @PersistenceContext
     EntityManager em;
+
     @Autowired
     PasswordEncoder passwordEncoder;
-    @Autowired
-    private ApplicationEventPublisher eventPublisher;
 
     @Transactional
     @Override
     public void createUser(String name, String surname, String email, Date birthDate, String address, String contact) {
-        Role r = em.find(Role.class, 2);
+        Role r = em.find(Role.class, 1);
         User user = new User(name, surname, email, passwordEncoder.encode("password"), birthDate, address, contact, r);
-        user.setProvider("local");
-        user.setLocked(true);
         em.persist(user);
-        if(user.getProvider().equals("local"))
-        {
-            eventPublisher.publishEvent(new OnRegistrationSuccessEvent(user));
-        }
     }
 
@@ -83,62 +74,5 @@
     }
 
-    @Override
-    public List<User> getUnapprovedUsers() {
-        return em.createQuery("select u from User u where not u.enabled").getResultList();
-    }
 
-    @Override
-    @Transactional
-    public void approveUserProfile(User u) {
-        u.setEnabled(true);
-        em.persist(u);
-        eventPublisher.publishEvent(new OnProfileEnabledEvent(u));
-    }
 
-    @Override
-    public Role findById(Long id) {
-        return em.find(Role.class, id);
-    }
-
-    @Override
-    @Transactional
-    public User updateUser(User s) {
-        em.persist(s);
-        return s;
-    }
-
-    @Override
-    public User findByUsernameAndProvider(String username, String providers)
-    {
-        try
-        {
-            return (User) em.createQuery("select u from User u where u.email = :username and u.provider = :provider")
-                    .setParameter("username", username)
-                    .setParameter("provider", providers)
-                    .getSingleResult();
-        }
-        catch (Exception ex)
-        {
-            return null;
-        }
-    }
-
-    @Override
-    @Transactional
-    public User mergeUser(User user) {
-        return em.merge(user);
-    }
-
-    @Override
-    public List<User> getAdmins() {
-        return em.createQuery("select u from User u where u.role.roleName = 'SUPERADMIN'")
-                .getResultList();
-    }
-
-    @Override
-    public List<User> findConnectedAccountsByUser(User u) {
-        return em.createQuery("select u.connectedAccounts from User u where u = :user")
-                .setParameter("user", u)
-                .getResultList();
-    }
 }
Index: src/main/java/com/tourMate/dto/HotelDto.java
===================================================================
--- src/main/java/com/tourMate/dto/HotelDto.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dto/HotelDto.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,5 +1,7 @@
 package com.tourMate.dto;
 
-import com.tourMate.entities.*;
+import com.tourMate.entities.HotelRoom;
+import com.tourMate.entities.HotelRoomAvailable;
+import com.tourMate.entities.User;
 
 import java.util.ArrayList;
@@ -18,10 +20,6 @@
     private double totalPrice;
     private List<HotelRoomAvailable> hotelRooms;
-    private List<Reviews> hotelReviews;
-    private double averageScore;
-    private List<HotelsImages> images;
-    private Boolean promoted;
-    private Boolean marketed;
-    public HotelDto(long hotelId, String hotelName, String hotelDescripiton, String hotelLocation, String hotelEDBS, Boolean parking, Boolean petFriendly, Boolean internetAvailable, double totalPrice, List<HotelRoomAvailable> hotelRooms, List<Reviews> hotelReviews, double averageScore, List<HotelsImages> images, Boolean promoted, Boolean marketed) {
+
+    public HotelDto(long hotelId, String hotelName, String hotelDescripiton, String hotelLocation, String hotelEDBS, Boolean parking, Boolean petFriendly, Boolean internetAvailable, double totalPrice, List<HotelRoomAvailable> hotelRooms) {
         this.hotelId = hotelId;
         this.hotelName = hotelName;
@@ -34,9 +32,4 @@
         this.totalPrice = totalPrice;
         this.hotelRooms = hotelRooms;
-        this.hotelReviews = hotelReviews;
-        this.averageScore = averageScore;
-        this.images = images;
-        this.promoted = promoted;
-        this.marketed = marketed;
     }
 
@@ -120,42 +113,3 @@
         this.hotelRooms = hotelRooms;
     }
-    public List<Reviews> getHotelReviews() {
-        return hotelReviews;
-    }
-
-    public double getAverageScore() {
-        return averageScore;
-    }
-
-    public List<HotelsImages> getImages() {
-        return images;
-    }
-
-    public void setImages(List<HotelsImages> images) {
-        this.images = images;
-    }
-
-    public void setHotelReviews(List<Reviews> hotelReviews) {
-        this.hotelReviews = hotelReviews;
-    }
-
-    public void setAverageScore(double averageScore) {
-        this.averageScore = averageScore;
-    }
-
-    public Boolean getPromoted() {
-        return promoted;
-    }
-
-    public void setPromoted(Boolean promoted) {
-        this.promoted = promoted;
-    }
-
-    public Boolean getMarketed() {
-        return marketed;
-    }
-
-    public void setMarketed(Boolean marketed) {
-        this.marketed = marketed;
-    }
 }
Index: c/main/java/com/tourMate/dto/HotelReservationDto.java
===================================================================
--- src/main/java/com/tourMate/dto/HotelReservationDto.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,42 +1,0 @@
-package com.tourMate.dto;
-
-import com.tourMate.entities.HotelRoom;
-import com.tourMate.entities.User;
-
-import java.util.Date;
-
-public class HotelReservationDto {
-    private User user;
-    private HotelRoom hotelRoom;
-    private Date dateFrom;
-    private Date dateTo;
-    private Integer numBeds;
-
-    public HotelReservationDto(User user, HotelRoom hotelRoom, Date dateFrom, Date dateTo, Integer numBeds) {
-        this.user = user;
-        this.hotelRoom = hotelRoom;
-        this.dateFrom = dateFrom;
-        this.dateTo = dateTo;
-        this.numBeds = numBeds;
-    }
-
-    public User getUser() {
-        return user;
-    }
-
-    public HotelRoom getHotelRoom() {
-        return hotelRoom;
-    }
-
-    public Date getDateFrom() {
-        return dateFrom;
-    }
-
-    public Date getDateTo() {
-        return dateTo;
-    }
-
-    public Integer getNumBeds() {
-        return numBeds;
-    }
-}
Index: c/main/java/com/tourMate/dto/HotelReservationUserDto.java
===================================================================
--- src/main/java/com/tourMate/dto/HotelReservationUserDto.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,79 +1,0 @@
-package com.tourMate.dto;
-import com.tourMate.entities.HotelRoom;
-import com.tourMate.entities.User;
-import org.springframework.format.annotation.DateTimeFormat;
-
-import java.util.Date;
-
-public class HotelReservationUserDto {
-    private Long reservationId;
-    private User user;
-    private HotelRoom hotelRoom;
-    private Long hotelId;
-    @DateTimeFormat(pattern = "dd.MM.yyyy")
-    private Date dateFrom;
-    @DateTimeFormat(pattern = "dd.MM.yyyy")
-    private Date dateTo;
-    private Integer numBeds;
-    private String hotelName;
-    private String hotelLocation;
-    private String hotelAddress;
-    private Boolean reviewed;
-
-    public HotelReservationUserDto(Long reservationId, User user, HotelRoom hotelRoom, Date dateFrom, Date dateTo, Integer numBeds, String hotelName, String hotelLocation, String hotelAddress, Long hotelId, Boolean reviewed) {
-        this.reservationId = reservationId;
-        this.user = user;
-        this.hotelRoom = hotelRoom;
-        this.dateFrom = dateFrom;
-        this.dateTo = dateTo;
-        this.numBeds = numBeds;
-        this.hotelLocation = hotelLocation;
-        this.hotelName = hotelName;
-        this.hotelAddress = hotelAddress;
-        this.hotelId = hotelId;
-        this.reviewed = reviewed;
-    }
-
-    public Long getReservationId() {
-        return reservationId;
-    }
-
-    public User getUser() {
-        return user;
-    }
-
-    public HotelRoom getHotelRoom() {
-        return hotelRoom;
-    }
-
-    public Date getDateFrom() {
-        return dateFrom;
-    }
-
-    public Date getDateTo() {
-        return dateTo;
-    }
-
-    public Integer getNumBeds() {
-        return numBeds;
-    }
-
-    public String getHotelName() {
-        return hotelName;
-    }
-
-    public String getHotelLocation() {
-        return hotelLocation;
-    }
-    public String getHotelAddress() {
-        return hotelAddress;
-    }
-
-    public Long getHotelId() {
-        return hotelId;
-    }
-
-    public Boolean getReviewed() {
-        return reviewed;
-    }
-}
Index: c/main/java/com/tourMate/dto/PrincipalInfo.java
===================================================================
--- src/main/java/com/tourMate/dto/PrincipalInfo.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,71 +1,0 @@
-package com.tourMate.dto;
-
-public class PrincipalInfo {
-    Long id;
-    String username;
-    String role;
-    String name;
-    String surname;
-    String email;
-
-    public PrincipalInfo(Long id, String username, String role, String name, String surname, String email) {
-        this.id = id;
-        this.username = username;
-        this.role = role;
-        this.name = name;
-        this.surname = surname;
-        this.email = email;
-    }
-
-    public PrincipalInfo() {
-
-    }
-
-    public Long getId() {
-        return id;
-    }
-
-    public void setId(Long id) {
-        this.id = id;
-    }
-
-    public String getUsername() {
-        return username;
-    }
-
-    public void setUsername(String username) {
-        this.username = username;
-    }
-
-    public String getRole() {
-        return role;
-    }
-
-    public void setRole(String role) {
-        this.role = role;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-
-    public String getSurname() {
-        return surname;
-    }
-
-    public void setSurname(String surname) {
-        this.surname = surname;
-    }
-
-    public String getEmail() {
-        return email;
-    }
-
-    public void setEmail(String email) {
-        this.email = email;
-    }
-}
Index: src/main/java/com/tourMate/dto/RestaurantDto.java
===================================================================
--- src/main/java/com/tourMate/dto/RestaurantDto.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dto/RestaurantDto.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,9 +1,10 @@
 package com.tourMate.dto;
 
-import com.tourMate.entities.*;
+import com.tourMate.entities.Menu;
+import com.tourMate.entities.RestaurantsTable;
+import com.tourMate.entities.User;
 
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.List;
 
 public class RestaurantDto {
@@ -15,11 +16,7 @@
     private String restaurantEdbs;
     private Collection<Menu> menus = new ArrayList<Menu>();
-    private Collection<MenuImages> menuImages;
-    private Collection<RestaurantsAvailible> tables;
-    private Collection<Reviews> reviews;
-    private double averageScore;
-    private Collection<RestaurantImages> images;
+    private Collection<RestaurantsTable> tables;
 
-    public RestaurantDto(long restaurantID, String restaurantName, String restaurantLocation, String cousineType, String restaurantDescription, String restaurantEdbs, Collection<Menu> menus, Collection<RestaurantsAvailible> tables, Collection<Reviews> reviews, double averageScore, Collection<RestaurantImages> images, Collection<MenuImages> menuImages) {
+    public RestaurantDto(long restaurantID, String restaurantName, String restaurantLocation, String cousineType, String restaurantDescription, String restaurantEdbs, Collection<Menu> menus, Collection<RestaurantsTable> tables) {
         this.restaurantID = restaurantID;
         this.restaurantName = restaurantName;
@@ -30,11 +27,4 @@
         this.menus = menus;
         this.tables = tables;
-        this.reviews = reviews;
-        this.averageScore = averageScore;
-        this.images = images;
-        this.menuImages = menuImages;
-    }
-    public Collection<MenuImages> getMenuImages() {
-        return menuImages;
     }
 
@@ -95,35 +85,10 @@
     }
 
-    public Collection<RestaurantsAvailible> getTables() {
+    public Collection<RestaurantsTable> getTables() {
         return tables;
     }
 
-    public void setTables(Collection<RestaurantsAvailible> tables) {
+    public void setTables(Collection<RestaurantsTable> tables) {
         this.tables = tables;
     }
-
-    public Collection<Reviews> getReviews() {
-        return reviews;
-    }
-
-    public void setReviews(Collection<Reviews> reviews) {
-        this.reviews = reviews;
-    }
-
-    public double getAverageScore() {
-        return averageScore;
-    }
-
-    public void setAverageScore(double averageScore) {
-        this.averageScore = averageScore;
-    }
-
-    public Collection<RestaurantImages> getImages() {
-        return images;
-    }
-
-    public void setImages(Collection<RestaurantImages> images) {
-        this.images = images;
-    }
-
 }
Index: c/main/java/com/tourMate/dto/RestaurantReservationDto.java
===================================================================
--- src/main/java/com/tourMate/dto/RestaurantReservationDto.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,37 +1,0 @@
-package com.tourMate.dto;
-
-import com.tourMate.entities.HotelRoom;
-import com.tourMate.entities.RestaurantsTable;
-import com.tourMate.entities.User;
-
-import java.util.Date;
-
-public class RestaurantReservationDto {
-    private User user;
-    private RestaurantsTable restaurantsTable;
-    private Date dateFrom;
-    private Date dateTo;
-
-    public RestaurantReservationDto(User user, RestaurantsTable restaurantsTable, Date dateFrom, Date dateTo) {
-        this.user = user;
-        this.restaurantsTable = restaurantsTable;
-        this.dateFrom = dateFrom;
-        this.dateTo = dateTo;
-    }
-
-    public User getUser() {
-        return user;
-    }
-
-    public RestaurantsTable getRestaurantsTable() {
-        return restaurantsTable;
-    }
-
-    public Date getDateFrom() {
-        return dateFrom;
-    }
-
-    public Date getDateTo() {
-        return dateTo;
-    }
-}
Index: c/main/java/com/tourMate/dto/RestaurantReservationUserDto.java
===================================================================
--- src/main/java/com/tourMate/dto/RestaurantReservationUserDto.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,81 +1,0 @@
-package com.tourMate.dto;
-import com.tourMate.entities.HotelRoom;
-import com.tourMate.entities.RestaurantsTable;
-import com.tourMate.entities.User;
-import org.springframework.format.annotation.DateTimeFormat;
-
-import java.util.Date;
-
-public class RestaurantReservationUserDto {
-    private Long reservationId;
-    private User user;
-    private RestaurantsTable restaurantsTable;
-    private Long restaurantId;
-    @DateTimeFormat(pattern = "dd.MM.yyyy")
-    private Date dateFrom;
-    @DateTimeFormat(pattern = "dd.MM.yyyy")
-    private Date dateTo;
-    private Integer numPeople;
-    private String restaurantName;
-    private String restaurantLocation;
-    private String restaurantAddress;
-    private Boolean reviewed;
-
-    public RestaurantReservationUserDto(Long reservationId, User user, RestaurantsTable restaurantsTable, Date dateFrom, Date dateTo, Integer numPeople, String restaurantName, String restaurantLocation, String restaurantAddress, Long restaurantId, Boolean reviewed) {
-        this.reservationId = reservationId;
-        this.user = user;
-        this.restaurantsTable = restaurantsTable;
-        this.dateFrom = dateFrom;
-        this.dateTo = dateTo;
-        this.numPeople = numPeople;
-        this.restaurantLocation = restaurantLocation;
-        this.restaurantName = restaurantName;
-        this.restaurantAddress = restaurantAddress;
-        this.restaurantId = restaurantId;
-        this.reviewed = reviewed;
-    }
-
-    public Long getReservationId() {
-        return reservationId;
-    }
-
-    public User getUser() {
-        return user;
-    }
-
-    public RestaurantsTable getRestaurantsTable() {
-        return restaurantsTable;
-    }
-
-    public Long getRestaurantId() {
-        return restaurantId;
-    }
-
-    public Date getDateFrom() {
-        return dateFrom;
-    }
-
-    public Date getDateTo() {
-        return dateTo;
-    }
-
-    public Integer getNumPeople() {
-        return numPeople;
-    }
-
-    public String getRestaurantName() {
-        return restaurantName;
-    }
-
-    public String getRestaurantLocation() {
-        return restaurantLocation;
-    }
-
-    public String getRestaurantAddress() {
-        return restaurantAddress;
-    }
-
-    public Boolean getReviewed() {
-        return reviewed;
-    }
-}
Index: src/main/java/com/tourMate/dto/RouteListingDto.java
===================================================================
--- src/main/java/com/tourMate/dto/RouteListingDto.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dto/RouteListingDto.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -18,7 +18,6 @@
     private Date time;
     private Collection<String> routes;
-    private Double maxPrice;
 
-    public RouteListingDto(long transportAvailibleId, String from, String to, Date date, int freeSpace, Date time, Collection<TransportRoute> routes, Double maxPrice) {
+    public RouteListingDto(long transportAvailibleId, String from, String to, Date date, int freeSpace, Date time, Collection<TransportRoute> routes) {
         this.transportAvailibleId = transportAvailibleId;
         this.from = from;
@@ -28,5 +27,4 @@
         this.time = time;
         this.routes = routes.stream().map(x -> x.getFrom()).distinct().skip(1).toList();
-        this.maxPrice = maxPrice;
     }
 
@@ -86,7 +84,3 @@
         this.routes = routes;
     }
-
-    public Double getMaxPrice() {
-        return maxPrice;
-    }
 }
Index: src/main/java/com/tourMate/dto/TransportDto.java
===================================================================
--- src/main/java/com/tourMate/dto/TransportDto.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dto/TransportDto.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -16,8 +16,7 @@
     private User owner;
     private String carPlate;
-    private Double maxPrice;
     private Collection<RouteListingDto> availableRoutes;
 
-    public TransportDto(long transportID, String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, User owner, String carPlate, Collection<RouteListingDto> availableRoutes, Double maxPrice) {
+    public TransportDto(long transportID, String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, User owner, String carPlate, Collection<RouteListingDto> availableRoutes) {
         this.transportID = transportID;
         this.transportName = transportName;
@@ -31,5 +30,4 @@
         this.carPlate = carPlate;
         this.availableRoutes = availableRoutes;
-        this.maxPrice = maxPrice;
     }
 
Index: src/main/java/com/tourMate/dto/TransportListingDto.java
===================================================================
--- src/main/java/com/tourMate/dto/TransportListingDto.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/dto/TransportListingDto.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,5 +1,4 @@
 package com.tourMate.dto;
 
-import com.tourMate.entities.Reviews;
 import com.tourMate.entities.Transport;
 import com.tourMate.entities.TransportRoute;
@@ -17,10 +16,12 @@
     private double price;
     private Collection<String> routes;
-    private Collection<TransportRoute> transportRoutes;
     private Collection<Date> times;
     private Transport transport;
-    private Collection<Reviews> reviews;
-    private double averageScore;
-    public TransportListingDto(long transportAvailibleId, String from, String to, Date date, int freeSpace, Date time, double price, Collection<TransportRoute> routes, Transport transport, Collection<Reviews> reviews, double averageScore) {
+
+    public Collection<Date> getTimes() {
+        return times;
+    }
+
+    public TransportListingDto(long transportAvailibleId, String from, String to, Date date, int freeSpace, Date time, double price, Collection<TransportRoute> routes, Transport transport) {
         this.transportAvailibleId = transportAvailibleId;
         this.from = from;
@@ -33,7 +34,4 @@
         this.times = routes.stream().map(x -> x.getArrival()).distinct().skip(1).toList();
         this.transport = transport;
-        this.transportRoutes = routes;
-        this.reviews = reviews;
-        this.averageScore = averageScore;
     }
 
@@ -109,27 +107,3 @@
         this.transport = transport;
     }
-
-    public Collection<TransportRoute> getTransportRoutes() {
-        return transportRoutes;
-    }
-
-    public void setTransportRoutes(Collection<TransportRoute> transportRoutes) {
-        this.transportRoutes = transportRoutes;
-    }
-
-    public void setTimes(Collection<Date> times) {
-        this.times = times;
-    }
-
-    public Collection<Date> getTimes() {
-        return times;
-    }
-
-    public Collection<Reviews> getReviews() {
-        return reviews;
-    }
-
-    public double getAverageScore() {
-        return averageScore;
-    }
 }
Index: c/main/java/com/tourMate/dto/TransportReservationUserDto.java
===================================================================
--- src/main/java/com/tourMate/dto/TransportReservationUserDto.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,68 +1,0 @@
-package com.tourMate.dto;
-
-import com.tourMate.entities.HotelRoom;
-import com.tourMate.entities.RestaurantsTable;
-import com.tourMate.entities.TransportRoute;
-import com.tourMate.entities.User;
-import org.springframework.format.annotation.DateTimeFormat;
-
-import java.util.Date;
-
-public class TransportReservationUserDto {
-    private Long reservationId;
-    private User user;
-    private TransportRoute transportRoute;
-    private Long transportId;
-    private Integer numPeople;
-    private String carBrand;
-    private String carType;
-    private User owner;
-    private Boolean reviewed;
-
-    public TransportReservationUserDto(Long reservationId, User user, TransportRoute transportRoute, Long transportId, Integer numPeople, String carBrand, String carType, User owner, Boolean reviewed) {
-        this.reservationId = reservationId;
-        this.user = user;
-        this.transportRoute = transportRoute;
-        this.transportId = transportId;
-        this.numPeople = numPeople;
-        this.carBrand = carBrand;
-        this.carType = carType;
-        this.owner = owner;
-        this.reviewed = reviewed;
-    }
-    public Long getReservationId() {
-        return reservationId;
-    }
-
-    public User getUser() {
-        return user;
-    }
-
-    public TransportRoute getTransportRoute() {
-        return transportRoute;
-    }
-
-    public Long getTransportId() {
-        return transportId;
-    }
-
-    public Integer getNumPeople() {
-        return numPeople;
-    }
-
-    public String getCarBrand() {
-        return carBrand;
-    }
-
-    public String getCarType() {
-        return carType;
-    }
-
-    public User getOwner() {
-        return owner;
-    }
-
-    public Boolean getReviewed() {
-        return reviewed;
-    }
-}
Index: src/main/java/com/tourMate/entities/Business.java
===================================================================
--- src/main/java/com/tourMate/entities/Business.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/entities/Business.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -88,5 +88,5 @@
     }
 
-    @OneToOne(fetch = FetchType.EAGER)
+    @OneToOne(fetch = FetchType.LAZY)
     @JoinColumn(name = "owner_id", unique = false, nullable = false, foreignKey = @ForeignKey(name = "fk_ref_od_biznis_kon_korisnik"))
     public User getUser() {
@@ -107,4 +107,3 @@
         this.approved = approved;
     }
-
 }
Index: src/main/java/com/tourMate/entities/HotelRoom.java
===================================================================
--- src/main/java/com/tourMate/entities/HotelRoom.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/entities/HotelRoom.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -5,5 +5,4 @@
 
 import javax.validation.constraints.NotNull;
-import java.util.List;
 
 @Entity
@@ -17,11 +16,9 @@
     private String hotelRoomName;
     private double price;
-    private int numOfBeds;
     private Boolean kitchenAvailable;
     private Boolean airConditioning;
     private Boolean balcony;
-    private List<HotelRoomImages> images;
 
-    public HotelRoom(long hotelRoomId, Hotels hotel, String hotelRoomDescription, String hotelRoomName, double price, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, int numOfBeds) {
+    public HotelRoom(long hotelRoomId, Hotels hotel, String hotelRoomDescription, String hotelRoomName, double price, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony) {
         this.hotelRoomId = hotelRoomId;
         this.hotel = hotel;
@@ -32,9 +29,8 @@
         this.airConditioning = airConditioning;
         this.balcony = balcony;
-        this.numOfBeds = numOfBeds;
     }
 
     public HotelRoom(Hotels hotel, String hotelRoomDescription, String type,
-                     Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price, int numOfBeds) {
+                     Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price) {
         this.hotel = hotel;
         this.hotelRoomDescription = hotelRoomDescription;
@@ -44,9 +40,8 @@
         this.balcony = balcony;
         this.price = price;
-        this.numOfBeds = numOfBeds;
     }
 
     public HotelRoom(String hotelRoomDescription, String type,
-                     Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price, int numOfBeds) {
+                     Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price) {
         this.hotel = hotel;
         this.hotelRoomDescription = hotelRoomDescription;
@@ -56,5 +51,4 @@
         this.balcony = balcony;
         this.price = price;
-        this.numOfBeds = numOfBeds;
     }
 
@@ -74,5 +68,5 @@
     }
 
-    @ManyToOne(fetch = FetchType.EAGER)
+    @ManyToOne(fetch = FetchType.LAZY)
     @JoinColumn(name = "hotel_id", unique = false, nullable = false, foreignKey = @ForeignKey(name = "fk_ref_od_room_kon_hotel"))
     public Hotels getHotel() {
@@ -140,21 +134,3 @@
         this.balcony = balcony;
     }
-
-    @Column(name = "hotel_room_num_beds", unique = false)
-    public int getNumOfBeds() {
-        return numOfBeds;
-    }
-
-    public void setNumOfBeds(int numOfBeds) {
-        this.numOfBeds = numOfBeds;
-    }
-
-    @OneToMany(mappedBy = "room")
-    public List<HotelRoomImages> getImages() {
-        return images;
-    }
-
-    public void setImages(List<HotelRoomImages> images) {
-        this.images = images;
-    }
 }
Index: src/main/java/com/tourMate/entities/HotelRoomImages.java
===================================================================
--- src/main/java/com/tourMate/entities/HotelRoomImages.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/entities/HotelRoomImages.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,5 +1,4 @@
 package com.tourMate.entities;
 
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import jakarta.persistence.*;
 import org.jetbrains.annotations.NotNull;
@@ -9,16 +8,6 @@
 public class HotelRoomImages {
     private long imageID;
-    @JsonIgnore
     private HotelRoom room;
     private String url;
-
-    public HotelRoomImages(HotelRoom room, String url) {
-        this.room = room;
-        this.url = url;
-    }
-
-    public HotelRoomImages() {
-
-    }
 
     @Id
Index: src/main/java/com/tourMate/entities/HotelRoomReservations.java
===================================================================
--- src/main/java/com/tourMate/entities/HotelRoomReservations.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/entities/HotelRoomReservations.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -17,5 +17,4 @@
     private Date dateTo;
     private Integer numberOfBeds;
-    Boolean reviewed;
 
     public HotelRoomReservations(User user, HotelRoom hotelRoom, Date dateFrom, Date dateTo, Integer numberOfBeds) {
@@ -25,5 +24,4 @@
         this.dateTo = dateTo;
         this.numberOfBeds = numberOfBeds;
-        this.reviewed = false;
     }
 
@@ -43,5 +41,5 @@
     }
 
-    @ManyToOne(fetch = FetchType.EAGER)
+    @ManyToOne(fetch = FetchType.LAZY)
     @JoinColumn(name = "room_id", unique = false, nullable = false, foreignKey = @ForeignKey(name = "fk_ref_od_roomres_kon_room"))
     public HotelRoom getHotelRoom() {
@@ -59,5 +57,5 @@
     }
 
-    @OneToOne(fetch = FetchType.EAGER)
+    @OneToOne(fetch = FetchType.LAZY)
     @JoinColumn(name = "user_id", unique = false, nullable = false, foreignKey = @ForeignKey(name = "fk_ref_od_roomres_kon_user"))
     public User getUser() {
@@ -91,12 +89,4 @@
         this.numberOfBeds = numberOfBeds;
     }
-    @Column(name="reviewed", unique = false)
-    public Boolean getReviewed() {
-        return reviewed;
-    }
-
-    public void setReviewed(Boolean reviewed) {
-        this.reviewed = reviewed;
-    }
 }
 
Index: src/main/java/com/tourMate/entities/HotelRoomType.java
===================================================================
--- src/main/java/com/tourMate/entities/HotelRoomType.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/entities/HotelRoomType.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
Index: src/main/java/com/tourMate/entities/HotelsImages.java
===================================================================
--- src/main/java/com/tourMate/entities/HotelsImages.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/entities/HotelsImages.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -15,7 +15,4 @@
         this.hotel = hotel;
         this.url = url;
-    }
-
-    public HotelsImages() {
     }
 
Index: c/main/java/com/tourMate/entities/MenuImages.java
===================================================================
--- src/main/java/com/tourMate/entities/MenuImages.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,46 +1,0 @@
-package com.tourMate.entities;
-
-import jakarta.persistence.*;
-import lombok.Data;
-
-@Entity
-public class MenuImages {
-    @Id
-    @GeneratedValue(strategy = GenerationType.IDENTITY)
-    private long imageId;
-    @ManyToOne
-    private Menu menu;
-    private String url;
-
-    public MenuImages(Menu menu, String url) {
-        this.menu = menu;
-        this.url = url;
-    }
-
-    public MenuImages() {
-    }
-
-    public long getImageId() {
-        return imageId;
-    }
-
-    public void setImageId(long imageId) {
-        this.imageId = imageId;
-    }
-
-    public Menu getMenu() {
-        return menu;
-    }
-
-    public void setMenu(Menu menu) {
-        this.menu = menu;
-    }
-
-    public String getUrl() {
-        return url;
-    }
-
-    public void setUrl(String url) {
-        this.url = url;
-    }
-}
Index: c/main/java/com/tourMate/entities/Providers.java
===================================================================
--- src/main/java/com/tourMate/entities/Providers.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,8 +1,0 @@
-package com.tourMate.entities;
-
-public enum Providers {
-    local,
-    github,
-    google,
-    facebook
-}
Index: src/main/java/com/tourMate/entities/RestaurantImages.java
===================================================================
--- src/main/java/com/tourMate/entities/RestaurantImages.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/entities/RestaurantImages.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -12,12 +12,4 @@
     private String url;
 
-    public RestaurantImages(Restaurant restaurant, String url) {
-        this.restaurant = restaurant;
-        this.url = url;
-    }
-
-    public RestaurantImages() {
-    }
-
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -31,5 +23,5 @@
     }
 
-    @ManyToOne(fetch = FetchType.EAGER)
+    @ManyToOne(fetch = FetchType.LAZY)
     @JoinColumn(name="restaurant_id",unique = false,nullable = false,foreignKey = @ForeignKey(name = "fk_ref_od_restimg_kon_restoran"))
     public Restaurant getRestaurant() {
Index: src/main/java/com/tourMate/entities/RestaurantReservations.java
===================================================================
--- src/main/java/com/tourMate/entities/RestaurantReservations.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/entities/RestaurantReservations.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -17,5 +17,4 @@
     private int noSeats;
     private User user;
-    private Boolean reviewed;
 
     public RestaurantReservations(RestaurantsTable table, Date timeFrom, Date timeTo, int noSeats, User user) {
@@ -25,8 +24,4 @@
         this.noSeats = noSeats;
         this.user = user;
-        this.reviewed = false;
-    }
-
-    public RestaurantReservations() {
     }
 
@@ -42,5 +37,5 @@
     }
 
-    @ManyToOne(fetch = FetchType.EAGER)
+    @ManyToOne(fetch = FetchType.LAZY)
     @JoinColumn(name = "table_id", unique = false, nullable = false, foreignKey = @ForeignKey(name = "fk_ref_od_rezervacija_kon_masa"))
     public RestaurantsTable getTable() {
@@ -82,5 +77,5 @@
     }
 
-    @ManyToOne(fetch = FetchType.EAGER)
+    @ManyToOne(fetch = FetchType.LAZY)
     @JoinColumn(name = "user_id", unique = false, nullable = false, foreignKey = @ForeignKey(name = "fk_ref_od_rezervacija_restoran_kon_korisnik"))
     public User getUser() {
@@ -91,12 +86,3 @@
         this.user = user;
     }
-
-    @Column(name="reviewed", unique = false)
-    public Boolean getReviewed() {
-        return reviewed;
-    }
-
-    public void setReviewed(Boolean reviewed) {
-        this.reviewed = reviewed;
-    }
 }
Index: src/main/java/com/tourMate/entities/RestaurantsAvailible.java
===================================================================
--- src/main/java/com/tourMate/entities/RestaurantsAvailible.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/entities/RestaurantsAvailible.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -11,4 +11,5 @@
 public class RestaurantsAvailible {
     private long restaurantAvailibleId;
+    @JsonIgnore
     private RestaurantsTable restaurantTable;
     @Temporal(TemporalType.TIME)
@@ -17,4 +18,7 @@
     private Date hourTo;
     private int numTables;
+
+    //TODO geteri seteri za numPeople
+    //TODO sredi vo dao i services
 
     public RestaurantsAvailible(RestaurantsTable restaurantTable, Date hourFrom, Date hourTo, int numTables) {
@@ -46,5 +50,5 @@
     }
 
-    @ManyToOne(fetch = FetchType.EAGER)
+    @ManyToOne(fetch = FetchType.LAZY)
     @JoinColumn(name = "table_id", unique = false, nullable = false, foreignKey = @ForeignKey(name = "fk_ref_od_tableavailable_kon_table"))
     public RestaurantsTable getRestaurantTable() {
@@ -75,13 +79,3 @@
         this.hourTo = hourTo;
     }
-
-    @Column(name = "num_tables", unique = false, nullable = true)
-    public int getNumTables() {
-        return numTables;
-    }
-
-    public void setNumTables(int numTables) {
-        this.numTables = numTables;
-    }
-
 }
Index: src/main/java/com/tourMate/entities/Reviews.java
===================================================================
--- src/main/java/com/tourMate/entities/Reviews.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/entities/Reviews.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,5 +1,4 @@
 package com.tourMate.entities;
 
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import jakarta.persistence.*;
 
@@ -13,9 +12,6 @@
     private int numStar;
     private String description;
-    @JsonIgnore
     private Hotels hotel;
-    @JsonIgnore
     private Restaurant restaurant;
-    @JsonIgnore
     private Transport transport;
 
@@ -75,5 +71,5 @@
 
     @ManyToOne(fetch = FetchType.LAZY)
-    @JoinColumn(name = "hotel_id", unique = false, nullable = true, foreignKey = @ForeignKey(name = "fk_ref_od_review_kon_hotel"))
+    @JoinColumn(name = "hotel_id", unique = false, nullable = false, foreignKey = @ForeignKey(name = "fk_ref_od_review_kon_hotel"))
     public Hotels getHotel () {
         return hotel;
@@ -85,5 +81,5 @@
 
     @ManyToOne(fetch = FetchType.LAZY)
-    @JoinColumn(name = "restaurant_id", unique = false, nullable = true, foreignKey = @ForeignKey(name = "fk_ref_od_review_kon_restorani"))
+    @JoinColumn(name = "restaurant_id", unique = false, nullable = false, foreignKey = @ForeignKey(name = "fk_ref_od_review_kon_restorani"))
     public Restaurant getRestaurant () {
         return restaurant;
@@ -95,5 +91,5 @@
 
     @ManyToOne(fetch = FetchType.LAZY)
-    @JoinColumn(name = "transport_id", unique = false, nullable = true, foreignKey = @ForeignKey(name = "fk_ref_od_review_kon_transport"))
+    @JoinColumn(name = "transport_id", unique = false, nullable = false, foreignKey = @ForeignKey(name = "fk_ref_od_review_kon_transport"))
     public Transport getTransport () {
         return transport;
Index: src/main/java/com/tourMate/entities/TransportReservation.java
===================================================================
--- src/main/java/com/tourMate/entities/TransportReservation.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/entities/TransportReservation.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -9,15 +9,23 @@
 @Table(name = "TransportReservation", schema = "public")
 public class TransportReservation {
+    private Transport transport;
     private long reservationID;
-    private TransportRoute transportRoute;
+    private String departureLocation;
+    private String arrivalLocation;
+    @Temporal(TemporalType.DATE)
+    private Date date;
     private Integer noSeats;
     private User user;
-    private Boolean reviewed;
+    @Temporal(TemporalType.TIME)
+    private Date departureHour;
 
-    public TransportReservation(TransportRoute transportRoute, Integer noSeats, User user) {
-        this.transportRoute = transportRoute;
+    public TransportReservation(Transport transport, String departureLocation, String arrivalLocation, Date date, Integer noSeats, User user, Date departureHour) {
+        this.transport = transport;
+        this.departureLocation = departureLocation;
+        this.arrivalLocation = arrivalLocation;
+        this.date = date;
         this.noSeats = noSeats;
         this.user = user;
-        this.reviewed = false;
+        this.departureHour = departureHour;
     }
 
@@ -25,16 +33,12 @@
     }
 
-    @ManyToOne(fetch = FetchType.EAGER)
-    @JoinColumn(name = "transport_route_id", unique = false, nullable = false, foreignKey = @ForeignKey(name = "fk_ref_od_rezervacii_kon_prevozi"))
-    public TransportRoute getTransportRoute() {
-        return transportRoute;
+    @ManyToOne(fetch = FetchType.LAZY)
+    @JoinColumn(name = "transport_id", unique = false, nullable = false, foreignKey = @ForeignKey(name = "fk_ref_od_rezervacii_kon_prevozi"))
+    public Transport getTransport() {
+        return transport;
     }
 
-    public void setTransportRoute(TransportRoute transportRoute) {
-        this.transportRoute = transportRoute;
-    }
-
-    public void setNoSeats(Integer noSeats) {
-        this.noSeats = noSeats;
+    public void setTransport(Transport transport) {
+        this.transport = transport;
     }
 
@@ -48,4 +52,34 @@
     public void setReservationID(long reservationID) {
         this.reservationID = reservationID;
+    }
+
+    @Column(name = "departure_location", unique = false, nullable = false)
+    @NotNull
+    public String getDepartureLocation() {
+        return departureLocation;
+    }
+
+    public void setDepartureLocation(String departureLocation) {
+        this.departureLocation = departureLocation;
+    }
+
+    @Column(name = "arrival_location", unique = false, nullable = false)
+    @NotNull
+    public String getArrivalLocation() {
+        return arrivalLocation;
+    }
+
+    public void setArrivalLocation(String arrivalLocation) {
+        this.arrivalLocation = arrivalLocation;
+    }
+
+    @Column(name = "date", unique = false, nullable = false)
+    @NotNull
+    public Date getDate() {
+        return date;
+    }
+
+    public void setDate(Date date) {
+        this.date = date;
     }
 
@@ -69,12 +103,13 @@
         this.user = user;
     }
-    @Column(name="reviewed", unique = false)
-    public Boolean getReviewed() {
-        return reviewed;
+
+    @Column(name = "departure_hour", unique = false, nullable = false)
+    @NotNull
+    public Date getDepartureHour() {
+        return departureHour;
     }
 
-    public void setReviewed(Boolean reviewed) {
-        this.reviewed = reviewed;
+    public void setDepartureHour(Date departureHour) {
+        this.departureHour = departureHour;
     }
-
 }
Index: src/main/java/com/tourMate/entities/User.java
===================================================================
--- src/main/java/com/tourMate/entities/User.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/entities/User.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -14,5 +14,4 @@
 import java.util.Collections;
 import java.util.Date;
-import java.util.List;
 
 @Entity
@@ -28,5 +27,5 @@
     private String name;
 
-    @Column(name = "surname", unique = false, nullable = true)
+    @Column(name = "surname", unique = false, nullable = false)
     private String surname;
 
@@ -35,16 +34,16 @@
     private String email;
 
-    @Column(name = "password", unique = true, nullable = true)
+    @Column(name = "password", unique = true, nullable = false)
     @NotNull
     private String password;
 
-    @Column(name = "birth_date", unique = false, nullable = true)
+    @Column(name = "birth_date", unique = false, nullable = false)
     @NotNull
     private Date birthDate;
 
-    @Column(name = "address", unique = false, nullable = true)
+    @Column(name = "address", unique = false, nullable = false)
     private String address;
 
-    @Column(name = "contact", unique = false, nullable = true)
+    @Column(name = "contact", unique = false, nullable = false)
     private String contact;
 
@@ -53,15 +52,8 @@
     private Role role;
     @Column(name = "locked", unique = false, nullable = false)
-    boolean locked = false;
+    boolean locked;
 
     @Column(name = "enabled", unique = false, nullable = false)
     boolean enabled;
-
-    @Column(name = "provider", unique = false, nullable = true)
-    String provider;
-
-    @ManyToMany
-    @JsonIgnore
-    List<User> connectedAccounts;
 
 
@@ -104,7 +96,4 @@
     }
 
-    public boolean isLocked() {
-        return locked;
-    }
 
     public long getUserID() {
@@ -128,16 +117,4 @@
     }
 
-    public List<User> getConnectedAccounts() {
-        return connectedAccounts;
-    }
-
-    public void setConnectedAccounts(List<User> connectedAccounts) {
-        this.connectedAccounts = connectedAccounts;
-    }
-
-    public void addConnectedUser(User u)
-    {
-        connectedAccounts.add(u);
-    }
 
     public void setSurname(String surname) {
@@ -185,5 +162,5 @@
     @Override
     public boolean isAccountNonLocked() {
-        return locked;
+        return true;
     }
 
@@ -232,11 +209,3 @@
         this.enabled = enabled;
     }
-
-    public String getProvider() {
-        return provider;
-    }
-
-    public void setProvider(String  provider) {
-        this.provider = provider;
-    }
 }
Index: c/main/java/com/tourMate/events/EmailEvent.java
===================================================================
--- src/main/java/com/tourMate/events/EmailEvent.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,48 +1,0 @@
-package com.tourMate.events;
-
-import com.tourMate.entities.User;
-import org.springframework.context.ApplicationEvent;
-
-public abstract class EmailEvent extends ApplicationEvent {
-    protected EventType eventType;
-    protected User user;
-    protected String subject;
-    protected String message;
-
-    public EmailEvent(User user) {
-        super(user);
-        this.user = user;
-    }
-
-    public User getUser() {
-        return user;
-    }
-
-    public void setUser(User user) {
-        this.user = user;
-    }
-
-    public EventType getEventType() {
-        return eventType;
-    }
-
-    public void setEventType(EventType eventType) {
-        this.eventType = eventType;
-    }
-
-    public String getSubject() {
-        return subject;
-    }
-
-    public void setSubject(String subject) {
-        this.subject = subject;
-    }
-
-    public String getMessage() {
-        return message;
-    }
-
-    public void setMessage(String message) {
-        this.message = message;
-    }
-}
Index: c/main/java/com/tourMate/events/EventType.java
===================================================================
--- src/main/java/com/tourMate/events/EventType.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,10 +1,0 @@
-package com.tourMate.events;
-
-public enum EventType {
-    REGISTRATION,
-    PROFILE_ENABLED,
-    BUSINESS_APPROVED,
-    HOTEL_RESERVATION,
-    TRANSPORT_RESERVATION,
-    RESTAURANT_RESERVATION
-}
Index: c/main/java/com/tourMate/events/OnBusinessApprovedEvent.java
===================================================================
--- src/main/java/com/tourMate/events/OnBusinessApprovedEvent.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,12 +1,0 @@
-package com.tourMate.events;
-
-import com.tourMate.entities.User;
-
-public class OnBusinessApprovedEvent extends EmailEvent{
-    public OnBusinessApprovedEvent(User u) {
-        super(u);
-        this.eventType = EventType.BUSINESS_APPROVED;
-        this.subject = "TourMate - Верификуван бизнис";
-        this.message = "Драг кориснику,\n\nВе известуваме дека Вашата регистрација за фирма е одобрена. Можете да започнете со користење на бизнис услугите од нашата апликација.\n\n\nСо почит,\nTourMate";
-    }
-}
Index: c/main/java/com/tourMate/events/OnHotelReservationEvent.java
===================================================================
--- src/main/java/com/tourMate/events/OnHotelReservationEvent.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,32 +1,0 @@
-package com.tourMate.events;
-
-import com.tourMate.entities.HotelRoomReservations;
-import com.tourMate.entities.User;
-
-import java.text.SimpleDateFormat;
-
-public class OnHotelReservationEvent extends EmailEvent{
-    private HotelRoomReservations hotelRoomReservations;
-    public OnHotelReservationEvent(User u, HotelRoomReservations hotelRoomReservations) {
-        super(u);
-        this.hotelRoomReservations = hotelRoomReservations;
-        this.eventType = EventType.HOTEL_RESERVATION;
-        this.subject = "TourMate - Потврда за резервација - " + hotelRoomReservations.getHotelRoom().getHotel().getHotelName();
-        this.message = String.format("Драг кориснику,\n\nВе известуваме дека Вашата резервација за %s е потврдена\n\n" +
-                        "Детали за резервацијата:\n" +
-                        "%s - %s" +
-                        "\n%s" +
-                        "\n\n\nСо почит,\nTourMate", hotelRoomReservations.getHotelRoom().getHotel().getHotelName()
-                , new SimpleDateFormat("dd-MM-yyyy").format(hotelRoomReservations.getDateFrom())
-                , new SimpleDateFormat("dd-MM-yyyy").format(hotelRoomReservations.getDateTo())
-                , hotelRoomReservations.getHotelRoom().getHotelRoomName());
-    }
-
-    public HotelRoomReservations getHotelRoomReservations() {
-        return hotelRoomReservations;
-    }
-
-    public void setHotelRoomReservations(HotelRoomReservations hotelRoomReservations) {
-        this.hotelRoomReservations = hotelRoomReservations;
-    }
-}
Index: c/main/java/com/tourMate/events/OnProfileEnabledEvent.java
===================================================================
--- src/main/java/com/tourMate/events/OnProfileEnabledEvent.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,17 +1,0 @@
-package com.tourMate.events;
-
-import com.tourMate.entities.User;
-import jdk.jfr.Event;
-import org.springframework.context.ApplicationEvent;
-
-public class OnProfileEnabledEvent extends EmailEvent {
-    private static final long serialVersionUID = 1L;
-    private User user;
-
-    public OnProfileEnabledEvent(User user) {
-        super(user);
-        this.eventType = EventType.PROFILE_ENABLED;
-        this.subject = "TourMate - Активиран профил";
-        this.message = "Драг кориснику,\n\nВе известуваме дека Вашата регистрација е ревидирана од страна на администраторот и Вашиот профил е одобрен. Можете да започнете со користење.\n\n\nСо почит,\nTourMate";
-    }
-}
Index: c/main/java/com/tourMate/events/OnRegistrationSuccessEvent.java
===================================================================
--- src/main/java/com/tourMate/events/OnRegistrationSuccessEvent.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,17 +1,0 @@
-package com.tourMate.events;
-
-import com.tourMate.entities.User;
-import lombok.Data;
-import org.springframework.context.ApplicationEvent;
-
-public class OnRegistrationSuccessEvent extends EmailEvent {
-    private static final long serialVersionUID = 1L;
-    private User user;
-
-    public OnRegistrationSuccessEvent(User user) {
-        super(user);
-        this.eventType = EventType.REGISTRATION;
-        this.subject = "TourMate - Успешна регистрација";
-        this.message = "Драг кориснику,\n\nВе известуваме дека Вашата регистрација на апликацијата TourMate е успешна. За да можете да го користите профилот, потребно е истиот да е одобрен од страна на администраторот за што ќе добиете дополнителна потврда на оваа адреса.\n\n\nСо почит,\nTourMate";
-    }
-}
Index: c/main/java/com/tourMate/events/OnRestaurantReservationEvent.java
===================================================================
--- src/main/java/com/tourMate/events/OnRestaurantReservationEvent.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,34 +1,0 @@
-package com.tourMate.events;
-
-import com.tourMate.entities.RestaurantReservations;
-import com.tourMate.entities.TransportReservation;
-import com.tourMate.entities.User;
-
-import java.text.SimpleDateFormat;
-
-public class OnRestaurantReservationEvent extends EmailEvent {
-    private RestaurantReservations restaurantReservations;
-    public OnRestaurantReservationEvent(User u, RestaurantReservations restaurantReservations) {
-        super(u);
-        this.restaurantReservations = restaurantReservations;
-        this.eventType = EventType.RESTAURANT_RESERVATION;
-        this.subject = "TourMate - Потврда за резервација - " + restaurantReservations.getTable().getRestaurant().getRestaurantName();
-        this.message = String.format("Драг кориснику,\n\nВе известуваме дека Вашата резервација за %s е потврдена\n\n" +
-                        "Детали за резервацијата:\n" +
-                        "%s - %s" +
-                        "\nМаса за %s луѓе" +
-                        "\n\n\nСо почит,\nTourMate", restaurantReservations.getTable().getRestaurant().getRestaurantName()
-                , new SimpleDateFormat("dd-MM-yyyy hh:mm").format(restaurantReservations.getTimeFrom())
-                , new SimpleDateFormat("dd-MM-yyyy hh:mm").format(restaurantReservations.getTimeTo())
-                , restaurantReservations.getTable().getNoSeats());
-
-    }
-
-    public RestaurantReservations getRestaurantReservations() {
-        return restaurantReservations;
-    }
-
-    public void setRestaurantReservations(RestaurantReservations restaurantReservations) {
-        this.restaurantReservations = restaurantReservations;
-    }
-}
Index: c/main/java/com/tourMate/events/OnTransportReservationEvent.java
===================================================================
--- src/main/java/com/tourMate/events/OnTransportReservationEvent.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,30 +1,0 @@
-package com.tourMate.events;
-
-import com.tourMate.entities.HotelRoomReservations;
-import com.tourMate.entities.TransportReservation;
-import com.tourMate.entities.User;
-
-public class OnTransportReservationEvent extends EmailEvent {
-    private TransportReservation transportReservation;
-    public OnTransportReservationEvent(User u, TransportReservation transportReservation) {
-        super(u);
-        this.transportReservation = transportReservation;
-        this.eventType = EventType.HOTEL_RESERVATION;
-
-        this.subject = "TourMate - Потврда за резервација за рута " + transportReservation.getTransportRoute().getFrom() + " " + transportReservation.getTransportRoute().getTo();
-        this.message = String.format("Драг кориснику,\n\nВе известуваме дека Вашата резервација за патувањето %s е потврдена\n\n" +
-                        "Детали за резервацијата:\n" +
-                        "%s - %s" +
-                        "\n\n\nСо почит,\nTourMate", transportReservation.getTransportRoute().getFrom() + " " + transportReservation.getTransportRoute().getTo()
-                , transportReservation.getTransportRoute().getDeparture()
-                , transportReservation.getTransportRoute().getArrival());
-    }
-
-    public TransportReservation getTransportReservation() {
-        return transportReservation;
-    }
-
-    public void setTransportReservation(TransportReservation transportReservation) {
-        this.transportReservation = transportReservation;
-    }
-}
Index: c/main/java/com/tourMate/listeners/RegistrationEmailListener.java
===================================================================
--- src/main/java/com/tourMate/listeners/RegistrationEmailListener.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,27 +1,0 @@
-package com.tourMate.listeners;
-
-import com.tourMate.entities.User;
-import com.tourMate.events.*;
-import com.tourMate.services.MailingService;
-import com.tourMate.services.UsersManager;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.ApplicationListener;
-import org.springframework.core.env.Environment;
-import org.springframework.stereotype.Component;
-
-import java.text.SimpleDateFormat;
-
-@Component
-public class RegistrationEmailListener implements ApplicationListener<EmailEvent> {
-
-    @Autowired
-    private Environment environment;
-    @Autowired
-    private MailingService mailingService;
-
-
-    @Override
-    public void onApplicationEvent(EmailEvent event) {
-        mailingService.sendMail(event.getUser().getEmail(), event.getSubject(), event.getMessage());
-    }
-}
Index: src/main/java/com/tourMate/services/BusinessManager.java
===================================================================
--- src/main/java/com/tourMate/services/BusinessManager.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/services/BusinessManager.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -8,12 +8,8 @@
     public void createBusiness(Business business, long userId);
     public List<Business> getUnapprovedBusinessesOfUser(long userId);
-
-    void deleteBusiness(long businessId);
-
-    public List<Business> getUnapprovedBusinesses();
-    public void approveBusiness(Long businessId);
+    public void deleteBusiness(long businessId);
+    public List<Business> getCreatedBusinesses();
     public Business findBusinessById (long businessId);
+    public void editBusiness(long businessId, String name, String phone, String address, String edbs, User user, boolean approved);
     public boolean hasBusiness(long userId);
-
-    void editBusiness(long businessId, String name, String phone, String address, String edbs, User user, boolean approved);
 }
Index: src/main/java/com/tourMate/services/HotelManager.java
===================================================================
--- src/main/java/com/tourMate/services/HotelManager.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/services/HotelManager.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -2,6 +2,4 @@
 
 import com.tourMate.dto.HotelDto;
-import com.tourMate.dto.HotelReservationDto;
-import com.tourMate.dto.HotelReservationUserDto;
 import com.tourMate.entities.*;
 
@@ -10,23 +8,24 @@
 
 public interface HotelManager {
-    void createHotel(String hotelName, String hotelDescripiton, String hotelLocation, String hotelEDBS, Boolean parking, Boolean petFriendly, Boolean internetAvailable);
-    void createHotel(Hotels hotel, long userId);
-    List<Hotels> getHotels();
-    List<Hotels> getHotelsForUser(long userId);
-    List<Hotels> getHotelsByLocation(String hotelLocation);
-    void editHotel(long hotelId, String hotelName, String hotelDescripiton, String hotelLocation, String hotelEDBS, Boolean parking, Boolean petFriendly, Boolean internetAvailable);
-    void deleteHotel(long hotelId);
-    Hotels findHotelByID (long hotelId);
-    public List<HotelsImages> getHotelImages(Long hotelId);
-    public void addHotelImage(Long hotel, List<String> url);
+    public void createHotel(String hotelName, String hotelDescripiton, String hotelLocation, String hotelEDBS, Boolean parking, Boolean petFriendly, Boolean internetAvailable);
+    public void createHotel(Hotels hotel, long userId);
+    public List<Hotels> getHotels();
+    public List<Hotels> getHotelsForUser(long userId);
+    public List<Hotels> getHotelsByLocation(String hotelLocation);
+    public void editHotel(long hotelId, String hotelName, String hotelDescripiton, String hotelLocation, String hotelEDBS, Boolean parking, Boolean petFriendly, Boolean internetAvailable);
+    public void deleteHotel(long hotelId);
+    public Hotels findHotelByID (long hotelId);
+    public List<HotelsImages> getHotelImages(Hotels hotels);
+    public void addHotelImage(Hotels hotel, String url);
     public void deleteHotelImage(long hotelImageId);
     public HotelsImages findHotelImageById(long hotelImageId);
     public List<HotelRoom> getRoomsOfHotel (long hotelId);
     public HotelRoom findRoomById (long hotelRoomId);
-    public List<HotelRoomImages> getRoomImages(Long hotelRoom);
-    public void createRoom(Long hotelId, String hotelRoomDescription, String hotelRoomName, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price, int numOfBeds);
+    public List<HotelRoomImages> getRoomImages(HotelRoom hotelRoom);
+    public void createRoom(Hotels hotel, String hotelRoomDescription, String hotelRoomName, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price);
     public void editRoom(long hotelRoomId, Hotels hotel, String hotelRoomDescription, String hotelRoomName, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price);
     public void deleteRoom(long hotelRoomId);
-    public void createRoomAvailible(long hotelRoom, Date dateFrom, Date dateTo, int numberOfBeds);
+    public List<HotelRoomAvailable> getRoomsAvailable(Long id);
+    public void createRoomAvailible(HotelRoom hotelRoom, Date dateFrom, Date dateTo, int numberOfBeds);
     public void editRoomAvailible(long hotelRoomAvailableId, HotelRoom hotelRoom, Date dateFrom, Date dateTo, int numberOfBeds);
     public void editRoomAvailibleReservation(Long HotelRoomAvailableId, Long hotelRoomId, Date from, Date to, int numberOfBeds);
@@ -34,24 +33,13 @@
     public HotelRoomAvailable findAvailibleRoomById(long hotelRoomAvailableId);
     public List<HotelRoomAvailable> getRoomsAvailibility();
-    public List<HotelRoomAvailable> getRoomsAvailableById(Long id);
     public List<HotelRoomAvailable> getRoomsAvailibilityByHotel(Hotels hotel);
-
-    List<HotelRoomReservations> getReservationsInPeriod(String hotelLocation, Date dateFrom, Date dateTo);
-
-    public List<HotelDto> getRoomsAvailibilityByDateAndLocation(String hotelLocation, Date dateFrom, Date dateTo, int numberOfBeds, Boolean flexible);
+    public List<HotelDto> getRoomsAvailibilityByDateAndLocation(String hotelLocation, Date dateFrom, Date dateTo, int numberOfBeds);
     public void createReservation(Long userId, Long hotelRoomId, Long hotelRoomAvailableId, Date dateFrom, Date dateTo, Integer numberOfBeds);
     public void editReservation(long hotelRoomReservedId, User user, HotelRoom hotelRoom, Date dateFrom, Date dateTo, Integer numberOfBeds);
     public void deleteReservation(long hotelRoomReservedId);
-    public List<HotelReservationDto> findVaidReseravtionsByHotel(Long hotelId);
-    public List<HotelReservationUserDto> findValidHotelReservationsByUser(Long userId);
     public HotelRoomReservations findReservationById(long hotelRoomReservedId);
     public List<HotelRoomReservations> findReservationByUser(User user);
     public List<HotelRoomReservations> findReservationByHotel(Hotels hotel);
     public List<HotelRoomReservations> getReservations();
-    public List<Reviews> getReviewsForHotel(Long hotelId);
 
-    List<HotelReservationUserDto> findPastHotelReservationsByUser(Long id);
-
-    void addRoomImage(Long id, List<String> filesToAdd);
-    void setReservationReviewed(Long reservationId);
 }
Index: c/main/java/com/tourMate/services/ImageManager.java
===================================================================
--- src/main/java/com/tourMate/services/ImageManager.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,9 +1,0 @@
-package com.tourMate.services;
-
-import org.springframework.web.multipart.MultipartFile;
-
-import java.util.List;
-
-public interface ImageManager {
-    public List<String> uploadImages(List<MultipartFile> files, Long id, String type);
-}
Index: c/main/java/com/tourMate/services/MailJobs.java
===================================================================
--- src/main/java/com/tourMate/services/MailJobs.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,31 +1,0 @@
-package com.tourMate.services;
-
-import com.tourMate.entities.Business;
-import com.tourMate.entities.User;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.scheduling.annotation.Scheduled;
-import org.springframework.stereotype.Component;
-
-import java.util.List;
-
-@Component
-public class MailJobs {
-    @Autowired
-    private BusinessManager businessManager;
-    @Autowired
-    private UsersManager usersManager;
-    @Autowired
-    private MailingService mailingService;
-
-    @Scheduled(cron = "8 0 * * * MON")
-    public void execute() {
-        List<Business> unapprovedBusinesses = businessManager.getUnapprovedBusinesses();
-        if(!unapprovedBusinesses.isEmpty())
-        {
-            List<User> admins = usersManager.getAdmins().stream().filter(x -> x.getEmail().contains("@")).toList();
-            String subject = "Бизниси кои чекаат на одобрување";
-            String message = "Почитувани,\n\nВе известуваме дека постојат повеќе бизнис кои чекаат на Ваша одлука за одобрување.\n\nСо почит,\n\nTourMate";
-            admins.forEach(x -> mailingService.sendMail(x.getEmail(), subject, message));
-        }
-    }
-}
Index: c/main/java/com/tourMate/services/MailingService.java
===================================================================
--- src/main/java/com/tourMate/services/MailingService.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,5 +1,0 @@
-package com.tourMate.services;
-
-public interface MailingService {
-    public void sendMail(String to, String subject, String message);
-}
Index: src/main/java/com/tourMate/services/RestaurantManager.java
===================================================================
--- src/main/java/com/tourMate/services/RestaurantManager.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/services/RestaurantManager.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -2,6 +2,4 @@
 
 import com.tourMate.dto.RestaurantDto;
-import com.tourMate.dto.RestaurantReservationDto;
-import com.tourMate.dto.RestaurantReservationUserDto;
 import com.tourMate.entities.*;
 
@@ -11,86 +9,46 @@
 public interface RestaurantManager {
     public void createRestaurant(Restaurant restaurant, long userId);
-
+    public void deleteRestaurant(long restaurantID);
     public void addMenuToRestaurant(long restaurantId, Menu menu);
-
     public List<Restaurant> getRestaurantsByUser(long userId);
-    public void deleteRestaurant(Long restaurantID);
-
-    void deleteRestaurant(long restaurantID);
+    void deleteHotel(long restaurantID);
 
     public List<Restaurant> getRestaurants();
-
-    public Restaurant findRestaurantByID(long restaurantID);
-
-    public void addRestaurantImage(Long restaurant, List<String> url);
-
+    public Restaurant findRestaurantByID (long restaurantID);
+    public void addRestaurantImage(Restaurant restaurant, String url);
     public void removeRestaurantImage(long restaurantImageId);
-
     public RestaurantImages findRestaurantImageById(long restaurantImageId);
 
     public List<RestaurantImages> getRestaurantImages(long restaurantID);
-
     public void editRestaurant(long restaurantID, String restaurantName, String restaurantLocation, String cousineType, String restaurantDescription, String restaurantEdbs, User restaurantOwner);
-
-    void editReservation(long restaurantsTableId, RestaurantsTable rt, Date hourFrom, Date hourTo, int noSeats, User user);
-
     public List<RestaurantsTable> getRestaurantTables(long restaurantID);
-
-    public List<RestaurantDto> getTablesByDateAndLocation(String restaurantLocation, Date date, String hourFrom, String hourTo, int noSeats);
-
+    public List<RestaurantDto> getTablesByDateAndLocation(String restaurantLocation, Date hourFrom, Date hourTo, int noSeats );
     public RestaurantsTable findTableById(long tableId);
-
     public void createTable(Long restaurantId, int noSeats);
-
     public void editTable(Restaurant restaurant, long tableId, int noSeats);
-
     public void deleteTable(long tableId);
 
-    public void createTableAvailable(Long rt, Date hourFrom, Date hourTo, int numTables);
+    public void createTableAvailable(Long rt, Date hourFrom, Date hourTo);
 
     public void editTableAvailable(long tableId, Restaurant restaurant, int noSeats);
-
     public void deleteTableAvailable(long tableId);
-
+    public List<RestaurantsTable> getTablesAvailability();
     public List<RestaurantsAvailible> getTablesAvailabilityById(Long id);
-
-    RestaurantsAvailible findAvailableReservationByID(long tableId);
+    public void createReservation(Restaurant restaurant, int noSeats);
 
     void createReservation(RestaurantsTable rt, Date dateFrom, Date dateTo, User user);
 
+    public void editReservation(long tableId, Restaurant restaurant, int noSeats);
     public void deleteReservation(long tableId);
+    public RestaurantReservations findReservationByID(long tableId);
+    public List<RestaurantReservations> findAvailableReservationByID();
 
-    public RestaurantReservations findReservationByID(long tableId);
-
-//    List<RestaurantReservations> findAvailableReservationByID(long reservationId);
+    List<RestaurantReservations> findAvailableReservationByID(long reservationId);
 
     public List<RestaurantReservations> findReservationByUser(User user);
-
-    public List<RestaurantReservationDto> findReservationByRestaurant(Long restaurant);
-
+    public List<RestaurantReservations> findReservationByRestaurant(Restaurant restaurant);
     public List<RestaurantReservations> getReservations();
-
     public List<Restaurant> searchByRestaurantName(String restaurantName);
-
     public List<Restaurant> searchByRestaurantLocation(String restaurantLocation);
-
     public List<RestaurantsTable> searchByNoSeats(int noSeats);
-
-    List<Reviews> getReviewsForRestaurant(Long restaurantId);
-
-    void createReservation(Long userId, Long restaurantTableId, Long restaurantAvailibleId, String hourFrom, String hourTo, Date date);
-
-    List<RestaurantReservationUserDto> findValidRestaurantReservationsByUser(Long userId);
-
-    List<RestaurantReservationUserDto> findPastRestaurantReservationsByUser(Long userId);
-
-    List<MenuImages> getMenuImages(Long id);
-
-    void addMenuImage(Long restaurant, List<String> url);
-
-    Menu findMenuById(Long menuId);
-
-    void setReservationReviewed(Long reservationId);
-
-    List<MenuImages> getMenuImagesByRestaurant(long restaurantId);
 }
Index: src/main/java/com/tourMate/services/ReviewManager.java
===================================================================
--- src/main/java/com/tourMate/services/ReviewManager.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/services/ReviewManager.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -9,5 +9,5 @@
 public interface ReviewManager{
 
-    public void createReview(String title, int numStar, String description, Long hotel, Long restaurant, Long transport, Long reservationId);
+    public void createReview(String title, int numStar, String description, Hotels hotel, Restaurant restaurant, Transport transport);
     public void deleteReview(long id);
     public Reviews findReviewById(long id);
Index: src/main/java/com/tourMate/services/TokenManager.java
===================================================================
--- src/main/java/com/tourMate/services/TokenManager.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
+++ src/main/java/com/tourMate/services/TokenManager.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -0,0 +1,9 @@
+package com.tourMate.services;
+
+import com.tourMate.entities.Token;
+
+public interface TokenManager {
+    public void saveToken(Token token);
+    public Token getToken(String token);
+    public void setConfirmedAt(String token);
+}
Index: src/main/java/com/tourMate/services/TransportManager.java
===================================================================
--- src/main/java/com/tourMate/services/TransportManager.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/services/TransportManager.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -4,5 +4,4 @@
 import com.tourMate.dto.TransportDto;
 import com.tourMate.dto.TransportListingDto;
-import com.tourMate.dto.TransportReservationUserDto;
 import com.tourMate.entities.*;
 
@@ -13,5 +12,5 @@
 public interface TransportManager {
 
-    public void createTransport(String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, Long userId, String carPlate);
+    public void createTransport(String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, User owner, String carPlate);
 
     public void deleteTransport(long transportId);
@@ -23,12 +22,9 @@
     public TransportDto findTransportById (long transportId);
 
-    Transport getTransportById(Long transportId);
-
     public void editTransport(long transportID, String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, User owner, String carPlate);
 
-    public void createTransportReservation(Long transportRouteId, Long userId, int noSeats);
+    public void createTransportReservation(Transport transport, String departureLocation, String arrivalLocation, Date date, Integer noSeats, User user, Date departureHour);
+
     public TransportReservation findTransportReservationByID(long reservationID);
-
-    List<TransportReservation> findTransportReservationByTransportId(long reservationID);
 
     public List<TransportReservation> getTransportReservations();
@@ -37,7 +33,5 @@
     public Transport getTransportById(long transportId);
 
-    List<Reviews> getReviewsForTransport(long transportId);
-
-    public List<TransportListingDto> getTransportsAvailableByFilters (String from, String to, Date date, int numPassengers);
+    public List<TransportListingDto> getTransportsAvailableByFilters (String from, String to, Date date);
 
     public List<TransportReservation> getTransportsReservationsByUserID(long userID);
@@ -45,5 +39,8 @@
     public List<TransportAvailible> getTransportsAvailable();
 
-    public void createTransportAvailable(TransportAvailible transportAvailible, Transport transport, String departureLocation, String arrivalLocation, Date date, Integer noSeats, Date departureHour, Long trnasportId, Collection<TransportRoute> routes);
+    public void createTransportAvailable(Transport transport, String departureLocation, String arrivalLocation, Date date, Integer noSeats, Date departureHour, Collection<TransportRoute> routes);
+
+    public void editTransportReservation(Transport transport, long reservationID, String departureLocation, String arrivalLocation, Date date, Integer noSeats, User user, Date departureHour);
+
     public void editTransportAvailable(Transport transport, long availableID, String departureLocation, String arrivalLocation, Date date, Integer noSeats, Date departureHour);
 
@@ -59,9 +56,4 @@
 
 
-    List<TransportReservationUserDto> findValidTransportReservationsByUser(Long userId);
-
-    List<TransportReservationUserDto> findPastTransportReservationsByUser(Long userId);
-
-    void setReservationReviewed(Long reservationId);
 }
 
Index: src/main/java/com/tourMate/services/UsersManager.java
===================================================================
--- src/main/java/com/tourMate/services/UsersManager.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/services/UsersManager.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -1,5 +1,4 @@
 package com.tourMate.services;
 
-import com.tourMate.dto.PrincipalInfo;
 import com.tourMate.entities.User;
 
@@ -17,14 +16,3 @@
 
     public void editUser(long userID, String name, String surname, String email, Date birthDate, String address, String contact);
-    public List<User> getUnapprovedUsers();
-    public void approveUserProfile(long userId);
-
-    void unlock(Long id);
-
-    List<User> getAdmins();
-
-    void connectAccount(Long id, String username, String password);
-
-    List<User> findConnectedAccountsByUser(Long id);
-    PrincipalInfo getPrincipalInfo(Long userId);
 }
Index: src/main/java/com/tourMate/services/impl/BusinessManagerImpl.java
===================================================================
--- src/main/java/com/tourMate/services/impl/BusinessManagerImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/services/impl/BusinessManagerImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -2,10 +2,7 @@
 
 import com.tourMate.dao.BusinessDao;
-import com.tourMate.dao.UsersDao;
 import com.tourMate.entities.Business;
-import com.tourMate.entities.Role;
 import com.tourMate.entities.User;
 import com.tourMate.services.BusinessManager;
-import com.tourMate.services.UsersManager;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -19,54 +16,29 @@
     @Autowired
     BusinessDao businessDao;
-    @Autowired
-    UsersDao usersDao;
-    @Autowired
-    UsersManager usersManager;
 
     @Override
     public void createBusiness(Business business, long userId) {
-        User u = usersManager.findUserByID(userId);
-        business.setUser(u);
-        businessDao.createBusiness(business);
+        businessDao.createBusiness(business, userId);
     }
 
     @Override
     public List<Business> getUnapprovedBusinessesOfUser(long userId) {
-        User u = usersManager.findUserByID(userId);
-        return businessDao.getUnapprovedBusinessesOfUser(u);
+        return businessDao.getUnapprovedBusinessesOfUser(userId);
     }
 
     @Override
     public void deleteBusiness(long businessId) {
-        Business business = businessDao.findBusinessById(businessId);
-        businessDao.deleteBusiness(business);
+        businessDao.deleteBusiness(businessId);
 
     }
 
     @Override
-    public List<Business> getUnapprovedBusinesses() {
-        return businessDao.getUnapprovedBusinesses();
+    public boolean hasBusiness(long userId){
+        return businessDao.hasBusiness(userId);
     }
 
     @Override
-    public void approveBusiness(Long businessId) {
-        Business b = findBusinessById(businessId);
-        b.setApproved(true);
-        businessDao.approveBusiness(b);
-        changeUserRoleBusiness(b.getUser().getUserID());
-    }
-
-    private void changeUserRoleBusiness(Long userId)
-    {
-        User u = usersDao.findUserByID(userId);
-        Role r = usersDao.findById(3L);
-        u.setRole(r);
-        usersDao.updateUser(u);
-    }
-
-    @Override
-    public boolean hasBusiness(long userId){
-        User u = usersManager.findUserByID(userId);
-        return businessDao.hasBusiness(u);
+    public List<Business> getCreatedBusinesses() {
+        return businessDao.getCreatedBusinesses();
     }
 
@@ -78,12 +50,5 @@
     @Override
     public void editBusiness(long businessId, String name, String phone, String address, String edbs, User user, boolean approved) {
-        Business business = findBusinessById(businessId);
-        business.setName(name);
-        business.setPhone(phone);
-        business.setAddress(address);
-        business.setEdbs(edbs);
-        business.setUser(user);
-        business.setApproved(approved);
-        businessDao.editBusiness(business);
+        businessDao.editBusiness(businessId, name, phone, address, edbs, user, approved);
     }
 
Index: src/main/java/com/tourMate/services/impl/HotelManagerImpl.java
===================================================================
--- src/main/java/com/tourMate/services/impl/HotelManagerImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/services/impl/HotelManagerImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -4,14 +4,14 @@
 import com.tourMate.dao.UsersDao;
 import com.tourMate.dto.HotelDto;
-import com.tourMate.dto.HotelReservationDto;
-import com.tourMate.dto.HotelReservationUserDto;
 import com.tourMate.entities.*;
 import com.tourMate.services.HotelManager;
-import com.tourMate.services.UsersManager;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.time.Duration;
-import java.util.*;
+import java.util.Collection;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
 import java.util.stream.Collectors;
 
@@ -23,6 +23,5 @@
     @Autowired
     UsersDao usersDao;
-    @Autowired
-    UsersManager usersManager;
+
 
     @Override
@@ -33,7 +32,5 @@
     @Override
     public void createHotel(Hotels hotels, long userId) {
-        User u = usersManager.findUserByID(userId);
-        hotels.setOwner(u);
-        hotelDao.createHotel(hotels);
+        hotelDao.createHotel(hotels, userId);
     }
 
@@ -41,4 +38,5 @@
     @Override
     public List<Hotels> getHotels() {
+        List<Hotels> hoteli = hotelDao.getHotels();
         return hotelDao.getHotels();
     }
@@ -46,6 +44,5 @@
     @Override
     public List<Hotels> getHotelsForUser(long userId) {
-        User u = usersManager.findUserByID(userId);
-        return hotelDao.getHotelsForUser(u);
+        return hotelDao.getHotelsForUser(userId);
     }
 
@@ -57,19 +54,10 @@
     @Override
     public void editHotel(long hotelId, String hotelName, String hotelDescripiton, String hotelLocation, String hotelEDBS, Boolean parking, Boolean petFriendly, Boolean internetAvailable) {
-        Hotels hotel = hotelDao.findHotelByID(hotelId);
-        hotel.setHotelName(hotelName);
-        hotel.setHotelDescripiton(hotelDescripiton);
-        hotel.setHotelLocation(hotelLocation);
-        hotel.setHotelEDBS(hotelEDBS);
-        hotel.setParking(parking);
-        hotel.setPetFriendly(petFriendly);
-        hotel.setInternetAvailable(internetAvailable);
-        hotelDao.editHotel(hotel);
+        hotelDao.editHotel(hotelId, hotelName, hotelDescripiton, hotelLocation, hotelEDBS, parking, petFriendly, internetAvailable);
     }
 
     @Override
     public void deleteHotel(long hotelId) {
-        Hotels h = findHotelByID(hotelId);
-        hotelDao.deleteHotel(h);
+        hotelDao.deleteHotel(hotelId);
     }
 
@@ -80,13 +68,11 @@
 
     @Override
-    public List<HotelsImages> getHotelImages(Long hotelId) {
-        Hotels h = hotelDao.findHotelByID(hotelId);
-        return hotelDao.getHotelImages(h);
+    public List<HotelsImages> getHotelImages(Hotels hotels) {
+        return hotelDao.getHotelImages(hotels);
     }
 
     @Override
     public List<HotelRoom> getRoomsOfHotel(long hotelId) {
-        Hotels h = findHotelByID(hotelId);
-        return hotelDao.getRoomsOfHotel(h);
+        return hotelDao.getRoomsOfHotel(hotelId);
     }
 
@@ -97,20 +83,17 @@
 
     @Override
-    public List<HotelRoomImages> getRoomImages(Long hotelRoom) {
-        HotelRoom hr = hotelDao.findRoomById(hotelRoom);
-        return hotelDao.getRoomImages(hr);
-    }
-
-    @Override
-    public void addHotelImage(Long hotel, List<String> url)
+    public List<HotelRoomImages> getRoomImages(HotelRoom hotelRoom) {
+        return hotelDao.getRoomImages(hotelRoom);
+    }
+
+    @Override
+    public void addHotelImage(Hotels hotel, String url)
     {
-        Hotels h = findHotelByID(hotel);
-        url.stream().map(file -> new HotelsImages(h, file)).forEach(x -> hotelDao.addHotelImage(x));
+        hotelDao.addHotelImage(hotel, url);
     }
 
     @Override
     public void deleteHotelImage(long hotelImageId){
-        HotelsImages hotelsImages = findHotelImageById(hotelImageId);
-        hotelDao.deleteHotelImage(hotelsImages);
+        hotelDao.deleteHotelImage(hotelImageId);
     }
 
@@ -121,56 +104,33 @@
 
     @Override
-    public void createRoom(Long hotelId, String hotelRoomDescription, String hotelRoomName, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price, int numOfBeds) {
-        Hotels hotel = findHotelByID(hotelId);
-        HotelRoom hotelRoom = new HotelRoom(hotel, hotelRoomDescription, hotelRoomName, kitchenAvailable, airConditioning, balcony, price, numOfBeds);
-        hotelDao.createRoom(hotelRoom);
+    public void createRoom(Hotels hotel, String hotelRoomDescription, String hotelRoomName, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price) {
+        hotelDao.createRoom(hotel, hotelRoomDescription, hotelRoomName, kitchenAvailable, airConditioning, balcony, price);
     }
 
     @Override
     public void editRoom(long hotelRoomId, Hotels hotel, String hotelRoomDescription, String hotelRoomName, Boolean kitchenAvailable, Boolean airConditioning, Boolean balcony, double price) {
-        HotelRoom hr = findRoomById(hotelRoomId);
-        hr.setHotel(hotel);
-        hr.setHotelRoomDescription(hotelRoomDescription);
-        hr.setHotelRoomName(hotelRoomName);
-        hr.setKitchenAvailable(kitchenAvailable);
-        hr.setAirConditioning(airConditioning);
-        hr.setBalcony(balcony);
-        hr.setPrice(price);
-        hotelDao.editRoom(hr);
+        hotelDao.editRoom(hotelRoomId, hotel, hotelRoomDescription, hotelRoomName, kitchenAvailable, airConditioning, balcony, price);
     }
 
     @Override
     public void deleteRoom(long hotelRoomId) {
-        HotelRoom hr = findRoomById(hotelRoomId);
-        hotelDao.deleteRoom(hr);
-    }
-
-
-    @Override
-    public List<HotelRoomAvailable> getRoomsAvailableById(Long id) {
+        hotelDao.deleteRoom(hotelRoomId);
+    }
+
+    @Override
+    public List<HotelRoomAvailable> getRoomsAvailable(Long id) {
         return hotelDao.getRoomsAvailable(id);
     }
 
     @Override
-    public void createRoomAvailible(long hotelRoomId, Date dateFrom, Date dateTo, int numberOfBeds) {
-        HotelRoom hotelRoom = findRoomById(hotelRoomId);
-        HotelRoomAvailable hra = new HotelRoomAvailable(hotelRoom, dateFrom, dateTo, numberOfBeds);
-        hotelDao.createRoomAvailible(hra);
+    public void createRoomAvailible(HotelRoom hotelRoom, Date dateFrom, Date dateTo, int numberOfBeds) {
+        hotelDao.createRoomAvailible(hotelRoom, dateFrom, dateTo, numberOfBeds);
     }
 
     @Override
     public void editRoomAvailible(long hotelRoomAvailableId, HotelRoom hotelRoom, Date dateFrom, Date dateTo, int numberOfBeds) {
-        HotelRoomAvailable hr = findAvailibleRoomById(hotelRoomAvailableId);
-        hr.setHotelRoom(hotelRoom);
-        hr.setDateFrom(dateFrom);
-        hr.setDateTo(dateTo);
-        hr.setNumberOfBeds(numberOfBeds);
-        hotelDao.editRoomAvailible(hr);
-    }
-    //01-01-2024 - 30-01-2024
-    //05-01-2024 - 10-01-2024
-
-    //01-01 - 05-01
-    //10-01 - 30-01
+        hotelDao.editRoomAvailible(hotelRoomAvailableId, hotelRoom, dateFrom, dateTo, numberOfBeds);
+    }
+
     @Override
     public void editRoomAvailibleReservation(Long HotelRoomAvailableId, Long hotelRoomId, Date from, Date to, int numberOfBeds){
@@ -178,14 +138,11 @@
         roomAvailable.setNumberOfBeds(numberOfBeds-1);
         HotelRoom room = hotelDao.findRoomById(hotelRoomId);
-        HotelRoomAvailable hra = new HotelRoomAvailable(room,roomAvailable.getDateFrom(),from,1);
-        hotelDao.createRoomAvailible(hra);
-        HotelRoomAvailable hra1 = new HotelRoomAvailable(room,to,roomAvailable.getDateTo(),1);
-        hotelDao.createRoomAvailible(hra1);
+        hotelDao.createRoomAvailible(room, roomAvailable.getDateFrom(), from, 1);
+        hotelDao.createRoomAvailible(room, to, roomAvailable.getDateTo(), 1);
     }
 
     @Override
     public void deleteRoomAvailible(long hotelRoomAvailableId) {
-        HotelRoomAvailable hra = findAvailibleRoomById(hotelRoomAvailableId);
-        hotelDao.deleteRoomAvailible(hra);
+        hotelDao.deleteRoomAvailible(hotelRoomAvailableId);
     }
 
@@ -206,32 +163,7 @@
 
     @Override
-    public List<HotelRoomReservations> getReservationsInPeriod(String hotelLocation, Date dateFrom, Date dateTo)
-    {
-        return hotelDao.getReservationsInPeriod(hotelLocation, dateFrom, dateTo);
-    }
-
-    @Override
-    public List<HotelDto> getRoomsAvailibilityByDateAndLocation(String hotelLocation, Date dateFrom, Date dateTo, int numberOfBeds, Boolean flexible) {
+    public List<HotelDto> getRoomsAvailibilityByDateAndLocation(String hotelLocation, Date dateFrom, Date dateTo, int numberOfBeds) {
         long numberOfNights = Duration.between(dateFrom.toInstant(), dateTo.toInstant()).toDays();
-        List<Hotels> hotels = getHotelsByLocation(hotelLocation);
-        List<HotelRoomReservations> hotelRoomReservations = getReservationsInPeriod(hotelLocation, dateFrom, dateTo);
-        List<Hotels> hotelsWithReservations = hotelRoomReservations.stream().map(x -> x.getHotelRoom().getHotel()).toList();
-        List<Hotels> mostReservedHotels = hotelRoomReservations.stream()
-                .collect(Collectors.groupingBy(x -> x.getHotelRoom().getHotel(), Collectors.counting())).entrySet().stream()
-                .sorted(Map.Entry.comparingByValue(Comparator.reverseOrder()))
-                .limit(5)
-                .map(Map.Entry::getKey)
-                .toList();
-        List<Hotels> leastReservedHotels = hotelRoomReservations.stream()
-                .collect(Collectors.groupingBy(x -> x.getHotelRoom().getHotel(), Collectors.counting())).entrySet().stream()
-                .sorted(Map.Entry.comparingByValue())
-                .limit(5)
-                .map(Map.Entry::getKey)
-                .toList();
-        List<Hotels> hotelsWithoutReservations = hotels.stream().filter(x -> !hotelsWithReservations.contains(x)).toList();
-        List<Hotels> hotelsToBeMarketed = new ArrayList<>();
-        hotelsToBeMarketed.addAll(hotelsWithoutReservations);
-        hotelsToBeMarketed.addAll(leastReservedHotels);
-        List<HotelRoomAvailable> roomsAvailible = hotelDao.getRoomsAvailibilityByDateAndLocation(hotelLocation, dateFrom, dateTo, numberOfBeds, flexible);
+        List<HotelRoomAvailable> roomsAvailible = hotelDao.getRoomsAvailibilityByDateAndLocation(hotelLocation, dateFrom, dateTo, numberOfBeds);
         Map<Hotels, List<HotelRoomAvailable>> roomsByHotels = roomsAvailible.stream().collect(Collectors.groupingBy(x -> x.getHotelRoom().getHotel()));
         List<HotelDto> hotelsList = roomsByHotels.keySet().stream()
@@ -246,10 +178,5 @@
                         x.getInternetAvailable(),
                         roomsByHotels.get(x).stream().mapToDouble(y -> y.getHotelRoom().getPrice()).min().getAsDouble() * numberOfNights,
-                        roomsByHotels.get(x),
-                        getReviewsForHotel(x.getHotelId()),
-                        getReviewsForHotel(x.getHotelId()).stream().mapToDouble(Reviews::getNumStar).average().orElse(0),
-                        getHotelImages(x.getHotelId()),
-                        mostReservedHotels.contains(x),
-                        hotelsToBeMarketed.contains(x)
+                        roomsByHotels.get(x)
                 )).toList();
         return hotelsList;
@@ -258,66 +185,19 @@
 
     @Override
-    // TODO:Transactional
     public void createReservation(Long userId, Long hotelRoomId, Long hotelRoomAvailableId, Date dateFrom, Date dateTo, Integer numberOfBeds) {
         HotelRoom room = hotelDao.findRoomById(hotelRoomId);
         User user = usersDao.findUserByID(userId);
-        HotelRoomReservations r = new HotelRoomReservations(user, room, dateFrom, dateTo, numberOfBeds);
+        hotelDao.createReservation(user, room, dateFrom, dateTo, numberOfBeds);
         editRoomAvailibleReservation(hotelRoomAvailableId, hotelRoomId, dateFrom, dateTo, numberOfBeds);
-        hotelDao.createReservation(r);
-
     }
 
     @Override
     public void editReservation(long hotelRoomReservedId, User user, HotelRoom hotelRoom, Date dateFrom, Date dateTo, Integer numberOfBeds) {
-        HotelRoomReservations hr = findReservationById(hotelRoomReservedId);
-        hr.setUser(user);
-        hr.setHotelRoom(hotelRoom);
-        hr.setDateFrom(dateFrom);
-        hr.setDateTo(dateTo);
-        hr.setNumberOfBeds(numberOfBeds);
-        hotelDao.editReservation(hr);
-    }
-
+        hotelDao.editReservation(hotelRoomReservedId, user, hotelRoom, dateFrom, dateTo, numberOfBeds);
+    }
 
     @Override
     public void deleteReservation(long hotelRoomReservedId) {
-        HotelRoomReservations r = findReservationById(hotelRoomReservedId);
-        HotelRoomAvailable hra = new HotelRoomAvailable(r.getHotelRoom(), r.getDateFrom(), r.getDateTo(), r.getNumberOfBeds());
-        hotelDao.createRoomAvailible(hra);
-        hotelDao.deleteReservation(r);
-    }
-
-    @Override
-    public List<HotelReservationDto> findVaidReseravtionsByHotel(Long hotelId) {
-        Hotels hotel = findHotelByID(hotelId);
-        List<HotelRoomReservations> reservations = hotelDao.findReservationByHotel(hotel);
-        return reservations.stream()
-//                .filter(x -> x.getDateFrom().after(new Date()))
-                .map(x -> new HotelReservationDto(
-                        x.getUser(),
-                        x.getHotelRoom(),
-                        x.getDateFrom(),
-                        x.getDateTo(),
-                        x.getNumberOfBeds()
-                )).toList();
-    }
-
-    @Override
-    public List<HotelReservationUserDto> findValidHotelReservationsByUser(Long userId) {
-        User u = usersDao.findUserByID(userId);
-        List<HotelRoomReservations> reservations = hotelDao.findReservationByUser(u);
-        return reservations.stream().map(x -> new HotelReservationUserDto(
-                x.getHotelRoomReservedId(),
-                x.getUser(),
-                x.getHotelRoom(),
-                x.getDateFrom(),
-                x.getDateTo(),
-                x.getNumberOfBeds(),
-                x.getHotelRoom().getHotel().getHotelName(),
-                x.getHotelRoom().getHotel().getHotelLocation(),
-                "",
-                x.getHotelRoom().getHotel().getHotelId(),
-                x.getReviewed()
-        )).toList();
+        hotelDao.deleteReservation(hotelRoomReservedId);
     }
 
@@ -341,41 +221,3 @@
         return hotelDao.getReservations();
     }
-
-    @Override
-    public List<Reviews> getReviewsForHotel(Long hotelId) {
-        Hotels hotel = findHotelByID(hotelId);
-        return hotelDao.findReviewsByHotel(hotel);
-    }
-
-    @Override
-    public List<HotelReservationUserDto> findPastHotelReservationsByUser(Long id) {
-        User u = usersDao.findUserByID(id);
-        List<HotelRoomReservations> reservations = hotelDao.findPastReservationByUser(u);
-        return reservations.stream().map(x -> new HotelReservationUserDto(
-                x.getHotelRoomReservedId(),
-                x.getUser(),
-                x.getHotelRoom(),
-                x.getDateFrom(),
-                x.getDateTo(),
-                x.getNumberOfBeds(),
-                x.getHotelRoom().getHotel().getHotelName(),
-                x.getHotelRoom().getHotel().getHotelLocation(),
-                "",
-                x.getHotelRoom().getHotel().getHotelId(),
-                x.getReviewed()
-        )).toList();
-    }
-
-    @Override
-    public void addRoomImage(Long id, List<String> filesToAdd) {
-        HotelRoom hr = findRoomById(id);
-        filesToAdd.stream().map(file -> new HotelRoomImages(hr, file)).forEach(x -> hotelDao.addRoomImage(x));
-    }
-
-    @Override
-    public void setReservationReviewed(Long reservationId) {
-        HotelRoomReservations hotelRoomReservations = findReservationById(reservationId);
-        hotelRoomReservations.setReviewed(true);
-        hotelDao.saveReservation(hotelRoomReservations);
-    }
 }
Index: c/main/java/com/tourMate/services/impl/ImageManagerImpl.java
===================================================================
--- src/main/java/com/tourMate/services/impl/ImageManagerImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,65 +1,0 @@
-package com.tourMate.services.impl;
-
-import com.tourMate.controllers.ImageController;
-import com.tourMate.services.HotelManager;
-import com.tourMate.services.ImageManager;
-import com.tourMate.services.RestaurantManager;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.web.multipart.MultipartFile;
-
-import java.io.IOException;
-import java.nio.file.Path;
-import java.nio.file.Paths;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-@Service
-public class ImageManagerImpl implements ImageManager {
-
-    @Autowired
-    HotelManager hotelManager;
-    @Autowired
-    RestaurantManager restaurantManager;
-    private static final Logger logger = LoggerFactory.getLogger(ImageController.class);
-    @Override
-    public List<String> uploadImages(List<MultipartFile> files, Long id, String type) {
-        List<String> filesToAdd = new ArrayList<>();
-        try
-        {
-            Path desktopPath = Paths.get(System.getProperty("user.home"), "Desktop\\images_tm");
-            for (MultipartFile file : files) {
-                Path filePath = desktopPath.resolve(file.getOriginalFilename());
-                System.out.println(filePath);
-                file.transferTo(filePath.toFile());
-                filesToAdd.add(filePath.toString());
-                logger.info(String.format("File name '%s' uploaded successfully.", file.getOriginalFilename()));
-            }
-        } catch (IOException e) {
-            throw new RuntimeException(e);
-        }
-
-        if(type.equals("hotel"))
-        {
-            hotelManager.addHotelImage(id, filesToAdd);
-        }
-        else if(type.equals("restaurant"))
-        {
-            restaurantManager.addRestaurantImage(id, filesToAdd);
-        }
-        else if(type.equals("room"))
-        {
-            hotelManager.addRoomImage(id, filesToAdd);
-        }
-        else if(type.equals("menu"))
-        {
-            restaurantManager.addMenuImage(id, filesToAdd);
-        }
-
-        return filesToAdd;
-    }
-}
Index: c/main/java/com/tourMate/services/impl/MailingServiceImpl.java
===================================================================
--- src/main/java/com/tourMate/services/impl/MailingServiceImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,26 +1,0 @@
-package com.tourMate.services.impl;
-
-import com.tourMate.services.MailingService;
-import org.springframework.mail.SimpleMailMessage;
-import org.springframework.mail.javamail.JavaMailSender;
-import org.springframework.stereotype.Service;
-
-@Service
-public class MailingServiceImpl implements MailingService {
-
-    private final JavaMailSender emailSender;
-
-    public MailingServiceImpl(JavaMailSender emailSender) {
-        this.emailSender = emailSender;
-    }
-
-    @Override
-    public void sendMail(String to, String subject, String messageText) {
-        SimpleMailMessage mail = new SimpleMailMessage();
-        mail.setFrom("Trip2MK");
-        mail.setTo(to);
-        mail.setSubject(subject);
-        mail.setText(messageText);
-        emailSender.send(mail);
-    }
-}
Index: src/main/java/com/tourMate/services/impl/MenuManagerImpl.java
===================================================================
--- src/main/java/com/tourMate/services/impl/MenuManagerImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/services/impl/MenuManagerImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -17,11 +17,10 @@
     @Override
     public void createMenu(String name, String ingredients, double price) {
-        menuDao.createMenu(new Menu(name, ingredients, price));
+        menuDao.createMenu(name, ingredients, price);
     }
 
     @Override
     public void deleteMenu(long menuId) {
-        Menu menu = findMenuById(menuId);
-        menuDao.deleteMenu(menu);
+        menuDao.deleteMenu(menuId);
     }
 
@@ -38,9 +37,5 @@
     @Override
     public void editMenu(long menuId, String name, String ingredients, double price) {
-        Menu menu = findMenuById(menuId);
-        menu.setName(name);
-        menu.setIngredients(ingredients);
-        menu.setPrice(price);
-        menuDao.editMenu(menu);
+        menuDao.editMenu(menuId, name, ingredients, price);
     }
 }
Index: src/main/java/com/tourMate/services/impl/RestaurantManagerImpl.java
===================================================================
--- src/main/java/com/tourMate/services/impl/RestaurantManagerImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/services/impl/RestaurantManagerImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -3,9 +3,6 @@
 import com.tourMate.dao.RestaurantDao;
 import com.tourMate.dto.RestaurantDto;
-import com.tourMate.dto.RestaurantReservationDto;
-import com.tourMate.dto.RestaurantReservationUserDto;
 import com.tourMate.services.RestaurantManager;
 import com.tourMate.entities.*;
-import com.tourMate.services.UsersManager;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -21,37 +18,30 @@
     @Autowired
     RestaurantDao restaurantDao;
-    @Autowired
-    UsersManager usersManager;
 
     @Override
     public void createRestaurant(Restaurant restaurant, long userId) {
-        User u = usersManager.findUserByID(userId);
-        Restaurant r = new Restaurant(restaurant.getRestaurantName(), restaurant.getRestaurantLocation(), restaurant.getCousineType(), restaurant.getRestaurantDescription(), restaurant.getRestaurantEdbs(), u);
-        restaurantDao.createRestaurant(r);
-    }
-
-    @Override
-    public void deleteRestaurant(Long restaurantID) {
-        Restaurant r = findRestaurantByID(restaurantID);
-        restaurantDao.deleteRestaurant(r);
+        restaurantDao.createRestaurant(restaurant, userId);
+    }
+
+
+
+    @Override
+    public void deleteRestaurant(long restaurantID) {
+        restaurantDao.deleteRestaurant(restaurantID);
     }
 
     @Override
     public void addMenuToRestaurant(long restaurantId, Menu menu) {
-        Restaurant r = findRestaurantByID(restaurantId);
-        menu.setRestaurant(r);
-        restaurantDao.addMenuToRestaurant(menu);
+        restaurantDao.addMenuToRestaurant(restaurantId, menu);
     }
 
     @Override
     public List<Restaurant> getRestaurantsByUser(long userId) {
-        User u = usersManager.findUserByID(userId);
-        return restaurantDao.getRestaurantsByUser(u);
-    }
-
-    @Override
-    public void deleteRestaurant(long restaurantID) {
-        Restaurant r = findRestaurantByID(restaurantID);
-        restaurantDao.deleteRestaurant(r);
+        return restaurantDao.getRestaurantsByUser(userId);
+    }
+
+    @Override
+    public void deleteHotel(long restaurantID) {
+        restaurantDao.deleteRestaurant(restaurantID);
     }
 
@@ -67,13 +57,11 @@
 
     @Override
-    public void addRestaurantImage(Long restaurant, List<String> url) {
-        Restaurant r = restaurantDao.findRestaurantByID(restaurant);
-        url.stream().map(file -> new RestaurantImages(r, file)).forEach(x -> restaurantDao.addRestaurantImage(x));
+    public void addRestaurantImage(Restaurant restaurant, String url) {
+        restaurantDao.addRestaurantImage(restaurant, url);
     }
 
     @Override
     public void removeRestaurantImage(long restaurantImageId) {
-        RestaurantImages restaurantImage = findRestaurantImageById(restaurantImageId);
-        restaurantDao.removeRestaurantImage(restaurantImage);
+        restaurantDao.removeRestaurantImage(restaurantImageId);
     }
 
@@ -89,54 +77,13 @@
 
     @Override
-    public List<RestaurantDto> getTablesByDateAndLocation(String restaurantLocation, Date date, String hourFrom, String hourTo, int noSeats) {
-        Date dateFrom = date;
-        Date dateTo = Date.from(date.toInstant());
-        String[] splittedFrom = hourFrom.split(":");
-        String[] splittedTo = hourTo.split(":");
-        dateFrom.setHours(Integer.parseInt(splittedFrom[0]));
-        dateFrom.setMinutes(Integer.parseInt(splittedFrom[1]));
-        dateTo.setHours(Integer.parseInt(splittedTo[0]));
-        dateTo.setMinutes(Integer.parseInt(splittedTo[1]));
-        List<RestaurantsAvailible> restaurantsAvailibles = restaurantDao.getTablesByDateAndLocation(restaurantLocation, dateFrom, dateTo, noSeats);
-        Map<Restaurant, List<RestaurantsAvailible>> tablesByRestaurants = restaurantsAvailibles.stream().collect(Collectors.groupingBy(x -> x.getRestaurantTable().getRestaurant()));
-        List<RestaurantDto> restaurantsList = tablesByRestaurants.keySet().stream()
-                .map(x -> new RestaurantDto(
-                        x.getRestaurantID(),
-                        x.getRestaurantName(),
-                        x.getRestaurantLocation(),
-                        x.getCousineType(),
-                        x.getRestaurantDescription(),
-                        x.getRestaurantEdbs(),
-                        x.getMenus(),
-                        tablesByRestaurants.get(x),
-                        getReviewsForRestaurant(x.getRestaurantID()),
-                        getReviewsForRestaurant(x.getRestaurantID()).stream().mapToDouble(Reviews::getNumStar).average().orElse(0),
-                        getRestaurantImages(x.getRestaurantID()),
-                        getMenuImagesByRestaurant(x.getRestaurantID())
-                )).toList();
-        return restaurantsList;
+    public List<RestaurantDto> getTablesByDateAndLocation(String restaurantLocation, Date hourFrom, Date hourTo, int noSeats){
+        List<RestaurantsAvailible> restaurantsAvailibles = restaurantDao.getTablesByDateAndLocation(restaurantLocation, hourFrom, hourTo, noSeats);
+        Map<Restaurant, List<RestaurantsAvailible>> RestaurantsByAvailability = restaurantsAvailibles.stream().collect(Collectors.groupingBy(x -> x.getRestaurantTable().getRestaurant()));
+        return null;
     }
 
     @Override
     public void editRestaurant(long restaurantID, String restaurantName, String restaurantLocation, String cousineType, String restaurantDescription, String restaurantEdbs, User restaurantOwner) {
-        Restaurant res = findRestaurantByID(restaurantID);
-        res.setRestaurantName(restaurantName);
-        res.setRestaurantLocation(restaurantLocation);
-        res.setRestaurantEdbs(restaurantEdbs);
-        res.setRestaurantDescription(restaurantDescription);
-        res.setRestaurantOwner(restaurantOwner);
-        res.setCousineType(cousineType);
-        restaurantDao.createRestaurant(res);
-    }
-
-    @Override
-    public void editReservation(long restaurantsTableId, RestaurantsTable rt, Date hourFrom, Date hourTo, int noSeats, User user){
-        RestaurantReservations r = findReservationByID(restaurantsTableId);
-        r.setTable(rt);
-        r.setTimeFrom(hourFrom);
-        r.setTimeTo(hourTo);
-        r.setNoSeats(noSeats);
-        r.setUser(user);
-        restaurantDao.saveReservation(r);
+        restaurantDao.editRestaurant(restaurantID, restaurantName, restaurantLocation, cousineType, restaurantDescription, restaurantEdbs, restaurantOwner);
     }
 
@@ -154,31 +101,26 @@
     public void createTable(Long restaurantId, int noSeats) {
         Restaurant r = restaurantDao.findRestaurantByID(restaurantId);
-        RestaurantsTable restaurantsTable = new RestaurantsTable(r, noSeats);
-        restaurantDao.saveTable(restaurantsTable);
+        restaurantDao.createTable(r, noSeats);
     }
 
     @Override
     public void editTable(Restaurant restaurant, long tableId, int noSeats) {
-        RestaurantsTable resTable = findTableById(tableId);
-        resTable.setRestaurant(restaurant);
-        resTable.setNoSeats(noSeats);
-        restaurantDao.saveTable(resTable);
+        restaurantDao.editTable(restaurant, tableId, noSeats);
     }
 
     @Override
     public void deleteTable(long tableId) {
-        RestaurantsTable rt = findTableById(tableId);
-        restaurantDao.deleteTable(rt);
-    }
-
-    @Override
-    public void createTableAvailable(Long rt, Date hourFrom, Date hourTo, int numTables) {
+        restaurantDao.deleteTable(tableId);
+    }
+
+    @Override
+    public void createTableAvailable(Long rt, Date hourFrom, Date hourTo) {
         RestaurantsTable rtabl = findTableById(rt);
-        RestaurantsAvailible ra = new RestaurantsAvailible(rtabl, hourFrom, hourTo, numTables);
-        restaurantDao.saveTableAvailable(ra);
-    }
-
-    @Override
-    public List<RestaurantsAvailible> getTablesAvailabilityById(Long id) {
+        restaurantDao.createTableAvailable(rtabl, hourFrom, hourTo);
+    }
+
+    @Override
+    public List<RestaurantsAvailible> getTablesAvailabilityById(Long id)
+    {
         return restaurantDao.getTablesAvailabilityById(id);
     }
@@ -186,40 +128,52 @@
     @Override
     public void editTableAvailable(long tableId, Restaurant restaurant, int noSeats) {
-        RestaurantsTable rt = findTableById(tableId);
-        rt.setRestaurant(restaurant);
-        rt.setNoSeats(noSeats);
-        restaurantDao.saveTable(rt);
+        restaurantDao.editTableAvailable(tableId, restaurant, noSeats);
     }
 
     @Override
     public void deleteTableAvailable(long tableId) {
-        RestaurantsAvailible ra = findAvailableReservationByID(tableId);
-        restaurantDao.deleteTableAvailable(ra);
-    }
-
-    @Override
-    public RestaurantsAvailible findAvailableReservationByID(long tableId){
-        return restaurantDao.findAvailableReservationByID(tableId);
+        restaurantDao.deleteTableAvailable(tableId);
+    }
+
+    @Override
+    public List<RestaurantsTable> getTablesAvailability() {
+        return null;
+    }
+
+    @Override
+    public void createReservation(Restaurant restaurant, int noSeats) {
+
     }
 
     @Override
     public void createReservation(RestaurantsTable rt, Date dateFrom, Date dateTo, User user) {
-        RestaurantReservations restaurantReservations = new RestaurantReservations(rt, dateFrom, dateTo, rt.getNoSeats(), user);
-        restaurantDao.createReservation(restaurantReservations);
-    }
-
+        restaurantDao.createReservation(rt, dateFrom, dateTo, user);
+    }
+
+    @Override
+    public void editReservation(long tableId, Restaurant restaurant, int noSeats) {
+        //restaurantDao.editReservation(tableId, restaurant, noSeats);
+    }
 
     @Override
     public void deleteReservation(long tableId) {
-        RestaurantReservations r = findReservationByID(tableId);
-        RestaurantsAvailible ra = new RestaurantsAvailible(r.getTable(), r.getTimeFrom(), r.getTimeTo(), r.getNoSeats());
-        restaurantDao.saveTableAvailable(ra);
-        restaurantDao.deleteReservation(r);
+        restaurantDao.deleteReservation(tableId);
     }
 
     @Override
     public RestaurantReservations findReservationByID(long tableId) {
-        return restaurantDao.findReservationByID(tableId);
-        //return null;
+        //return restaurantDao.findReservationByID(tableId);
+        return null;
+    }
+
+    @Override
+    public List<RestaurantReservations> findAvailableReservationByID() {
+        return null;
+    }
+
+    @Override
+    public List<RestaurantReservations> findAvailableReservationByID(long reservationId) {
+        return null;
+        // return restaurantDao.findAvailableReservationByID(reservationId);
     }
 
@@ -230,13 +184,6 @@
 
     @Override
-    public List<RestaurantReservationDto> findReservationByRestaurant(Long restaurant) {
-        Restaurant r = findRestaurantByID(restaurant);
-        List<RestaurantReservations> res = restaurantDao.findReservationByRestaurant(r);
-        return res.stream().map(x -> new RestaurantReservationDto(
-                x.getUser(),
-                x.getTable(),
-                x.getTimeFrom(),
-                x.getTimeTo()
-        )).collect(Collectors.toList());
+    public List<RestaurantReservations> findReservationByRestaurant(Restaurant restaurant) {
+        return restaurantDao.findReservationByRestaurant(restaurant);
     }
 
@@ -260,103 +207,3 @@
         return restaurantDao.searchByNoSeats(noSeats);
     }
-
-    @Override
-    public List<Reviews> getReviewsForRestaurant(Long restaurantId) {
-        Restaurant restaurant = findRestaurantByID(restaurantId);
-        return restaurantDao.findReviewsByRestaurant(restaurant);
-    }
-
-    @Override
-    public void createReservation(Long userId, Long restaurantTableId, Long restaurantAvailibleId, String hourFrom, String hourTo, Date date) {
-        User u = usersManager.findUserByID(userId);
-        RestaurantsTable restaurantTable = restaurantDao.findTableById(restaurantTableId);
-        RestaurantsAvailible restaurantsAvailible = restaurantDao.findAvailableReservationByID(restaurantAvailibleId);
-        Date dateFrom = date;
-        Date dateTo = Date.from(date.toInstant());
-        String[] splittedFrom = hourFrom.split(":");
-        String[] splittedTo = hourTo.split(":");
-        dateFrom.setHours(Integer.parseInt(splittedFrom[0]));
-        dateFrom.setMinutes(Integer.parseInt(splittedFrom[1]));
-        dateTo.setHours(Integer.parseInt(splittedTo[0]));
-        dateTo.setMinutes(Integer.parseInt(splittedTo[1]));
-        RestaurantReservations reservation = new RestaurantReservations(restaurantTable, dateFrom, dateTo, restaurantTable.getNoSeats(), u);
-        restaurantDao.createReservation(reservation);
-        editTableAvailability(restaurantsAvailible, restaurantTable, dateFrom, dateTo);
-    }
-
-    public void editTableAvailability(RestaurantsAvailible restaurantsAvailible, RestaurantsTable table, Date dateFrom, Date dateTo) {
-        restaurantsAvailible.setNumTables(restaurantsAvailible.getNumTables() - 1);
-        RestaurantsAvailible ra1 = new RestaurantsAvailible(table, restaurantsAvailible.getHourFrom(), dateFrom, 1);
-        RestaurantsAvailible ra2 = new RestaurantsAvailible(table, dateTo, restaurantsAvailible.getHourTo(), 1);
-
-        restaurantDao.saveTableAvailable(ra1);
-        restaurantDao.saveTableAvailable(ra2);
-    }
-
-    @Override
-    public List<RestaurantReservationUserDto> findValidRestaurantReservationsByUser(Long userId) {
-        User u = usersManager.findUserByID(userId);
-        List<RestaurantReservations> reservations = restaurantDao.findReservationByUser(u);
-        return reservations.stream().map(x -> new RestaurantReservationUserDto(
-                x.getReservationId(),
-                x.getUser(),
-                x.getTable(),
-                x.getTimeFrom(),
-                x.getTimeTo(),
-                x.getNoSeats(),
-                x.getTable().getRestaurant().getRestaurantName(),
-                x.getTable().getRestaurant().getRestaurantLocation(),
-                "",
-                x.getTable().getRestaurant().getRestaurantID(),
-                x.getReviewed()
-        )).toList();
-    }
-
-    @Override
-    public List<RestaurantReservationUserDto> findPastRestaurantReservationsByUser(Long userId) {
-        User u = usersManager.findUserByID(userId);
-        List<RestaurantReservations> reservations = restaurantDao.findPastReservationsByUser(u);
-        return reservations.stream().map(x -> new RestaurantReservationUserDto(
-                x.getReservationId(),
-                x.getUser(),
-                x.getTable(),
-                x.getTimeFrom(),
-                x.getTimeTo(),
-                x.getNoSeats(),
-                x.getTable().getRestaurant().getRestaurantName(),
-                x.getTable().getRestaurant().getRestaurantLocation(),
-                "",
-                x.getTable().getRestaurant().getRestaurantID(),
-                x.getReviewed()
-        )).toList();
-    }
-
-    @Override
-    public List<MenuImages> getMenuImages(Long id) {
-        return restaurantDao.getMenuImages(id);
-    }
-
-    @Override
-    public void addMenuImage(Long menuId, List<String> url) {
-        Menu r = restaurantDao.findMenuId(menuId);
-        url.stream().map(file -> new MenuImages(r, file)).forEach(x -> restaurantDao.addMenuImage(x));
-    }
-
-    @Override
-    public Menu findMenuById(Long menuId) {
-        return restaurantDao.findMenuId(menuId);
-    }
-
-    @Override
-    public void setReservationReviewed(Long reservationId) {
-        RestaurantReservations restaurantReservations = findReservationByID(reservationId);
-        restaurantReservations.setReviewed(true);
-        restaurantDao.saveReservation(restaurantReservations);
-    }
-
-    @Override
-    public List<MenuImages> getMenuImagesByRestaurant(long restaurantId) {
-        Restaurant r = findRestaurantByID(restaurantId);
-        return restaurantDao.getMenuImagesByRestaurant(r);
-    }
 }
Index: src/main/java/com/tourMate/services/impl/ReviewManagerImpl.java
===================================================================
--- src/main/java/com/tourMate/services/impl/ReviewManagerImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/services/impl/ReviewManagerImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -3,8 +3,8 @@
 import com.tourMate.dao.ReviewDao;
 import com.tourMate.dao.ReviewManager;
-import com.tourMate.entities.*;
-import com.tourMate.services.HotelManager;
-import com.tourMate.services.RestaurantManager;
-import com.tourMate.services.TransportManager;
+import com.tourMate.entities.Hotels;
+import com.tourMate.entities.Restaurant;
+import com.tourMate.entities.Reviews;
+import com.tourMate.entities.Transport;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -18,39 +18,12 @@
     ReviewDao reviewDao;
 
-    @Autowired
-    HotelManager hotelManager;
-    @Autowired
-    TransportManager transportManager;
-    @Autowired
-    RestaurantManager restaurantManager;
-
     @Override
-    public void createReview(String title, int numStar, String description, Long hotel, Long restaurant, Long transport, Long reservationId) {
-        Hotels h = null;
-        Restaurant r = null;
-        Transport t = null;
-        if(hotel != null)
-        {
-            h = hotelManager.findHotelByID(hotel);
-            hotelManager.setReservationReviewed(reservationId);
-        }
-        if(restaurant != null)
-        {
-            r = restaurantManager.findRestaurantByID(restaurant);
-            restaurantManager.setReservationReviewed(reservationId);
-        }
-        if(transport != null)
-        {
-            t = transportManager.getTransportById(transport);
-            transportManager.setReservationReviewed(reservationId);
-        }
-        Reviews review = new Reviews (title, numStar, description, h, r, t);
-        reviewDao.createReview(review);
+    public void createReview(String title, int numStar, String description, Hotels hotel, Restaurant restaurant, Transport transport) {
+        reviewDao.createReview(title, description, numStar, hotel, restaurant, transport);
     }
 
     @Override
     public void deleteReview(long id) {
-        Reviews review = findReviewById(id);
-        reviewDao.deleteReview(review);
+        reviewDao.deleteReview(id);
     }
 
@@ -62,12 +35,5 @@
     @Override
     public void editReview(long id, String title, String description, int numStar, Hotels hotel, Restaurant restaurant, Transport transport) {
-        Reviews review = findReviewById(id);
-        review.setDescription(description);
-        review.setHotel(hotel);
-        review.setRestaurant(restaurant);
-        review.setTitle(title);
-        review.setNumStar(numStar);
-        review.setTransport(transport);
-        reviewDao.editReview(review);
+        reviewDao.editReview(id, title, description, numStar, hotel, restaurant, transport);
     }
 
Index: src/main/java/com/tourMate/services/impl/TokenManagerImpl.java
===================================================================
--- src/main/java/com/tourMate/services/impl/TokenManagerImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
+++ src/main/java/com/tourMate/services/impl/TokenManagerImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -0,0 +1,31 @@
+package com.tourMate.services.impl;
+
+import com.tourMate.dao.TokenDao;
+import com.tourMate.entities.Token;
+import com.tourMate.services.TokenManager;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+
+@Service
+public class TokenManagerImpl implements TokenManager {
+    @Autowired
+    TokenDao tokenDao;
+
+
+    @Override
+    public void saveToken(Token token) {
+        tokenDao.saveToken(token);
+    }
+
+    @Override
+    public Token getToken(String token) {
+        return tokenDao.getToken(token);
+    }
+    
+    @Override
+    public void setConfirmedAt(String token) {
+        tokenDao.setConfirmedAt(token, LocalDateTime.now());
+    }
+}
Index: src/main/java/com/tourMate/services/impl/TransportManagerImpl.java
===================================================================
--- src/main/java/com/tourMate/services/impl/TransportManagerImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/services/impl/TransportManagerImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -3,8 +3,9 @@
 
 import com.tourMate.dao.TransportDao;
-import com.tourMate.dto.*;
+import com.tourMate.dto.RouteListingDto;
+import com.tourMate.dto.TransportDto;
+import com.tourMate.dto.TransportListingDto;
 import com.tourMate.entities.*;
 import com.tourMate.services.TransportManager;
-import com.tourMate.services.UsersManager;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -15,4 +16,5 @@
 import java.util.Map;
 import java.util.stream.Collectors;
+import java.util.stream.DoubleStream;
 
 @Service
@@ -21,157 +23,56 @@
     TransportDao transportDao;
 
-    @Autowired
-    UsersManager usersManager;
-
-
     @Override
-    public void createTransport(String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, Long userId, String carPlate) {
-        User u = usersManager.findUserByID(userId);
-        Transport t=new Transport(transportName,carBrand,carType,carManufacturedYear,noPassengers,noBags,EMBG,u,carPlate);
-        transportDao.createTransport(t);
+    public void createTransport(String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, User owner, String carPlate) {
+        transportDao.createTransport(transportName, carBrand, carType, carManufacturedYear, noPassengers, noBags, EMBG, owner, carPlate);
     }
 
     @Override
     public void deleteTransport(long transportId) {
-        Transport t=getTransportById(transportId);
-        transportDao.deleteTransport(t);
+        transportDao.deleteTransport(transportId);
     }
 
     @Override
     public List<Transport> getTransports() {
-        return transportDao.getTransports();
+       return transportDao.getTransports();
     }
 
     @Override
     public List<TransportDto> getTransportsByUser(long userId) {
-        User u = usersManager.findUserByID(userId);
-        List<Transport> transports = transportDao.getTransportsByUser(u);
-        return transports.stream().map(x -> new TransportDto(
-                x.getTransportID(),
-                x.getTransportName(),
-                x.getCarBrand(),
-                x.getCarType(),
-                x.getCarManufacturedYear(),
-                x.getNoPassengers(),
-                x.getNoBags(),
-                x.getEMBG(),
-                x.getOwner(),
-                x.getCarPlate(),
-                x.getAvailableRoutes().stream().map(y -> new RouteListingDto(
-                        y.getTransportAvailibleId(),
-                        y.getFrom(),
-                        y.getTo(),
-                        y.getDate(),
-                        y.getFreeSpace(),
-                        y.getTime(),
-                        y.getRoutes(),
-                        y.getRoutes().stream()
-                                .mapToDouble(TransportRoute::getPrice)
-                                .max().orElse(0)
-                )).toList(),
-                x.getAvailableRoutes().stream()
-                        .flatMapToDouble(y -> y.getRoutes()
-                                .stream()
-                                .mapToDouble(TransportRoute::getPrice)).max().orElseGet(() -> 0)
-        )).toList();
+        return transportDao.getTransportsByUser(userId);
     }
 
     @Override
     public List<RouteListingDto> getRoutesForTransport(long transportId) {
-        Transport t = getTransportById(transportId);
-        List<TransportAvailible> transportAvailibles = transportDao.getRoutesForTransport(t);
-        return transportAvailibles.stream().map(x -> new RouteListingDto(
-                x.getTransportAvailibleId(),
-                x.getFrom(),
-                x.getTo(),
-                x.getDate(),
-                x.getFreeSpace(),
-                x.getTime(),
-                x.getRoutes(),
-                x.getRoutes().stream()
-                        .mapToDouble(TransportRoute::getPrice)
-                        .max().orElse(0)
-        )).toList();
+        return transportDao.getRoutesForTransport(transportId);
     }
 
     @Override
     public TransportDto findTransportById(long transportId) {
-        Transport x = transportDao.findTransportById(transportId);
-        return new TransportDto(
-                x.getTransportID(),
-                x.getTransportName(),
-                x.getCarBrand(),
-                x.getCarType(),
-                x.getCarManufacturedYear(),
-                x.getNoPassengers(),
-                x.getNoBags(),
-                x.getEMBG(),
-                x.getOwner(),
-                x.getCarPlate(),
-                x.getAvailableRoutes().stream().map(y -> new RouteListingDto(
-                        y.getTransportAvailibleId(),
-                        y.getFrom(),
-                        y.getTo(),
-                        y.getDate(),
-                        y.getFreeSpace(),
-                        y.getTime(),
-                        y.getRoutes(),
-                        y.getRoutes().stream()
-                                .mapToDouble(TransportRoute::getPrice)
-                                .max().orElse(0)
-                )).toList(),
-                x.getAvailableRoutes().stream()
-                        .flatMapToDouble(y -> y.getRoutes()
-                                .stream()
-                                .mapToDouble(TransportRoute::getPrice)).max().orElseGet(() -> 0));
-    }
-
-    @Override
-    public Transport getTransportById(Long transportId) {
-        return transportDao.getTransportById(transportId);
+        return transportDao.findTransportById(transportId);
     }
 
     @Override
     public void editTransport(long transportID, String transportName, String carBrand, String carType, int carManufacturedYear, int noPassengers, int noBags, long EMBG, User owner, String carPlate) {
-        Transport t=getTransportById(transportID);
-        t.setTransportName(transportName);
-        t.setCarBrand(carBrand);
-        t.setCarType(carType);
-        t.setCarManufacturedYear(carManufacturedYear);
-        t.setNoPassengers(noPassengers);
-        t.setNoBags(noBags);
-        t.setEMBG(EMBG);
-        t.setOwner(owner);
-        t.setCarPlate(carPlate);
-        transportDao.editTransport(t);
+        transportDao.editTransport(transportID, transportName, carBrand, carType, carManufacturedYear, noPassengers, noBags, EMBG, owner, carPlate);
     }
 
     @Override
-    public void createTransportReservation(Long transportRouteId, Long userId, int noSeats) {
-        TransportRoute transportRoute = transportDao.findTransportRouteById(transportRouteId);
-        User u = usersManager.findUserByID(userId);
-        TransportReservation transportReservation = new TransportReservation(transportRoute, noSeats, u);
-        transportDao.createTransportReservation(transportReservation);
+    public void createTransportReservation(Transport transport, String departureLocation, String arrivalLocation, Date date, Integer noSeats, User user, Date departureHour) {
+        transportDao.createTransportReservation(transport, departureLocation, arrivalLocation, date, noSeats, user, departureHour);
     }
 
     @Override
     public TransportReservation findTransportReservationByID(long reservationID) {
-        return transportDao.findTransportReservationByID(reservationID);
-    }
-
-    @Override
-    public List<TransportReservation> findTransportReservationByTransportId(long reservationID) {
-        Transport t = getTransportById(reservationID);
-        return transportDao.findTransportReservationByTransportId(t);
+       return transportDao.findTransportReservationByID(reservationID);
     }
 
     @Override
     public List<TransportReservation> getTransportReservations() {
-        return transportDao.getTransportReservations();
+      return  transportDao.getTransportReservations();
     }
 
     @Override
-    public TransportAvailible findTransportAvailableByID(long reservationID) {
-        return transportDao.findTransportAvailableByID(reservationID);
+    public TransportAvailible findTransportAvailableByID(long reservationID) {return transportDao.findTransportAvailableByID(reservationID);
     }
 
@@ -182,27 +83,19 @@
 
     @Override
-    public List<Reviews> getReviewsForTransport(long transportId) {
-        Transport transport = getTransportById(transportId);
-        return transportDao.getReviewsForTransport(transport);
-    }
-
-    @Override
-    public List<TransportListingDto> getTransportsAvailableByFilters(String from, String to, Date date, int numPassengers) {
-        List<TransportRoute> transportAvailable = transportDao.getTransportsAvailableByFilters(from, to, date, numPassengers);
+    public List<TransportListingDto> getTransportsAvailableByFilters(String from, String to, Date date) {
+        List<TransportRoute> transportAvailable = transportDao.getTransportsAvailableByFilters(from, to, date);
         Map<TransportAvailible, List<TransportRoute>> transportsByTransporter = transportAvailable.stream().collect(Collectors.groupingBy(x -> x.getParentRoute()));
         List<TransportListingDto> transportList = transportsByTransporter.keySet().stream().toList().stream()
                 .map(x -> new TransportListingDto(
-                        x.getTransportAvailibleId(),
-                        x.getFrom(),
-                        x.getTo(),
-                        x.getDate(),
-                        x.getFreeSpace(),
-                        x.getTime(),
-                        transportsByTransporter.get(x).stream().mapToDouble(y -> y.getPrice()).min().getAsDouble(),
-                        x.getRoutes(),
-                        x.getTransport(),
-                        getReviewsForTransport(x.getTransport().getTransportID()),
-                        getReviewsForTransport(x.getTransport().getTransportID()).stream().mapToDouble(Reviews::getNumStar).average().orElse(0)
-                )).collect(Collectors.toList());
+                            x.getTransportAvailibleId(),
+                            x.getFrom(),
+                            x.getTo(),
+                            x.getDate(),
+                            x.getFreeSpace(),
+                            x.getTime(),
+                            transportsByTransporter.get(x).stream().mapToDouble(y -> y.getPrice()).min().getAsDouble(),
+                            x.getRoutes(),
+                            x.getTransport()
+                    )).collect(Collectors.toList());
         return transportList;
     }
@@ -219,110 +112,43 @@
 
     @Override
-    public void createTransportAvailable(TransportAvailible transportAvailible, Transport transport, String departureLocation, String arrivalLocation, Date date, Integer noSeats, Date departureHour, Long transportId, Collection<TransportRoute> trRoutes) {
-        Transport t = getTransportById(transportId);
-        List<TransportRoute> routes = trRoutes.stream().toList();
-        routes.get(0).setDeparture(transportAvailible.getDate());
-        transportAvailible.setTime(routes.get(routes.size() - 1).getArrival());
-        routes.forEach(x -> x.setParentRoute(transportAvailible));
-        transportAvailible.setTransport(t);
-        TransportAvailible ta=new TransportAvailible(t,departureLocation,arrivalLocation,date,noSeats,departureHour);
-        transportDao.createTransportAvailable(ta);
-        routes.forEach(x -> {
-            TransportRoute tr = new TransportRoute(ta, x.getFrom(), x.getTo(), x.getPrice(), x.getDeparture(), x.getArrival(), x.getFreeSpace(), x.getOrder());
-            transportDao.createTransportRoute(tr);
-        });
+    public void createTransportAvailable(Transport transport, String departureLocation, String arrivalLocation, Date date, Integer noSeats, Date departureHour, Collection<TransportRoute> routes) {
+        transportDao.createTransportAvailable(transport, departureLocation, arrivalLocation, date, noSeats, departureHour, routes);
+    }
+
+    @Override
+    public void editTransportReservation(Transport transport, long reservationID, String departureLocation, String arrivalLocation, Date date, Integer noSeats, User user, Date departureHour) {
+        transportDao.editTransportReservation(transport, reservationID, departureLocation, arrivalLocation, date, noSeats, user, departureHour);
     }
 
     @Override
     public void editTransportAvailable(Transport transport, long availableID, String departureLocation, String arrivalLocation, Date date, Integer noSeats, Date departureHour) {
-        TransportAvailible ta=findTransportAvailableByID(availableID);
-        ta.setTransport(transport);
-        ta.setFrom(departureLocation);
-        ta.setTo(arrivalLocation);
-        ta.setDate(date);
-        ta.setFreeSpace(noSeats);
-        ta.setTime(departureHour);
-        transportDao.editTransportAvailable(ta);
+        transportDao.editTransportAvailable(transport, availableID, departureLocation, arrivalLocation, date, noSeats, departureHour);
     }
 
     @Override
     public void deleteTransportReservation(long reservationID) {
-        TransportReservation tr=findTransportReservationByID(reservationID);
-        transportDao.deleteTransportReservation(tr);
+        transportDao.deleteTransportReservation(reservationID);
     }
 
     @Override
     public void deleteTransportAvailable(long availableID) {
-        TransportAvailible ta=findTransportAvailableByID(availableID);
-        transportDao.deleteTransportAvailable(ta);
+        transportDao.deleteTransportAvailable(availableID);
     }
 
     @Override
-    public void createTransportRoute(TransportAvailible parentRoute, String from, String to, double price, Date departure, Date arrival, int freeSpace, int order) {
-        TransportRoute tr = new TransportRoute(parentRoute, from, to, price, departure, arrival, freeSpace, order);
-
-        transportDao.createTransportRoute(tr);
+    public void createTransportRoute(TransportAvailible parentRoute, String from, String to, double price, Date departure, Date arrival, int freeSpace, int order){
+        transportDao.createTransportRoute(parentRoute, from, to, price, departure, arrival, freeSpace, order);
     }
 
     @Override
-    public void deleteTransportRoute(long transportRouteId) {
-        TransportRoute tr = transportDao.findTransportRouteById(transportRouteId);
-        transportDao.deleteTransportRoute(tr);
+    public void deleteTransportRoute(long transportRouteId){
+        transportDao.deleteTransportRoute(transportRouteId);
     }
 
     @Override
-    public void editTransportRoute(long transportRouteId, TransportAvailible parentRoute, String from, String to, double price, Date departure, Date arrival, int freeSpace, int order) {
-        TransportRoute tr = transportDao.findTransportRouteById(transportRouteId);
-        tr.setParentRoute(parentRoute);
-        tr.setFrom(from);
-        tr.setTo(to);
-        tr.setPrice(price);
-        tr.setDeparture(departure);
-        tr.setArrival(arrival);
-        tr.setFreeSpace(freeSpace);
-        tr.setOrder(order);
-        transportDao.editTransportRoute(tr);
+    public void editTransportRoute(long transportRouteId, TransportAvailible parentRoute, String from, String to, double price, Date departure, Date arrival, int freeSpace, int order){
+        transportDao.editTransportRoute(transportRouteId, parentRoute, from, to, price, departure, arrival, freeSpace, order);
     }
 
-    @Override
-    public List<TransportReservationUserDto> findValidTransportReservationsByUser(Long userId) {
-        User u = usersManager.findUserByID(userId);
-        List<TransportReservation> reservations = transportDao.findReservationByUser(u);
-        return reservations.stream().map(x -> new TransportReservationUserDto(
-                x.getReservationID(),
-                x.getUser(),
-                x.getTransportRoute(),
-                x.getTransportRoute().getParentRoute().getTransport().getTransportID(),
-                x.getNoSeats(),
-                x.getTransportRoute().getParentRoute().getTransport().getCarBrand(),
-                x.getTransportRoute().getParentRoute().getTransport().getCarType(),
-                x.getTransportRoute().getParentRoute().getTransport().getOwner(),
-                x.getReviewed()
-        )).toList();
-    }
-
-    @Override
-    public List<TransportReservationUserDto> findPastTransportReservationsByUser(Long userId) {
-        User u = usersManager.findUserByID(userId);
-        List<TransportReservation> reservations = transportDao.findPastReservationByUser(u);
-        return reservations.stream().map(x -> new TransportReservationUserDto(
-                x.getReservationID(),
-                x.getUser(),
-                x.getTransportRoute(),
-                x.getTransportRoute().getParentRoute().getTransport().getTransportID(),
-                x.getNoSeats(),
-                x.getTransportRoute().getParentRoute().getTransport().getCarBrand(),
-                x.getTransportRoute().getParentRoute().getTransport().getCarType(),
-                x.getTransportRoute().getParentRoute().getTransport().getOwner(),
-                x.getReviewed()
-        )).toList();
-    }
-
-    @Override
-    public void setReservationReviewed(Long reservationId) {
-        TransportReservation transportReservation = findTransportReservationByID(reservationId);
-        transportReservation.setReviewed(true);
-        transportDao.saveReservation(transportReservation);
-    }
 
 }
Index: src/main/java/com/tourMate/services/impl/UsersManagerImpl.java
===================================================================
--- src/main/java/com/tourMate/services/impl/UsersManagerImpl.java	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/java/com/tourMate/services/impl/UsersManagerImpl.java	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -2,14 +2,10 @@
 
 import com.tourMate.dao.UsersDao;
-import com.tourMate.dto.PrincipalInfo;
 import com.tourMate.entities.User;
-import com.tourMate.events.OnProfileEnabledEvent;
 import com.tourMate.services.UsersManager;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.ApplicationEventPublisher;
 import org.springframework.security.core.userdetails.UserDetails;
 import org.springframework.security.core.userdetails.UserDetailsService;
 import org.springframework.security.core.userdetails.UsernameNotFoundException;
-import org.springframework.security.crypto.password.PasswordEncoder;
 import org.springframework.stereotype.Service;
 
@@ -22,8 +18,5 @@
     @Autowired
     UsersDao usersDao;
-    @Autowired
-    ApplicationEventPublisher eventPublisher;
-    @Autowired
-    PasswordEncoder passwordEncoder;
+
     @Override
     public void createUser(String name, String surname, String email, Date birthDate, String address, String contact) {
@@ -52,58 +45,4 @@
 
     @Override
-    public List<User> getUnapprovedUsers() {
-        return usersDao.getUnapprovedUsers();
-    }
-
-    @Override
-    public void approveUserProfile(long userId) {
-        User u = findUserByID(userId);
-        usersDao.approveUserProfile(u);
-    }
-
-    @Override
-    public void unlock(Long id) {
-        User u = findUserByID(id);
-        u.setLocked(!u.isLocked());
-        u.setEnabled(true);
-        usersDao.updateUser(u);
-    }
-
-    @Override
-    public List<User> getAdmins() {
-        return usersDao.getAdmins();
-    }
-
-    @Override
-    public void connectAccount(Long id, String username, String password) {
-        User u1 = findUserByID(id);
-        User u2 = (User) loadUserByUsername(username);
-        if(passwordEncoder.matches(password, u2.getPassword()))
-        {
-            u1.addConnectedUser(u2);
-        }
-        usersDao.updateUser(u1);
-    }
-
-    @Override
-    public List<User> findConnectedAccountsByUser(Long id) {
-        User u = findUserByID(id);
-        return usersDao.findConnectedAccountsByUser(u);
-    }
-
-    @Override
-    public PrincipalInfo getPrincipalInfo(Long userId) {
-        PrincipalInfo principalInfo = new PrincipalInfo();
-        User u = findUserByID(userId);
-        principalInfo.setUsername(u.getUsername());
-        principalInfo.setRole(u.getRole().getRoleName());
-        principalInfo.setId(userId);
-        principalInfo.setName(u.getName());
-        principalInfo.setEmail(u.getEmail());
-        principalInfo.setSurname(u.getSurname());
-        return principalInfo;
-    }
-
-    @Override
     public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
         return usersDao.findUserByUsername(username);
Index: src/main/resources/application.properties
===================================================================
--- src/main/resources/application.properties	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ src/main/resources/application.properties	(revision e9b4ba920295b1b329df3313a9e80743d23804ee)
@@ -14,22 +14,6 @@
 spring.datasource.hikari.maximumPoolSize=5
 
-
-
 spring.jpa.generate-ddl=true
 logging.level.org.springframework.security=DEBUG
 
 
-spring.security.oauth2.client.registration.github.client-id=f84a0839a98bf3b25d38
-spring.security.oauth2.client.registration.github.client-secret=e22be1f60e10517c8906bde54529280e57ff21f3
-
-spring.security.oauth2.client.registration.google.client-id=122292211431-p18l1falsh51nevvm2sg85rjp0psqsn4.apps.googleusercontent.com
-spring.security.oauth2.client.registration.google.client-secret=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
-spring.security.oauth2.client.registration.google.scope=profile,email
-
-spring.security.oauth2.client.registration.facebook.client-id=904891684514537
-spring.security.oauth2.client.registration.facebook.client-secret=f69fe635933dd32c12b5786968f18b4c
-#logging.level.org.springframework.security=DEBUG
-logging.level.org.springframework.security.oauth2=DEBUG
-
-
-
Index: c/main/resources/static/login.html
===================================================================
--- src/main/resources/static/login.html	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,13731 +1,0 @@
-<!DOCTYPE html>
-<!-- saved from url=(0027)http://localhost:3000/login -->
-<html lang="en">
-<head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-
-    <!-- <link rel="icon" href="http://localhost:3000/favicon.ico"> -->
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <meta name="theme-color" content="#000000">
-    <meta name="description" content="Web site created using create-react-app">
-    <!-- <link rel="apple-touch-icon" href="http://localhost:3000/logo192.png"> -->
-    <!--
-      manifest.json provides metadata used when your web app is installed on a
-      user's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/
-    -->
-    <link rel="manifest" href="http://localhost:3000/manifest.json">
-    <!--
-      Notice the use of  in the tags above.
-      It will be replaced with the URL of the `public` folder during the build.
-      Only files inside the `public` folder can be referenced from the HTML.
-
-      Unlike "/favicon.ico" or "favicon.ico", "/favicon.ico" will
-      work correctly both with client-side routing and a non-root public URL.
-      Learn how to configure a non-root public URL by running `npm run build`.
-    -->
-    <title>React App</title>
-    >
-    <style>body {
-        margin: 0;
-        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
-        'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
-        sans-serif;
-        -webkit-font-smoothing: antialiased;
-        -moz-osx-font-smoothing: grayscale;
-    }
-
-    code {
-        font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
-        monospace;
-    }
-
-    .backdrop {
-        position: fixed;
-        top: 0;
-        left: 0;
-        width: 100%;
-        height: 100vh;
-        z-index: -10;
-        background: rgba(0, 0, 0, 0.75);
-    }
-
-    .modal {
-        position: fixed;
-        top: 30vh;
-        left: 10%;
-        width: 80%;
-        z-index: 10000000;
-        overflow: hidden;
-    }
-
-    /*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8uL3NyYy9pbmRleC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxTQUFTO0VBQ1Q7O2NBRVk7RUFDWixtQ0FBbUM7RUFDbkMsa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0U7YUFDVztBQUNiOztBQUVBO0VBQ0UsZUFBZTtFQUNmLE1BQU07RUFDTixPQUFPO0VBQ1AsV0FBVztFQUNYLGFBQWE7RUFDYixZQUFZO0VBQ1osK0JBQStCO0FBQ2pDOztBQUVBO0VBQ0UsZUFBZTtFQUNmLFNBQVM7RUFDVCxTQUFTO0VBQ1QsVUFBVTtFQUNWLGlCQUFpQjtFQUNqQixnQkFBZ0I7QUFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnU2Vnb2UgVUknLCAnUm9ib3RvJywgJ094eWdlbicsXG4gICAgJ1VidW50dScsICdDYW50YXJlbGwnLCAnRmlyYSBTYW5zJywgJ0Ryb2lkIFNhbnMnLCAnSGVsdmV0aWNhIE5ldWUnLFxuICAgIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5jb2RlIHtcbiAgZm9udC1mYW1pbHk6IHNvdXJjZS1jb2RlLXBybywgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsICdDb3VyaWVyIE5ldycsXG4gICAgbW9ub3NwYWNlO1xufVxuXG4uYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7XG4gIHotaW5kZXg6IC0xMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbn1cblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDMwdmg7XG4gIGxlZnQ6IDEwJTtcbiAgd2lkdGg6IDgwJTtcbiAgei1pbmRleDogMTAwMDAwMDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4iXSwic291cmNlUm9vdCI6IiJ9 */</style>
-    <style>.App {
-        text-align: center;
-    }
-
-
-    .App-logo {
-        height: 40vmin;
-        pointer-events: none;
-    }
-
-    @media (prefers-reduced-motion: no-preference) {
-        .App-logo {
-            animation: App-logo-spin infinite 20s linear;
-        }
-    }
-
-    .App-header {
-        background-color: #282c34;
-        min-height: 100vh;
-        display: flex;
-        flex-direction: column;
-        align-items: center;
-        justify-content: center;
-        font-size: calc(10px + 2vmin);
-        color: white;
-    }
-
-    .App-link {
-        color: #61dafb;
-    }
-
-    .ikona {
-        vertical-align: middle;
-        display: inline-block;
-    }
-
-    .temno {
-        color: #1A5F7A;
-        font-weight: 800;
-        font-size: 1.5rem;
-    }
-
-    .svetlo {
-        color: #57C5B6;
-        font-weight: 500;
-        font-size: 1.5rem;
-    }
-
-    .tab-item {
-
-    }
-
-    .img-link {
-        text-decoration: none;
-    }
-
-    @keyframes App-logo-spin {
-        from {
-            transform: rotate(0deg);
-        }
-        to {
-            transform: rotate(360deg);
-        }
-    }
-
-    /*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8uL3NyYy9BcHAuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usa0JBQWtCO0FBQ3BCOzs7OztBQUtBO0VBQ0UsY0FBYztFQUNkLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFO0lBQ0UsNENBQTRDO0VBQzlDO0FBQ0Y7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsaUJBQWlCO0VBQ2pCLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLHVCQUF1QjtFQUN2Qiw2QkFBNkI7RUFDN0IsWUFBWTtBQUNkOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHNCQUFzQjtFQUN0QixxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsaUJBQWlCO0FBQ25COztBQUVBOztBQUVBOztBQUVBO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0U7SUFDRSx1QkFBdUI7RUFDekI7RUFDQTtJQUNFLHlCQUF5QjtFQUMzQjtBQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLkFwcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuXG5cblxuLkFwcC1sb2dvIHtcbiAgaGVpZ2h0OiA0MHZtaW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgLkFwcC1sb2dvIHtcbiAgICBhbmltYXRpb246IEFwcC1sb2dvLXNwaW4gaW5maW5pdGUgMjBzIGxpbmVhcjtcbiAgfVxufVxuXG4uQXBwLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyODJjMzQ7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1zaXplOiBjYWxjKDEwcHggKyAydm1pbik7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLkFwcC1saW5rIHtcbiAgY29sb3I6ICM2MWRhZmI7XG59XG5cbi5pa29uYSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnRlbW5vIHtcbiAgY29sb3I6ICMxQTVGN0E7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG4uc3ZldGxvIHtcbiAgY29sb3I6ICM1N0M1QjY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG4udGFiLWl0ZW0ge1xuXG59XG5cbi5pbWctbGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuQGtleWZyYW1lcyBBcHAtbG9nby1zcGluIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbiJdLCJzb3VyY2VSb290IjoiIn0= */</style>
-    <style>@charset "UTF-8";
-    /*!
- * Bootstrap  v5.3.0 (https://getbootstrap.com/)
- * Copyright 2011-2023 The Bootstrap Authors
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
- */
-    :root,
-    [data-bs-theme=light] {
-        --bs-blue: #0d6efd;
-        --bs-indigo: #6610f2;
-        --bs-purple: #6f42c1;
-        --bs-pink: #d63384;
-        --bs-red: #dc3545;
-        --bs-orange: #fd7e14;
-        --bs-yellow: #ffc107;
-        --bs-green: #198754;
-        --bs-teal: #20c997;
-        --bs-cyan: #0dcaf0;
-        --bs-black: #000;
-        --bs-white: #fff;
-        --bs-gray: #6c757d;
-        --bs-gray-dark: #343a40;
-        --bs-gray-100: #f8f9fa;
-        --bs-gray-200: #e9ecef;
-        --bs-gray-300: #dee2e6;
-        --bs-gray-400: #ced4da;
-        --bs-gray-500: #adb5bd;
-        --bs-gray-600: #6c757d;
-        --bs-gray-700: #495057;
-        --bs-gray-800: #343a40;
-        --bs-gray-900: #212529;
-        --bs-primary: #0d6efd;
-        --bs-secondary: #6c757d;
-        --bs-success: #198754;
-        --bs-info: #0dcaf0;
-        --bs-warning: #ffc107;
-        --bs-danger: #dc3545;
-        --bs-light: #f8f9fa;
-        --bs-dark: #212529;
-        --bs-primary-rgb: 13, 110, 253;
-        --bs-secondary-rgb: 108, 117, 125;
-        --bs-success-rgb: 25, 135, 84;
-        --bs-info-rgb: 13, 202, 240;
-        --bs-warning-rgb: 255, 193, 7;
-        --bs-danger-rgb: 220, 53, 69;
-        --bs-light-rgb: 248, 249, 250;
-        --bs-dark-rgb: 33, 37, 41;
-        --bs-primary-text-emphasis: #052c65;
-        --bs-secondary-text-emphasis: #2b2f32;
-        --bs-success-text-emphasis: #0a3622;
-        --bs-info-text-emphasis: #055160;
-        --bs-warning-text-emphasis: #664d03;
-        --bs-danger-text-emphasis: #58151c;
-        --bs-light-text-emphasis: #495057;
-        --bs-dark-text-emphasis: #495057;
-        --bs-primary-bg-subtle: #cfe2ff;
-        --bs-secondary-bg-subtle: #e2e3e5;
-        --bs-success-bg-subtle: #d1e7dd;
-        --bs-info-bg-subtle: #cff4fc;
-        --bs-warning-bg-subtle: #fff3cd;
-        --bs-danger-bg-subtle: #f8d7da;
-        --bs-light-bg-subtle: #fcfcfd;
-        --bs-dark-bg-subtle: #ced4da;
-        --bs-primary-border-subtle: #9ec5fe;
-        --bs-secondary-border-subtle: #c4c8cb;
-        --bs-success-border-subtle: #a3cfbb;
-        --bs-info-border-subtle: #9eeaf9;
-        --bs-warning-border-subtle: #ffe69c;
-        --bs-danger-border-subtle: #f1aeb5;
-        --bs-light-border-subtle: #e9ecef;
-        --bs-dark-border-subtle: #adb5bd;
-        --bs-white-rgb: 255, 255, 255;
-        --bs-black-rgb: 0, 0, 0;
-        --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
-        --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
-        --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
-        --bs-body-font-family: var(--bs-font-sans-serif);
-        --bs-body-font-size: 1rem;
-        --bs-body-font-weight: 400;
-        --bs-body-line-height: 1.5;
-        --bs-body-color: #212529;
-        --bs-body-color-rgb: 33, 37, 41;
-        --bs-body-bg: #fff;
-        --bs-body-bg-rgb: 255, 255, 255;
-        --bs-emphasis-color: #000;
-        --bs-emphasis-color-rgb: 0, 0, 0;
-        --bs-secondary-color: rgba(33, 37, 41, 0.75);
-        --bs-secondary-color-rgb: 33, 37, 41;
-        --bs-secondary-bg: #e9ecef;
-        --bs-secondary-bg-rgb: 233, 236, 239;
-        --bs-tertiary-color: rgba(33, 37, 41, 0.5);
-        --bs-tertiary-color-rgb: 33, 37, 41;
-        --bs-tertiary-bg: #f8f9fa;
-        --bs-tertiary-bg-rgb: 248, 249, 250;
-        --bs-heading-color: inherit;
-        --bs-link-color: #0d6efd;
-        --bs-link-color-rgb: 13, 110, 253;
-        --bs-link-decoration: underline;
-        --bs-link-hover-color: #0a58ca;
-        --bs-link-hover-color-rgb: 10, 88, 202;
-        --bs-code-color: #d63384;
-        --bs-highlight-bg: #fff3cd;
-        --bs-border-width: 1px;
-        --bs-border-style: solid;
-        --bs-border-color: #dee2e6;
-        --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
-        --bs-border-radius: 0.375rem;
-        --bs-border-radius-sm: 0.25rem;
-        --bs-border-radius-lg: 0.5rem;
-        --bs-border-radius-xl: 1rem;
-        --bs-border-radius-xxl: 2rem;
-        --bs-border-radius-2xl: var(--bs-border-radius-xxl);
-        --bs-border-radius-pill: 50rem;
-        --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
-        --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
-        --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
-        --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
-        --bs-focus-ring-width: 0.25rem;
-        --bs-focus-ring-opacity: 0.25;
-        --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
-        --bs-form-valid-color: #198754;
-        --bs-form-valid-border-color: #198754;
-        --bs-form-invalid-color: #dc3545;
-        --bs-form-invalid-border-color: #dc3545;
-    }
-
-    [data-bs-theme=dark] {
-        color-scheme: dark;
-        --bs-body-color: #adb5bd;
-        --bs-body-color-rgb: 173, 181, 189;
-        --bs-body-bg: #212529;
-        --bs-body-bg-rgb: 33, 37, 41;
-        --bs-emphasis-color: #fff;
-        --bs-emphasis-color-rgb: 255, 255, 255;
-        --bs-secondary-color: rgba(173, 181, 189, 0.75);
-        --bs-secondary-color-rgb: 173, 181, 189;
-        --bs-secondary-bg: #343a40;
-        --bs-secondary-bg-rgb: 52, 58, 64;
-        --bs-tertiary-color: rgba(173, 181, 189, 0.5);
-        --bs-tertiary-color-rgb: 173, 181, 189;
-        --bs-tertiary-bg: #2b3035;
-        --bs-tertiary-bg-rgb: 43, 48, 53;
-        --bs-primary-text-emphasis: #6ea8fe;
-        --bs-secondary-text-emphasis: #a7acb1;
-        --bs-success-text-emphasis: #75b798;
-        --bs-info-text-emphasis: #6edff6;
-        --bs-warning-text-emphasis: #ffda6a;
-        --bs-danger-text-emphasis: #ea868f;
-        --bs-light-text-emphasis: #f8f9fa;
-        --bs-dark-text-emphasis: #dee2e6;
-        --bs-primary-bg-subtle: #031633;
-        --bs-secondary-bg-subtle: #161719;
-        --bs-success-bg-subtle: #051b11;
-        --bs-info-bg-subtle: #032830;
-        --bs-warning-bg-subtle: #332701;
-        --bs-danger-bg-subtle: #2c0b0e;
-        --bs-light-bg-subtle: #343a40;
-        --bs-dark-bg-subtle: #1a1d20;
-        --bs-primary-border-subtle: #084298;
-        --bs-secondary-border-subtle: #41464b;
-        --bs-success-border-subtle: #0f5132;
-        --bs-info-border-subtle: #087990;
-        --bs-warning-border-subtle: #997404;
-        --bs-danger-border-subtle: #842029;
-        --bs-light-border-subtle: #495057;
-        --bs-dark-border-subtle: #343a40;
-        --bs-heading-color: inherit;
-        --bs-link-color: #6ea8fe;
-        --bs-link-hover-color: #8bb9fe;
-        --bs-link-color-rgb: 110, 168, 254;
-        --bs-link-hover-color-rgb: 139, 185, 254;
-        --bs-code-color: #e685b5;
-        --bs-border-color: #495057;
-        --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
-        --bs-form-valid-color: #75b798;
-        --bs-form-valid-border-color: #75b798;
-        --bs-form-invalid-color: #ea868f;
-        --bs-form-invalid-border-color: #ea868f;
-    }
-
-    *,
-    *::before,
-    *::after {
-        box-sizing: border-box;
-    }
-
-    @media (prefers-reduced-motion: no-preference) {
-        :root {
-            scroll-behavior: smooth;
-        }
-    }
-
-    body {
-        margin: 0;
-        font-family: var(--bs-body-font-family);
-        font-size: var(--bs-body-font-size);
-        font-weight: var(--bs-body-font-weight);
-        line-height: var(--bs-body-line-height);
-        color: var(--bs-body-color);
-        text-align: var(--bs-body-text-align);
-        background-color: var(--bs-body-bg);
-        -webkit-text-size-adjust: 100%;
-        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
-    }
-
-    hr {
-        margin: 1rem 0;
-        color: inherit;
-        border: 0;
-        border-top: var(--bs-border-width) solid;
-        opacity: 0.25;
-    }
-
-    h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
-        margin-top: 0;
-        margin-bottom: 0.5rem;
-        font-weight: 500;
-        line-height: 1.2;
-        color: var(--bs-heading-color);
-    }
-
-    h1, .h1 {
-        font-size: calc(1.375rem + 1.5vw);
-    }
-
-    @media (min-width: 1200px) {
-        h1, .h1 {
-            font-size: 2.5rem;
-        }
-    }
-
-    h2, .h2 {
-        font-size: calc(1.325rem + 0.9vw);
-    }
-
-    @media (min-width: 1200px) {
-        h2, .h2 {
-            font-size: 2rem;
-        }
-    }
-
-    h3, .h3 {
-        font-size: calc(1.3rem + 0.6vw);
-    }
-
-    @media (min-width: 1200px) {
-        h3, .h3 {
-            font-size: 1.75rem;
-        }
-    }
-
-    h4, .h4 {
-        font-size: calc(1.275rem + 0.3vw);
-    }
-
-    @media (min-width: 1200px) {
-        h4, .h4 {
-            font-size: 1.5rem;
-        }
-    }
-
-    h5, .h5 {
-        font-size: 1.25rem;
-    }
-
-    h6, .h6 {
-        font-size: 1rem;
-    }
-
-    p {
-        margin-top: 0;
-        margin-bottom: 1rem;
-    }
-
-    abbr[title] {
-        -webkit-text-decoration: underline dotted;
-        text-decoration: underline dotted;
-        cursor: help;
-        text-decoration-skip-ink: none;
-    }
-
-    address {
-        margin-bottom: 1rem;
-        font-style: normal;
-        line-height: inherit;
-    }
-
-    ol,
-    ul {
-        padding-left: 2rem;
-    }
-
-    ol,
-    ul,
-    dl {
-        margin-top: 0;
-        margin-bottom: 1rem;
-    }
-
-    ol ol,
-    ul ul,
-    ol ul,
-    ul ol {
-        margin-bottom: 0;
-    }
-
-    dt {
-        font-weight: 700;
-    }
-
-    dd {
-        margin-bottom: 0.5rem;
-        margin-left: 0;
-    }
-
-    blockquote {
-        margin: 0 0 1rem;
-    }
-
-    b,
-    strong {
-        font-weight: bolder;
-    }
-
-    small, .small {
-        font-size: 0.875em;
-    }
-
-    mark, .mark {
-        padding: 0.1875em;
-        background-color: var(--bs-highlight-bg);
-    }
-
-    sub,
-    sup {
-        position: relative;
-        font-size: 0.75em;
-        line-height: 0;
-        vertical-align: baseline;
-    }
-
-    sub {
-        bottom: -0.25em;
-    }
-
-    sup {
-        top: -0.5em;
-    }
-
-    a {
-        color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
-        text-decoration: underline;
-    }
-
-    a:hover {
-        --bs-link-color-rgb: var(--bs-link-hover-color-rgb);
-    }
-
-    a:not([href]):not([class]), a:not([href]):not([class]):hover {
-        color: inherit;
-        text-decoration: none;
-    }
-
-    pre,
-    code,
-    kbd,
-    samp {
-        font-family: var(--bs-font-monospace);
-        font-size: 1em;
-    }
-
-    pre {
-        display: block;
-        margin-top: 0;
-        margin-bottom: 1rem;
-        overflow: auto;
-        font-size: 0.875em;
-    }
-
-    pre code {
-        font-size: inherit;
-        color: inherit;
-        word-break: normal;
-    }
-
-    code {
-        font-size: 0.875em;
-        color: var(--bs-code-color);
-        word-wrap: break-word;
-    }
-
-    a > code {
-        color: inherit;
-    }
-
-    kbd {
-        padding: 0.1875rem 0.375rem;
-        font-size: 0.875em;
-        color: var(--bs-body-bg);
-        background-color: var(--bs-body-color);
-        border-radius: 0.25rem;
-    }
-
-    kbd kbd {
-        padding: 0;
-        font-size: 1em;
-    }
-
-    figure {
-        margin: 0 0 1rem;
-    }
-
-    img,
-    svg {
-        vertical-align: middle;
-    }
-
-    table {
-        caption-side: bottom;
-        border-collapse: collapse;
-    }
-
-    caption {
-        padding-top: 0.5rem;
-        padding-bottom: 0.5rem;
-        color: var(--bs-secondary-color);
-        text-align: left;
-    }
-
-    th {
-        text-align: inherit;
-        text-align: -webkit-match-parent;
-    }
-
-    thead,
-    tbody,
-    tfoot,
-    tr,
-    td,
-    th {
-        border-color: inherit;
-        border-style: solid;
-        border-width: 0;
-    }
-
-    label {
-        display: inline-block;
-    }
-
-    button {
-        border-radius: 0;
-    }
-
-    button:focus:not(:focus-visible) {
-        outline: 0;
-    }
-
-    input,
-    button,
-    select,
-    optgroup,
-    textarea {
-        margin: 0;
-        font-family: inherit;
-        font-size: inherit;
-        line-height: inherit;
-    }
-
-    button,
-    select {
-        text-transform: none;
-    }
-
-    [role=button] {
-        cursor: pointer;
-    }
-
-    select {
-        word-wrap: normal;
-    }
-
-    select:disabled {
-        opacity: 1;
-    }
-
-    [list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
-        display: none !important;
-    }
-
-    button,
-    [type=button],
-    [type=reset],
-    [type=submit] {
-        -webkit-appearance: button;
-    }
-
-    button:not(:disabled),
-    [type=button]:not(:disabled),
-    [type=reset]:not(:disabled),
-    [type=submit]:not(:disabled) {
-        cursor: pointer;
-    }
-
-    ::-moz-focus-inner {
-        padding: 0;
-        border-style: none;
-    }
-
-    textarea {
-        resize: vertical;
-    }
-
-    fieldset {
-        min-width: 0;
-        padding: 0;
-        margin: 0;
-        border: 0;
-    }
-
-    legend {
-        float: left;
-        width: 100%;
-        padding: 0;
-        margin-bottom: 0.5rem;
-        font-size: calc(1.275rem + 0.3vw);
-        line-height: inherit;
-    }
-
-    @media (min-width: 1200px) {
-        legend {
-            font-size: 1.5rem;
-        }
-    }
-
-    legend + * {
-        clear: left;
-    }
-
-    ::-webkit-datetime-edit-fields-wrapper,
-    ::-webkit-datetime-edit-text,
-    ::-webkit-datetime-edit-minute,
-    ::-webkit-datetime-edit-hour-field,
-    ::-webkit-datetime-edit-day-field,
-    ::-webkit-datetime-edit-month-field,
-    ::-webkit-datetime-edit-year-field {
-        padding: 0;
-    }
-
-    ::-webkit-inner-spin-button {
-        height: auto;
-    }
-
-    [type=search] {
-        outline-offset: -2px;
-        -webkit-appearance: textfield;
-    }
-
-    /* rtl:raw:
-[type="tel"],
-[type="url"],
-[type="email"],
-[type="number"] {
-  direction: ltr;
-}
-*/
-    ::-webkit-search-decoration {
-        -webkit-appearance: none;
-    }
-
-    ::-webkit-color-swatch-wrapper {
-        padding: 0;
-    }
-
-    ::file-selector-button {
-        font: inherit;
-        -webkit-appearance: button;
-    }
-
-    output {
-        display: inline-block;
-    }
-
-    iframe {
-        border: 0;
-    }
-
-    summary {
-        display: list-item;
-        cursor: pointer;
-    }
-
-    progress {
-        vertical-align: baseline;
-    }
-
-    [hidden] {
-        display: none !important;
-    }
-
-    .lead {
-        font-size: 1.25rem;
-        font-weight: 300;
-    }
-
-    .display-1 {
-        font-size: calc(1.625rem + 4.5vw);
-        font-weight: 300;
-        line-height: 1.2;
-    }
-
-    @media (min-width: 1200px) {
-        .display-1 {
-            font-size: 5rem;
-        }
-    }
-
-    .display-2 {
-        font-size: calc(1.575rem + 3.9vw);
-        font-weight: 300;
-        line-height: 1.2;
-    }
-
-    @media (min-width: 1200px) {
-        .display-2 {
-            font-size: 4.5rem;
-        }
-    }
-
-    .display-3 {
-        font-size: calc(1.525rem + 3.3vw);
-        font-weight: 300;
-        line-height: 1.2;
-    }
-
-    @media (min-width: 1200px) {
-        .display-3 {
-            font-size: 4rem;
-        }
-    }
-
-    .display-4 {
-        font-size: calc(1.475rem + 2.7vw);
-        font-weight: 300;
-        line-height: 1.2;
-    }
-
-    @media (min-width: 1200px) {
-        .display-4 {
-            font-size: 3.5rem;
-        }
-    }
-
-    .display-5 {
-        font-size: calc(1.425rem + 2.1vw);
-        font-weight: 300;
-        line-height: 1.2;
-    }
-
-    @media (min-width: 1200px) {
-        .display-5 {
-            font-size: 3rem;
-        }
-    }
-
-    .display-6 {
-        font-size: calc(1.375rem + 1.5vw);
-        font-weight: 300;
-        line-height: 1.2;
-    }
-
-    @media (min-width: 1200px) {
-        .display-6 {
-            font-size: 2.5rem;
-        }
-    }
-
-    .list-unstyled {
-        padding-left: 0;
-        list-style: none;
-    }
-
-    .list-inline {
-        padding-left: 0;
-        list-style: none;
-    }
-
-    .list-inline-item {
-        display: inline-block;
-    }
-
-    .list-inline-item:not(:last-child) {
-        margin-right: 0.5rem;
-    }
-
-    .initialism {
-        font-size: 0.875em;
-        text-transform: uppercase;
-    }
-
-    .blockquote {
-        margin-bottom: 1rem;
-        font-size: 1.25rem;
-    }
-
-    .blockquote > :last-child {
-        margin-bottom: 0;
-    }
-
-    .blockquote-footer {
-        margin-top: -1rem;
-        margin-bottom: 1rem;
-        font-size: 0.875em;
-        color: #6c757d;
-    }
-
-    .blockquote-footer::before {
-        content: "— ";
-    }
-
-    .img-fluid {
-        max-width: 100%;
-        height: auto;
-    }
-
-    .img-thumbnail {
-        padding: 0.25rem;
-        background-color: var(--bs-body-bg);
-        border: var(--bs-border-width) solid var(--bs-border-color);
-        border-radius: var(--bs-border-radius);
-        max-width: 100%;
-        height: auto;
-    }
-
-    .figure {
-        display: inline-block;
-    }
-
-    .figure-img {
-        margin-bottom: 0.5rem;
-        line-height: 1;
-    }
-
-    .figure-caption {
-        font-size: 0.875em;
-        color: var(--bs-secondary-color);
-    }
-
-    .container,
-    .container-fluid,
-    .container-xxl,
-    .container-xl,
-    .container-lg,
-    .container-md,
-    .container-sm {
-        --bs-gutter-x: 1.5rem;
-        --bs-gutter-y: 0;
-        width: 100%;
-        padding-right: calc(var(--bs-gutter-x) * 0.5);
-        padding-left: calc(var(--bs-gutter-x) * 0.5);
-        margin-right: auto;
-        margin-left: auto;
-    }
-
-    @media (min-width: 576px) {
-        .container-sm, .container {
-            max-width: 540px;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .container-md, .container-sm, .container {
-            max-width: 720px;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .container-lg, .container-md, .container-sm, .container {
-            max-width: 960px;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .container-xl, .container-lg, .container-md, .container-sm, .container {
-            max-width: 1140px;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
-            max-width: 1320px;
-        }
-    }
-
-    :root {
-        --bs-breakpoint-xs: 0;
-        --bs-breakpoint-sm: 576px;
-        --bs-breakpoint-md: 768px;
-        --bs-breakpoint-lg: 992px;
-        --bs-breakpoint-xl: 1200px;
-        --bs-breakpoint-xxl: 1400px;
-    }
-
-    .row {
-        --bs-gutter-x: 1.5rem;
-        --bs-gutter-y: 0;
-        display: flex;
-        flex-wrap: wrap;
-        margin-top: calc(-1 * var(--bs-gutter-y));
-        margin-right: calc(-0.5 * var(--bs-gutter-x));
-        margin-left: calc(-0.5 * var(--bs-gutter-x));
-    }
-
-    .row > * {
-        flex-shrink: 0;
-        width: 100%;
-        max-width: 100%;
-        padding-right: calc(var(--bs-gutter-x) * 0.5);
-        padding-left: calc(var(--bs-gutter-x) * 0.5);
-        margin-top: var(--bs-gutter-y);
-    }
-
-    .col {
-        flex: 1 0;
-    }
-
-    .row-cols-auto > * {
-        flex: 0 0 auto;
-        width: auto;
-    }
-
-    .row-cols-1 > * {
-        flex: 0 0 auto;
-        width: 100%;
-    }
-
-    .row-cols-2 > * {
-        flex: 0 0 auto;
-        width: 50%;
-    }
-
-    .row-cols-3 > * {
-        flex: 0 0 auto;
-        width: 33.3333333333%;
-    }
-
-    .row-cols-4 > * {
-        flex: 0 0 auto;
-        width: 25%;
-    }
-
-    .row-cols-5 > * {
-        flex: 0 0 auto;
-        width: 20%;
-    }
-
-    .row-cols-6 > * {
-        flex: 0 0 auto;
-        width: 16.6666666667%;
-    }
-
-    .col-auto {
-        flex: 0 0 auto;
-        width: auto;
-    }
-
-    .col-1 {
-        flex: 0 0 auto;
-        width: 8.33333333%;
-    }
-
-    .col-2 {
-        flex: 0 0 auto;
-        width: 16.66666667%;
-    }
-
-    .col-3 {
-        flex: 0 0 auto;
-        width: 25%;
-    }
-
-    .col-4 {
-        flex: 0 0 auto;
-        width: 33.33333333%;
-    }
-
-    .col-5 {
-        flex: 0 0 auto;
-        width: 41.66666667%;
-    }
-
-    .col-6 {
-        flex: 0 0 auto;
-        width: 50%;
-    }
-
-    .col-7 {
-        flex: 0 0 auto;
-        width: 58.33333333%;
-    }
-
-    .col-8 {
-        flex: 0 0 auto;
-        width: 66.66666667%;
-    }
-
-    .col-9 {
-        flex: 0 0 auto;
-        width: 75%;
-    }
-
-    .col-10 {
-        flex: 0 0 auto;
-        width: 83.33333333%;
-    }
-
-    .col-11 {
-        flex: 0 0 auto;
-        width: 91.66666667%;
-    }
-
-    .col-12 {
-        flex: 0 0 auto;
-        width: 100%;
-    }
-
-    .offset-1 {
-        margin-left: 8.33333333%;
-    }
-
-    .offset-2 {
-        margin-left: 16.66666667%;
-    }
-
-    .offset-3 {
-        margin-left: 25%;
-    }
-
-    .offset-4 {
-        margin-left: 33.33333333%;
-    }
-
-    .offset-5 {
-        margin-left: 41.66666667%;
-    }
-
-    .offset-6 {
-        margin-left: 50%;
-    }
-
-    .offset-7 {
-        margin-left: 58.33333333%;
-    }
-
-    .offset-8 {
-        margin-left: 66.66666667%;
-    }
-
-    .offset-9 {
-        margin-left: 75%;
-    }
-
-    .offset-10 {
-        margin-left: 83.33333333%;
-    }
-
-    .offset-11 {
-        margin-left: 91.66666667%;
-    }
-
-    .g-0,
-    .gx-0 {
-        --bs-gutter-x: 0;
-    }
-
-    .g-0,
-    .gy-0 {
-        --bs-gutter-y: 0;
-    }
-
-    .g-1,
-    .gx-1 {
-        --bs-gutter-x: 0.25rem;
-    }
-
-    .g-1,
-    .gy-1 {
-        --bs-gutter-y: 0.25rem;
-    }
-
-    .g-2,
-    .gx-2 {
-        --bs-gutter-x: 0.5rem;
-    }
-
-    .g-2,
-    .gy-2 {
-        --bs-gutter-y: 0.5rem;
-    }
-
-    .g-3,
-    .gx-3 {
-        --bs-gutter-x: 1rem;
-    }
-
-    .g-3,
-    .gy-3 {
-        --bs-gutter-y: 1rem;
-    }
-
-    .g-4,
-    .gx-4 {
-        --bs-gutter-x: 1.5rem;
-    }
-
-    .g-4,
-    .gy-4 {
-        --bs-gutter-y: 1.5rem;
-    }
-
-    .g-5,
-    .gx-5 {
-        --bs-gutter-x: 3rem;
-    }
-
-    .g-5,
-    .gy-5 {
-        --bs-gutter-y: 3rem;
-    }
-
-    @media (min-width: 576px) {
-        .col-sm {
-            flex: 1 0;
-        }
-
-        .row-cols-sm-auto > * {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .row-cols-sm-1 > * {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .row-cols-sm-2 > * {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .row-cols-sm-3 > * {
-            flex: 0 0 auto;
-            width: 33.3333333333%;
-        }
-
-        .row-cols-sm-4 > * {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .row-cols-sm-5 > * {
-            flex: 0 0 auto;
-            width: 20%;
-        }
-
-        .row-cols-sm-6 > * {
-            flex: 0 0 auto;
-            width: 16.6666666667%;
-        }
-
-        .col-sm-auto {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .col-sm-1 {
-            flex: 0 0 auto;
-            width: 8.33333333%;
-        }
-
-        .col-sm-2 {
-            flex: 0 0 auto;
-            width: 16.66666667%;
-        }
-
-        .col-sm-3 {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .col-sm-4 {
-            flex: 0 0 auto;
-            width: 33.33333333%;
-        }
-
-        .col-sm-5 {
-            flex: 0 0 auto;
-            width: 41.66666667%;
-        }
-
-        .col-sm-6 {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .col-sm-7 {
-            flex: 0 0 auto;
-            width: 58.33333333%;
-        }
-
-        .col-sm-8 {
-            flex: 0 0 auto;
-            width: 66.66666667%;
-        }
-
-        .col-sm-9 {
-            flex: 0 0 auto;
-            width: 75%;
-        }
-
-        .col-sm-10 {
-            flex: 0 0 auto;
-            width: 83.33333333%;
-        }
-
-        .col-sm-11 {
-            flex: 0 0 auto;
-            width: 91.66666667%;
-        }
-
-        .col-sm-12 {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .offset-sm-0 {
-            margin-left: 0;
-        }
-
-        .offset-sm-1 {
-            margin-left: 8.33333333%;
-        }
-
-        .offset-sm-2 {
-            margin-left: 16.66666667%;
-        }
-
-        .offset-sm-3 {
-            margin-left: 25%;
-        }
-
-        .offset-sm-4 {
-            margin-left: 33.33333333%;
-        }
-
-        .offset-sm-5 {
-            margin-left: 41.66666667%;
-        }
-
-        .offset-sm-6 {
-            margin-left: 50%;
-        }
-
-        .offset-sm-7 {
-            margin-left: 58.33333333%;
-        }
-
-        .offset-sm-8 {
-            margin-left: 66.66666667%;
-        }
-
-        .offset-sm-9 {
-            margin-left: 75%;
-        }
-
-        .offset-sm-10 {
-            margin-left: 83.33333333%;
-        }
-
-        .offset-sm-11 {
-            margin-left: 91.66666667%;
-        }
-
-        .g-sm-0,
-        .gx-sm-0 {
-            --bs-gutter-x: 0;
-        }
-
-        .g-sm-0,
-        .gy-sm-0 {
-            --bs-gutter-y: 0;
-        }
-
-        .g-sm-1,
-        .gx-sm-1 {
-            --bs-gutter-x: 0.25rem;
-        }
-
-        .g-sm-1,
-        .gy-sm-1 {
-            --bs-gutter-y: 0.25rem;
-        }
-
-        .g-sm-2,
-        .gx-sm-2 {
-            --bs-gutter-x: 0.5rem;
-        }
-
-        .g-sm-2,
-        .gy-sm-2 {
-            --bs-gutter-y: 0.5rem;
-        }
-
-        .g-sm-3,
-        .gx-sm-3 {
-            --bs-gutter-x: 1rem;
-        }
-
-        .g-sm-3,
-        .gy-sm-3 {
-            --bs-gutter-y: 1rem;
-        }
-
-        .g-sm-4,
-        .gx-sm-4 {
-            --bs-gutter-x: 1.5rem;
-        }
-
-        .g-sm-4,
-        .gy-sm-4 {
-            --bs-gutter-y: 1.5rem;
-        }
-
-        .g-sm-5,
-        .gx-sm-5 {
-            --bs-gutter-x: 3rem;
-        }
-
-        .g-sm-5,
-        .gy-sm-5 {
-            --bs-gutter-y: 3rem;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .col-md {
-            flex: 1 0;
-        }
-
-        .row-cols-md-auto > * {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .row-cols-md-1 > * {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .row-cols-md-2 > * {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .row-cols-md-3 > * {
-            flex: 0 0 auto;
-            width: 33.3333333333%;
-        }
-
-        .row-cols-md-4 > * {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .row-cols-md-5 > * {
-            flex: 0 0 auto;
-            width: 20%;
-        }
-
-        .row-cols-md-6 > * {
-            flex: 0 0 auto;
-            width: 16.6666666667%;
-        }
-
-        .col-md-auto {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .col-md-1 {
-            flex: 0 0 auto;
-            width: 8.33333333%;
-        }
-
-        .col-md-2 {
-            flex: 0 0 auto;
-            width: 16.66666667%;
-        }
-
-        .col-md-3 {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .col-md-4 {
-            flex: 0 0 auto;
-            width: 33.33333333%;
-        }
-
-        .col-md-5 {
-            flex: 0 0 auto;
-            width: 41.66666667%;
-        }
-
-        .col-md-6 {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .col-md-7 {
-            flex: 0 0 auto;
-            width: 58.33333333%;
-        }
-
-        .col-md-8 {
-            flex: 0 0 auto;
-            width: 66.66666667%;
-        }
-
-        .col-md-9 {
-            flex: 0 0 auto;
-            width: 75%;
-        }
-
-        .col-md-10 {
-            flex: 0 0 auto;
-            width: 83.33333333%;
-        }
-
-        .col-md-11 {
-            flex: 0 0 auto;
-            width: 91.66666667%;
-        }
-
-        .col-md-12 {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .offset-md-0 {
-            margin-left: 0;
-        }
-
-        .offset-md-1 {
-            margin-left: 8.33333333%;
-        }
-
-        .offset-md-2 {
-            margin-left: 16.66666667%;
-        }
-
-        .offset-md-3 {
-            margin-left: 25%;
-        }
-
-        .offset-md-4 {
-            margin-left: 33.33333333%;
-        }
-
-        .offset-md-5 {
-            margin-left: 41.66666667%;
-        }
-
-        .offset-md-6 {
-            margin-left: 50%;
-        }
-
-        .offset-md-7 {
-            margin-left: 58.33333333%;
-        }
-
-        .offset-md-8 {
-            margin-left: 66.66666667%;
-        }
-
-        .offset-md-9 {
-            margin-left: 75%;
-        }
-
-        .offset-md-10 {
-            margin-left: 83.33333333%;
-        }
-
-        .offset-md-11 {
-            margin-left: 91.66666667%;
-        }
-
-        .g-md-0,
-        .gx-md-0 {
-            --bs-gutter-x: 0;
-        }
-
-        .g-md-0,
-        .gy-md-0 {
-            --bs-gutter-y: 0;
-        }
-
-        .g-md-1,
-        .gx-md-1 {
-            --bs-gutter-x: 0.25rem;
-        }
-
-        .g-md-1,
-        .gy-md-1 {
-            --bs-gutter-y: 0.25rem;
-        }
-
-        .g-md-2,
-        .gx-md-2 {
-            --bs-gutter-x: 0.5rem;
-        }
-
-        .g-md-2,
-        .gy-md-2 {
-            --bs-gutter-y: 0.5rem;
-        }
-
-        .g-md-3,
-        .gx-md-3 {
-            --bs-gutter-x: 1rem;
-        }
-
-        .g-md-3,
-        .gy-md-3 {
-            --bs-gutter-y: 1rem;
-        }
-
-        .g-md-4,
-        .gx-md-4 {
-            --bs-gutter-x: 1.5rem;
-        }
-
-        .g-md-4,
-        .gy-md-4 {
-            --bs-gutter-y: 1.5rem;
-        }
-
-        .g-md-5,
-        .gx-md-5 {
-            --bs-gutter-x: 3rem;
-        }
-
-        .g-md-5,
-        .gy-md-5 {
-            --bs-gutter-y: 3rem;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .col-lg {
-            flex: 1 0;
-        }
-
-        .row-cols-lg-auto > * {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .row-cols-lg-1 > * {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .row-cols-lg-2 > * {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .row-cols-lg-3 > * {
-            flex: 0 0 auto;
-            width: 33.3333333333%;
-        }
-
-        .row-cols-lg-4 > * {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .row-cols-lg-5 > * {
-            flex: 0 0 auto;
-            width: 20%;
-        }
-
-        .row-cols-lg-6 > * {
-            flex: 0 0 auto;
-            width: 16.6666666667%;
-        }
-
-        .col-lg-auto {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .col-lg-1 {
-            flex: 0 0 auto;
-            width: 8.33333333%;
-        }
-
-        .col-lg-2 {
-            flex: 0 0 auto;
-            width: 16.66666667%;
-        }
-
-        .col-lg-3 {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .col-lg-4 {
-            flex: 0 0 auto;
-            width: 33.33333333%;
-        }
-
-        .col-lg-5 {
-            flex: 0 0 auto;
-            width: 41.66666667%;
-        }
-
-        .col-lg-6 {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .col-lg-7 {
-            flex: 0 0 auto;
-            width: 58.33333333%;
-        }
-
-        .col-lg-8 {
-            flex: 0 0 auto;
-            width: 66.66666667%;
-        }
-
-        .col-lg-9 {
-            flex: 0 0 auto;
-            width: 75%;
-        }
-
-        .col-lg-10 {
-            flex: 0 0 auto;
-            width: 83.33333333%;
-        }
-
-        .col-lg-11 {
-            flex: 0 0 auto;
-            width: 91.66666667%;
-        }
-
-        .col-lg-12 {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .offset-lg-0 {
-            margin-left: 0;
-        }
-
-        .offset-lg-1 {
-            margin-left: 8.33333333%;
-        }
-
-        .offset-lg-2 {
-            margin-left: 16.66666667%;
-        }
-
-        .offset-lg-3 {
-            margin-left: 25%;
-        }
-
-        .offset-lg-4 {
-            margin-left: 33.33333333%;
-        }
-
-        .offset-lg-5 {
-            margin-left: 41.66666667%;
-        }
-
-        .offset-lg-6 {
-            margin-left: 50%;
-        }
-
-        .offset-lg-7 {
-            margin-left: 58.33333333%;
-        }
-
-        .offset-lg-8 {
-            margin-left: 66.66666667%;
-        }
-
-        .offset-lg-9 {
-            margin-left: 75%;
-        }
-
-        .offset-lg-10 {
-            margin-left: 83.33333333%;
-        }
-
-        .offset-lg-11 {
-            margin-left: 91.66666667%;
-        }
-
-        .g-lg-0,
-        .gx-lg-0 {
-            --bs-gutter-x: 0;
-        }
-
-        .g-lg-0,
-        .gy-lg-0 {
-            --bs-gutter-y: 0;
-        }
-
-        .g-lg-1,
-        .gx-lg-1 {
-            --bs-gutter-x: 0.25rem;
-        }
-
-        .g-lg-1,
-        .gy-lg-1 {
-            --bs-gutter-y: 0.25rem;
-        }
-
-        .g-lg-2,
-        .gx-lg-2 {
-            --bs-gutter-x: 0.5rem;
-        }
-
-        .g-lg-2,
-        .gy-lg-2 {
-            --bs-gutter-y: 0.5rem;
-        }
-
-        .g-lg-3,
-        .gx-lg-3 {
-            --bs-gutter-x: 1rem;
-        }
-
-        .g-lg-3,
-        .gy-lg-3 {
-            --bs-gutter-y: 1rem;
-        }
-
-        .g-lg-4,
-        .gx-lg-4 {
-            --bs-gutter-x: 1.5rem;
-        }
-
-        .g-lg-4,
-        .gy-lg-4 {
-            --bs-gutter-y: 1.5rem;
-        }
-
-        .g-lg-5,
-        .gx-lg-5 {
-            --bs-gutter-x: 3rem;
-        }
-
-        .g-lg-5,
-        .gy-lg-5 {
-            --bs-gutter-y: 3rem;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .col-xl {
-            flex: 1 0;
-        }
-
-        .row-cols-xl-auto > * {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .row-cols-xl-1 > * {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .row-cols-xl-2 > * {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .row-cols-xl-3 > * {
-            flex: 0 0 auto;
-            width: 33.3333333333%;
-        }
-
-        .row-cols-xl-4 > * {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .row-cols-xl-5 > * {
-            flex: 0 0 auto;
-            width: 20%;
-        }
-
-        .row-cols-xl-6 > * {
-            flex: 0 0 auto;
-            width: 16.6666666667%;
-        }
-
-        .col-xl-auto {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .col-xl-1 {
-            flex: 0 0 auto;
-            width: 8.33333333%;
-        }
-
-        .col-xl-2 {
-            flex: 0 0 auto;
-            width: 16.66666667%;
-        }
-
-        .col-xl-3 {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .col-xl-4 {
-            flex: 0 0 auto;
-            width: 33.33333333%;
-        }
-
-        .col-xl-5 {
-            flex: 0 0 auto;
-            width: 41.66666667%;
-        }
-
-        .col-xl-6 {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .col-xl-7 {
-            flex: 0 0 auto;
-            width: 58.33333333%;
-        }
-
-        .col-xl-8 {
-            flex: 0 0 auto;
-            width: 66.66666667%;
-        }
-
-        .col-xl-9 {
-            flex: 0 0 auto;
-            width: 75%;
-        }
-
-        .col-xl-10 {
-            flex: 0 0 auto;
-            width: 83.33333333%;
-        }
-
-        .col-xl-11 {
-            flex: 0 0 auto;
-            width: 91.66666667%;
-        }
-
-        .col-xl-12 {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .offset-xl-0 {
-            margin-left: 0;
-        }
-
-        .offset-xl-1 {
-            margin-left: 8.33333333%;
-        }
-
-        .offset-xl-2 {
-            margin-left: 16.66666667%;
-        }
-
-        .offset-xl-3 {
-            margin-left: 25%;
-        }
-
-        .offset-xl-4 {
-            margin-left: 33.33333333%;
-        }
-
-        .offset-xl-5 {
-            margin-left: 41.66666667%;
-        }
-
-        .offset-xl-6 {
-            margin-left: 50%;
-        }
-
-        .offset-xl-7 {
-            margin-left: 58.33333333%;
-        }
-
-        .offset-xl-8 {
-            margin-left: 66.66666667%;
-        }
-
-        .offset-xl-9 {
-            margin-left: 75%;
-        }
-
-        .offset-xl-10 {
-            margin-left: 83.33333333%;
-        }
-
-        .offset-xl-11 {
-            margin-left: 91.66666667%;
-        }
-
-        .g-xl-0,
-        .gx-xl-0 {
-            --bs-gutter-x: 0;
-        }
-
-        .g-xl-0,
-        .gy-xl-0 {
-            --bs-gutter-y: 0;
-        }
-
-        .g-xl-1,
-        .gx-xl-1 {
-            --bs-gutter-x: 0.25rem;
-        }
-
-        .g-xl-1,
-        .gy-xl-1 {
-            --bs-gutter-y: 0.25rem;
-        }
-
-        .g-xl-2,
-        .gx-xl-2 {
-            --bs-gutter-x: 0.5rem;
-        }
-
-        .g-xl-2,
-        .gy-xl-2 {
-            --bs-gutter-y: 0.5rem;
-        }
-
-        .g-xl-3,
-        .gx-xl-3 {
-            --bs-gutter-x: 1rem;
-        }
-
-        .g-xl-3,
-        .gy-xl-3 {
-            --bs-gutter-y: 1rem;
-        }
-
-        .g-xl-4,
-        .gx-xl-4 {
-            --bs-gutter-x: 1.5rem;
-        }
-
-        .g-xl-4,
-        .gy-xl-4 {
-            --bs-gutter-y: 1.5rem;
-        }
-
-        .g-xl-5,
-        .gx-xl-5 {
-            --bs-gutter-x: 3rem;
-        }
-
-        .g-xl-5,
-        .gy-xl-5 {
-            --bs-gutter-y: 3rem;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .col-xxl {
-            flex: 1 0;
-        }
-
-        .row-cols-xxl-auto > * {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .row-cols-xxl-1 > * {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .row-cols-xxl-2 > * {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .row-cols-xxl-3 > * {
-            flex: 0 0 auto;
-            width: 33.3333333333%;
-        }
-
-        .row-cols-xxl-4 > * {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .row-cols-xxl-5 > * {
-            flex: 0 0 auto;
-            width: 20%;
-        }
-
-        .row-cols-xxl-6 > * {
-            flex: 0 0 auto;
-            width: 16.6666666667%;
-        }
-
-        .col-xxl-auto {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .col-xxl-1 {
-            flex: 0 0 auto;
-            width: 8.33333333%;
-        }
-
-        .col-xxl-2 {
-            flex: 0 0 auto;
-            width: 16.66666667%;
-        }
-
-        .col-xxl-3 {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .col-xxl-4 {
-            flex: 0 0 auto;
-            width: 33.33333333%;
-        }
-
-        .col-xxl-5 {
-            flex: 0 0 auto;
-            width: 41.66666667%;
-        }
-
-        .col-xxl-6 {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .col-xxl-7 {
-            flex: 0 0 auto;
-            width: 58.33333333%;
-        }
-
-        .col-xxl-8 {
-            flex: 0 0 auto;
-            width: 66.66666667%;
-        }
-
-        .col-xxl-9 {
-            flex: 0 0 auto;
-            width: 75%;
-        }
-
-        .col-xxl-10 {
-            flex: 0 0 auto;
-            width: 83.33333333%;
-        }
-
-        .col-xxl-11 {
-            flex: 0 0 auto;
-            width: 91.66666667%;
-        }
-
-        .col-xxl-12 {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .offset-xxl-0 {
-            margin-left: 0;
-        }
-
-        .offset-xxl-1 {
-            margin-left: 8.33333333%;
-        }
-
-        .offset-xxl-2 {
-            margin-left: 16.66666667%;
-        }
-
-        .offset-xxl-3 {
-            margin-left: 25%;
-        }
-
-        .offset-xxl-4 {
-            margin-left: 33.33333333%;
-        }
-
-        .offset-xxl-5 {
-            margin-left: 41.66666667%;
-        }
-
-        .offset-xxl-6 {
-            margin-left: 50%;
-        }
-
-        .offset-xxl-7 {
-            margin-left: 58.33333333%;
-        }
-
-        .offset-xxl-8 {
-            margin-left: 66.66666667%;
-        }
-
-        .offset-xxl-9 {
-            margin-left: 75%;
-        }
-
-        .offset-xxl-10 {
-            margin-left: 83.33333333%;
-        }
-
-        .offset-xxl-11 {
-            margin-left: 91.66666667%;
-        }
-
-        .g-xxl-0,
-        .gx-xxl-0 {
-            --bs-gutter-x: 0;
-        }
-
-        .g-xxl-0,
-        .gy-xxl-0 {
-            --bs-gutter-y: 0;
-        }
-
-        .g-xxl-1,
-        .gx-xxl-1 {
-            --bs-gutter-x: 0.25rem;
-        }
-
-        .g-xxl-1,
-        .gy-xxl-1 {
-            --bs-gutter-y: 0.25rem;
-        }
-
-        .g-xxl-2,
-        .gx-xxl-2 {
-            --bs-gutter-x: 0.5rem;
-        }
-
-        .g-xxl-2,
-        .gy-xxl-2 {
-            --bs-gutter-y: 0.5rem;
-        }
-
-        .g-xxl-3,
-        .gx-xxl-3 {
-            --bs-gutter-x: 1rem;
-        }
-
-        .g-xxl-3,
-        .gy-xxl-3 {
-            --bs-gutter-y: 1rem;
-        }
-
-        .g-xxl-4,
-        .gx-xxl-4 {
-            --bs-gutter-x: 1.5rem;
-        }
-
-        .g-xxl-4,
-        .gy-xxl-4 {
-            --bs-gutter-y: 1.5rem;
-        }
-
-        .g-xxl-5,
-        .gx-xxl-5 {
-            --bs-gutter-x: 3rem;
-        }
-
-        .g-xxl-5,
-        .gy-xxl-5 {
-            --bs-gutter-y: 3rem;
-        }
-    }
-
-    .table {
-        --bs-table-color-type: initial;
-        --bs-table-bg-type: initial;
-        --bs-table-color-state: initial;
-        --bs-table-bg-state: initial;
-        --bs-table-color: var(--bs-body-color);
-        --bs-table-bg: var(--bs-body-bg);
-        --bs-table-border-color: var(--bs-border-color);
-        --bs-table-accent-bg: transparent;
-        --bs-table-striped-color: var(--bs-body-color);
-        --bs-table-striped-bg: rgba(0, 0, 0, 0.05);
-        --bs-table-active-color: var(--bs-body-color);
-        --bs-table-active-bg: rgba(0, 0, 0, 0.1);
-        --bs-table-hover-color: var(--bs-body-color);
-        --bs-table-hover-bg: rgba(0, 0, 0, 0.075);
-        width: 100%;
-        margin-bottom: 1rem;
-        vertical-align: top;
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table > :not(caption) > * > * {
-        padding: 0.5rem 0.5rem;
-        color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));
-        background-color: var(--bs-table-bg);
-        border-bottom-width: var(--bs-border-width);
-        box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));
-    }
-
-    .table > tbody {
-        vertical-align: inherit;
-    }
-
-    .table > thead {
-        vertical-align: bottom;
-    }
-
-    .table-group-divider {
-        border-top: calc(var(--bs-border-width) * 2) solid currentcolor;
-    }
-
-    .caption-top {
-        caption-side: top;
-    }
-
-    .table-sm > :not(caption) > * > * {
-        padding: 0.25rem 0.25rem;
-    }
-
-    .table-bordered > :not(caption) > * {
-        border-width: var(--bs-border-width) 0;
-    }
-
-    .table-bordered > :not(caption) > * > * {
-        border-width: 0 var(--bs-border-width);
-    }
-
-    .table-borderless > :not(caption) > * > * {
-        border-bottom-width: 0;
-    }
-
-    .table-borderless > :not(:first-child) {
-        border-top-width: 0;
-    }
-
-    .table-striped > tbody > tr:nth-of-type(odd) > * {
-        --bs-table-color-type: var(--bs-table-striped-color);
-        --bs-table-bg-type: var(--bs-table-striped-bg);
-    }
-
-    .table-striped-columns > :not(caption) > tr > :nth-child(even) {
-        --bs-table-color-type: var(--bs-table-striped-color);
-        --bs-table-bg-type: var(--bs-table-striped-bg);
-    }
-
-    .table-active {
-        --bs-table-color-state: var(--bs-table-active-color);
-        --bs-table-bg-state: var(--bs-table-active-bg);
-    }
-
-    .table-hover > tbody > tr:hover > * {
-        --bs-table-color-state: var(--bs-table-hover-color);
-        --bs-table-bg-state: var(--bs-table-hover-bg);
-    }
-
-    .table-primary {
-        --bs-table-color: #000;
-        --bs-table-bg: #cfe2ff;
-        --bs-table-border-color: #bacbe6;
-        --bs-table-striped-bg: #c5d7f2;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #bacbe6;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #bfd1ec;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-secondary {
-        --bs-table-color: #000;
-        --bs-table-bg: #e2e3e5;
-        --bs-table-border-color: #cbccce;
-        --bs-table-striped-bg: #d7d8da;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #cbccce;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #d1d2d4;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-success {
-        --bs-table-color: #000;
-        --bs-table-bg: #d1e7dd;
-        --bs-table-border-color: #bcd0c7;
-        --bs-table-striped-bg: #c7dbd2;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #bcd0c7;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #c1d6cc;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-info {
-        --bs-table-color: #000;
-        --bs-table-bg: #cff4fc;
-        --bs-table-border-color: #badce3;
-        --bs-table-striped-bg: #c5e8ef;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #badce3;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #bfe2e9;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-warning {
-        --bs-table-color: #000;
-        --bs-table-bg: #fff3cd;
-        --bs-table-border-color: #e6dbb9;
-        --bs-table-striped-bg: #f2e7c3;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #e6dbb9;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #ece1be;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-danger {
-        --bs-table-color: #000;
-        --bs-table-bg: #f8d7da;
-        --bs-table-border-color: #dfc2c4;
-        --bs-table-striped-bg: #eccccf;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #dfc2c4;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #e5c7ca;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-light {
-        --bs-table-color: #000;
-        --bs-table-bg: #f8f9fa;
-        --bs-table-border-color: #dfe0e1;
-        --bs-table-striped-bg: #ecedee;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #dfe0e1;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #e5e6e7;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-dark {
-        --bs-table-color: #fff;
-        --bs-table-bg: #212529;
-        --bs-table-border-color: #373b3e;
-        --bs-table-striped-bg: #2c3034;
-        --bs-table-striped-color: #fff;
-        --bs-table-active-bg: #373b3e;
-        --bs-table-active-color: #fff;
-        --bs-table-hover-bg: #323539;
-        --bs-table-hover-color: #fff;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-responsive {
-        overflow-x: auto;
-        -webkit-overflow-scrolling: touch;
-    }
-
-    @media (max-width: 575.98px) {
-        .table-responsive-sm {
-            overflow-x: auto;
-            -webkit-overflow-scrolling: touch;
-        }
-    }
-
-    @media (max-width: 767.98px) {
-        .table-responsive-md {
-            overflow-x: auto;
-            -webkit-overflow-scrolling: touch;
-        }
-    }
-
-    @media (max-width: 991.98px) {
-        .table-responsive-lg {
-            overflow-x: auto;
-            -webkit-overflow-scrolling: touch;
-        }
-    }
-
-    @media (max-width: 1199.98px) {
-        .table-responsive-xl {
-            overflow-x: auto;
-            -webkit-overflow-scrolling: touch;
-        }
-    }
-
-    @media (max-width: 1399.98px) {
-        .table-responsive-xxl {
-            overflow-x: auto;
-            -webkit-overflow-scrolling: touch;
-        }
-    }
-
-    .form-label {
-        margin-bottom: 0.5rem;
-    }
-
-    .col-form-label {
-        padding-top: calc(0.375rem + var(--bs-border-width));
-        padding-bottom: calc(0.375rem + var(--bs-border-width));
-        margin-bottom: 0;
-        font-size: inherit;
-        line-height: 1.5;
-    }
-
-    .col-form-label-lg {
-        padding-top: calc(0.5rem + var(--bs-border-width));
-        padding-bottom: calc(0.5rem + var(--bs-border-width));
-        font-size: 1.25rem;
-    }
-
-    .col-form-label-sm {
-        padding-top: calc(0.25rem + var(--bs-border-width));
-        padding-bottom: calc(0.25rem + var(--bs-border-width));
-        font-size: 0.875rem;
-    }
-
-    .form-text {
-        margin-top: 0.25rem;
-        font-size: 0.875em;
-        color: var(--bs-secondary-color);
-    }
-
-    .form-control {
-        display: block;
-        width: 100%;
-        padding: 0.375rem 0.75rem;
-        font-size: 1rem;
-        font-weight: 400;
-        line-height: 1.5;
-        color: var(--bs-body-color);
-        background-color: var(--bs-body-bg);
-        background-clip: padding-box;
-        border: var(--bs-border-width) solid var(--bs-border-color);
-        appearance: none;
-        border-radius: var(--bs-border-radius);
-        transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-control {
-            transition: none;
-        }
-    }
-
-    .form-control[type=file] {
-        overflow: hidden;
-    }
-
-    .form-control[type=file]:not(:disabled):not([readonly]) {
-        cursor: pointer;
-    }
-
-    .form-control:focus {
-        color: var(--bs-body-color);
-        background-color: var(--bs-body-bg);
-        border-color: #86b7fe;
-        outline: 0;
-        box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-    }
-
-    .form-control::-webkit-date-and-time-value {
-        min-width: 85px;
-        height: 1.5em;
-        margin: 0;
-    }
-
-    .form-control::-webkit-datetime-edit {
-        display: block;
-        padding: 0;
-    }
-
-    .form-control::placeholder {
-        color: var(--bs-secondary-color);
-        opacity: 1;
-    }
-
-    .form-control:disabled {
-        background-color: var(--bs-secondary-bg);
-        opacity: 1;
-    }
-
-    .form-control::file-selector-button {
-        padding: 0.375rem 0.75rem;
-        margin: -0.375rem -0.75rem;
-        margin-inline-end: 0.75rem;
-        color: var(--bs-body-color);
-        background-color: var(--bs-tertiary-bg);
-        pointer-events: none;
-        border-color: inherit;
-        border-style: solid;
-        border-width: 0;
-        border-inline-end-width: var(--bs-border-width);
-        border-radius: 0;
-        transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-control::file-selector-button {
-            transition: none;
-        }
-    }
-
-    .form-control:hover:not(:disabled):not([readonly])::file-selector-button {
-        background-color: var(--bs-secondary-bg);
-    }
-
-    .form-control-plaintext {
-        display: block;
-        width: 100%;
-        padding: 0.375rem 0;
-        margin-bottom: 0;
-        line-height: 1.5;
-        color: var(--bs-body-color);
-        background-color: transparent;
-        border: solid transparent;
-        border-width: var(--bs-border-width) 0;
-    }
-
-    .form-control-plaintext:focus {
-        outline: 0;
-    }
-
-    .form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
-        padding-right: 0;
-        padding-left: 0;
-    }
-
-    .form-control-sm {
-        min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
-        padding: 0.25rem 0.5rem;
-        font-size: 0.875rem;
-        border-radius: var(--bs-border-radius-sm);
-    }
-
-    .form-control-sm::file-selector-button {
-        padding: 0.25rem 0.5rem;
-        margin: -0.25rem -0.5rem;
-        margin-inline-end: 0.5rem;
-    }
-
-    .form-control-lg {
-        min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
-        padding: 0.5rem 1rem;
-        font-size: 1.25rem;
-        border-radius: var(--bs-border-radius-lg);
-    }
-
-    .form-control-lg::file-selector-button {
-        padding: 0.5rem 1rem;
-        margin: -0.5rem -1rem;
-        margin-inline-end: 1rem;
-    }
-
-    textarea.form-control {
-        min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
-    }
-
-    textarea.form-control-sm {
-        min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
-    }
-
-    textarea.form-control-lg {
-        min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
-    }
-
-    .form-control-color {
-        width: 3rem;
-        height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
-        padding: 0.375rem;
-    }
-
-    .form-control-color:not(:disabled):not([readonly]) {
-        cursor: pointer;
-    }
-
-    .form-control-color::-moz-color-swatch {
-        border: 0 !important;
-        border-radius: var(--bs-border-radius);
-    }
-
-    .form-control-color::-webkit-color-swatch {
-        border: 0 !important;
-        border-radius: var(--bs-border-radius);
-    }
-
-    .form-control-color.form-control-sm {
-        height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
-    }
-
-    .form-control-color.form-control-lg {
-        height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
-    }
-
-    .form-select {
-        --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23343a40%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3e%3c/svg%3e");
-        display: block;
-        width: 100%;
-        padding: 0.375rem 2.25rem 0.375rem 0.75rem;
-        font-size: 1rem;
-        font-weight: 400;
-        line-height: 1.5;
-        color: var(--bs-body-color);
-        background-color: var(--bs-body-bg);
-        background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);
-        background-repeat: no-repeat;
-        background-position: right 0.75rem center;
-        background-size: 16px 12px;
-        border: var(--bs-border-width) solid var(--bs-border-color);
-        border-radius: var(--bs-border-radius);
-        transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-        appearance: none;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-select {
-            transition: none;
-        }
-    }
-
-    .form-select:focus {
-        border-color: #86b7fe;
-        outline: 0;
-        box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-    }
-
-    .form-select[multiple], .form-select[size]:not([size="1"]) {
-        padding-right: 0.75rem;
-        background-image: none;
-    }
-
-    .form-select:disabled {
-        background-color: var(--bs-secondary-bg);
-    }
-
-    .form-select:-moz-focusring {
-        color: transparent;
-        text-shadow: 0 0 0 var(--bs-body-color);
-    }
-
-    .form-select-sm {
-        padding-top: 0.25rem;
-        padding-bottom: 0.25rem;
-        padding-left: 0.5rem;
-        font-size: 0.875rem;
-        border-radius: var(--bs-border-radius-sm);
-    }
-
-    .form-select-lg {
-        padding-top: 0.5rem;
-        padding-bottom: 0.5rem;
-        padding-left: 1rem;
-        font-size: 1.25rem;
-        border-radius: var(--bs-border-radius-lg);
-    }
-
-    [data-bs-theme=dark] .form-select {
-        --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23adb5bd%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3e%3c/svg%3e");
-    }
-
-    .form-check {
-        display: block;
-        min-height: 1.5rem;
-        padding-left: 1.5em;
-        margin-bottom: 0.125rem;
-    }
-
-    .form-check .form-check-input {
-        float: left;
-        margin-left: -1.5em;
-    }
-
-    .form-check-reverse {
-        padding-right: 1.5em;
-        padding-left: 0;
-        text-align: right;
-    }
-
-    .form-check-reverse .form-check-input {
-        float: right;
-        margin-right: -1.5em;
-        margin-left: 0;
-    }
-
-    .form-check-input {
-        --bs-form-check-bg: var(--bs-body-bg);
-        width: 1em;
-        height: 1em;
-        margin-top: 0.25em;
-        vertical-align: top;
-        background-color: var(--bs-form-check-bg);
-        background-image: var(--bs-form-check-bg-image);
-        background-repeat: no-repeat;
-        background-position: center;
-        background-size: contain;
-        border: var(--bs-border-width) solid var(--bs-border-color);
-        appearance: none;
-        -webkit-print-color-adjust: exact;
-        print-color-adjust: exact;
-    }
-
-    .form-check-input[type=checkbox] {
-        border-radius: 0.25em;
-    }
-
-    .form-check-input[type=radio] {
-        border-radius: 50%;
-    }
-
-    .form-check-input:active {
-        filter: brightness(90%);
-    }
-
-    .form-check-input:focus {
-        border-color: #86b7fe;
-        outline: 0;
-        box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-    }
-
-    .form-check-input:checked {
-        background-color: #0d6efd;
-        border-color: #0d6efd;
-    }
-
-    .form-check-input:checked[type=checkbox] {
-        --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27m6 10 3 3 6-6%27/%3e%3c/svg%3e");
-    }
-
-    .form-check-input:checked[type=radio] {
-        --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%272%27 fill=%27%23fff%27/%3e%3c/svg%3e");
-    }
-
-    .form-check-input[type=checkbox]:indeterminate {
-        background-color: #0d6efd;
-        border-color: #0d6efd;
-        --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27M6 10h8%27/%3e%3c/svg%3e");
-    }
-
-    .form-check-input:disabled {
-        pointer-events: none;
-        filter: none;
-        opacity: 0.5;
-    }
-
-    .form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
-        cursor: default;
-        opacity: 0.5;
-    }
-
-    .form-switch {
-        padding-left: 2.5em;
-    }
-
-    .form-switch .form-check-input {
-        --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27rgba%280, 0, 0, 0.25%29%27/%3e%3c/svg%3e");
-        width: 2em;
-        margin-left: -2.5em;
-        background-image: var(--bs-form-switch-bg);
-        background-position: left center;
-        border-radius: 2em;
-        transition: background-position 0.15s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-switch .form-check-input {
-            transition: none;
-        }
-    }
-
-    .form-switch .form-check-input:focus {
-        --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27%2386b7fe%27/%3e%3c/svg%3e");
-    }
-
-    .form-switch .form-check-input:checked {
-        background-position: right center;
-        --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27%23fff%27/%3e%3c/svg%3e");
-    }
-
-    .form-switch.form-check-reverse {
-        padding-right: 2.5em;
-        padding-left: 0;
-    }
-
-    .form-switch.form-check-reverse .form-check-input {
-        margin-right: -2.5em;
-        margin-left: 0;
-    }
-
-    .form-check-inline {
-        display: inline-block;
-        margin-right: 1rem;
-    }
-
-    .btn-check {
-        position: absolute;
-        clip: rect(0, 0, 0, 0);
-        pointer-events: none;
-    }
-
-    .btn-check[disabled] + .btn, .btn-check:disabled + .btn {
-        pointer-events: none;
-        filter: none;
-        opacity: 0.65;
-    }
-
-    [data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {
-        --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27rgba%28255, 255, 255, 0.25%29%27/%3e%3c/svg%3e");
-    }
-
-    .form-range {
-        width: 100%;
-        height: 1.5rem;
-        padding: 0;
-        background-color: transparent;
-        appearance: none;
-    }
-
-    .form-range:focus {
-        outline: 0;
-    }
-
-    .form-range:focus::-webkit-slider-thumb {
-        box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-    }
-
-    .form-range:focus::-moz-range-thumb {
-        box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-    }
-
-    .form-range::-moz-focus-outer {
-        border: 0;
-    }
-
-    .form-range::-webkit-slider-thumb {
-        width: 1rem;
-        height: 1rem;
-        margin-top: -0.25rem;
-        background-color: #0d6efd;
-        border: 0;
-        border-radius: 1rem;
-        -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-        transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-        appearance: none;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-range::-webkit-slider-thumb {
-            -webkit-transition: none;
-            transition: none;
-        }
-    }
-
-    .form-range::-webkit-slider-thumb:active {
-        background-color: #b6d4fe;
-    }
-
-    .form-range::-webkit-slider-runnable-track {
-        width: 100%;
-        height: 0.5rem;
-        color: transparent;
-        cursor: pointer;
-        background-color: var(--bs-tertiary-bg);
-        border-color: transparent;
-        border-radius: 1rem;
-    }
-
-    .form-range::-moz-range-thumb {
-        width: 1rem;
-        height: 1rem;
-        background-color: #0d6efd;
-        border: 0;
-        border-radius: 1rem;
-        -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-        transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-        appearance: none;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-range::-moz-range-thumb {
-            -moz-transition: none;
-            transition: none;
-        }
-    }
-
-    .form-range::-moz-range-thumb:active {
-        background-color: #b6d4fe;
-    }
-
-    .form-range::-moz-range-track {
-        width: 100%;
-        height: 0.5rem;
-        color: transparent;
-        cursor: pointer;
-        background-color: var(--bs-tertiary-bg);
-        border-color: transparent;
-        border-radius: 1rem;
-    }
-
-    .form-range:disabled {
-        pointer-events: none;
-    }
-
-    .form-range:disabled::-webkit-slider-thumb {
-        background-color: var(--bs-secondary-color);
-    }
-
-    .form-range:disabled::-moz-range-thumb {
-        background-color: var(--bs-secondary-color);
-    }
-
-    .form-floating {
-        position: relative;
-    }
-
-    .form-floating > .form-control,
-    .form-floating > .form-control-plaintext,
-    .form-floating > .form-select {
-        height: calc(3.5rem + calc(var(--bs-border-width) * 2));
-        min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));
-        line-height: 1.25;
-    }
-
-    .form-floating > label {
-        position: absolute;
-        top: 0;
-        left: 0;
-        z-index: 2;
-        height: 100%;
-        padding: 1rem 0.75rem;
-        overflow: hidden;
-        text-align: start;
-        text-overflow: ellipsis;
-        white-space: nowrap;
-        pointer-events: none;
-        border: var(--bs-border-width) solid transparent;
-        transform-origin: 0 0;
-        transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-floating > label {
-            transition: none;
-        }
-    }
-
-    .form-floating > .form-control,
-    .form-floating > .form-control-plaintext {
-        padding: 1rem 0.75rem;
-    }
-
-    .form-floating > .form-control::placeholder,
-    .form-floating > .form-control-plaintext::placeholder {
-        color: transparent;
-    }
-
-    .form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),
-    .form-floating > .form-control-plaintext:focus,
-    .form-floating > .form-control-plaintext:not(:placeholder-shown) {
-        padding-top: 1.625rem;
-        padding-bottom: 0.625rem;
-    }
-
-    .form-floating > .form-control:-webkit-autofill,
-    .form-floating > .form-control-plaintext:-webkit-autofill {
-        padding-top: 1.625rem;
-        padding-bottom: 0.625rem;
-    }
-
-    .form-floating > .form-select {
-        padding-top: 1.625rem;
-        padding-bottom: 0.625rem;
-    }
-
-    .form-floating > .form-control:focus ~ label,
-    .form-floating > .form-control:not(:placeholder-shown) ~ label,
-    .form-floating > .form-control-plaintext ~ label,
-    .form-floating > .form-select ~ label {
-        color: rgba(var(--bs-body-color-rgb), 0.65);
-        transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
-    }
-
-    .form-floating > .form-control:focus ~ label::after,
-    .form-floating > .form-control:not(:placeholder-shown) ~ label::after,
-    .form-floating > .form-control-plaintext ~ label::after,
-    .form-floating > .form-select ~ label::after {
-        position: absolute;
-        inset: 1rem 0.375rem;
-        z-index: -1;
-        height: 1.5em;
-        content: "";
-        background-color: var(--bs-body-bg);
-        border-radius: var(--bs-border-radius);
-    }
-
-    .form-floating > .form-control:-webkit-autofill ~ label {
-        color: rgba(var(--bs-body-color-rgb), 0.65);
-        transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
-    }
-
-    .form-floating > .form-control-plaintext ~ label {
-        border-width: var(--bs-border-width) 0;
-    }
-
-    .form-floating > :disabled ~ label {
-        color: #6c757d;
-    }
-
-    .form-floating > :disabled ~ label::after {
-        background-color: var(--bs-secondary-bg);
-    }
-
-    .input-group {
-        position: relative;
-        display: flex;
-        flex-wrap: wrap;
-        align-items: stretch;
-        width: 100%;
-    }
-
-    .input-group > .form-control,
-    .input-group > .form-select,
-    .input-group > .form-floating {
-        position: relative;
-        flex: 1 1 auto;
-        width: 1%;
-        min-width: 0;
-    }
-
-    .input-group > .form-control:focus,
-    .input-group > .form-select:focus,
-    .input-group > .form-floating:focus-within {
-        z-index: 5;
-    }
-
-    .input-group .btn {
-        position: relative;
-        z-index: 2;
-    }
-
-    .input-group .btn:focus {
-        z-index: 5;
-    }
-
-    .input-group-text {
-        display: flex;
-        align-items: center;
-        padding: 0.375rem 0.75rem;
-        font-size: 1rem;
-        font-weight: 400;
-        line-height: 1.5;
-        color: var(--bs-body-color);
-        text-align: center;
-        white-space: nowrap;
-        background-color: var(--bs-tertiary-bg);
-        border: var(--bs-border-width) solid var(--bs-border-color);
-        border-radius: var(--bs-border-radius);
-    }
-
-    .input-group-lg > .form-control,
-    .input-group-lg > .form-select,
-    .input-group-lg > .input-group-text,
-    .input-group-lg > .btn {
-        padding: 0.5rem 1rem;
-        font-size: 1.25rem;
-        border-radius: var(--bs-border-radius-lg);
-    }
-
-    .input-group-sm > .form-control,
-    .input-group-sm > .form-select,
-    .input-group-sm > .input-group-text,
-    .input-group-sm > .btn {
-        padding: 0.25rem 0.5rem;
-        font-size: 0.875rem;
-        border-radius: var(--bs-border-radius-sm);
-    }
-
-    .input-group-lg > .form-select,
-    .input-group-sm > .form-select {
-        padding-right: 3rem;
-    }
-
-    .input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
-    .input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),
-    .input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,
-    .input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {
-        border-top-right-radius: 0;
-        border-bottom-right-radius: 0;
-    }
-
-    .input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
-    .input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),
-    .input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,
-    .input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {
-        border-top-right-radius: 0;
-        border-bottom-right-radius: 0;
-    }
-
-    .input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
-        margin-left: calc(var(--bs-border-width) * -1);
-        border-top-left-radius: 0;
-        border-bottom-left-radius: 0;
-    }
-
-    .input-group > .form-floating:not(:first-child) > .form-control,
-    .input-group > .form-floating:not(:first-child) > .form-select {
-        border-top-left-radius: 0;
-        border-bottom-left-radius: 0;
-    }
-
-    .valid-feedback {
-        display: none;
-        width: 100%;
-        margin-top: 0.25rem;
-        font-size: 0.875em;
-        color: var(--bs-form-valid-color);
-    }
-
-    .valid-tooltip {
-        position: absolute;
-        top: 100%;
-        z-index: 5;
-        display: none;
-        max-width: 100%;
-        padding: 0.25rem 0.5rem;
-        margin-top: 0.1rem;
-        font-size: 0.875rem;
-        color: #fff;
-        background-color: var(--bs-success);
-        border-radius: var(--bs-border-radius);
-    }
-
-    .was-validated :valid ~ .valid-feedback,
-    .was-validated :valid ~ .valid-tooltip,
-    .is-valid ~ .valid-feedback,
-    .is-valid ~ .valid-tooltip {
-        display: block;
-    }
-
-    .was-validated .form-control:valid, .form-control.is-valid {
-        border-color: var(--bs-form-valid-border-color);
-        padding-right: calc(1.5em + 0.75rem);
-        background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 8 8%27%3e%3cpath fill=%27%23198754%27 d=%27M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z%27/%3e%3c/svg%3e");
-        background-repeat: no-repeat;
-        background-position: right calc(0.375em + 0.1875rem) center;
-        background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
-    }
-
-    .was-validated .form-control:valid:focus, .form-control.is-valid:focus {
-        border-color: var(--bs-form-valid-border-color);
-        box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
-    }
-
-    .was-validated textarea.form-control:valid, textarea.form-control.is-valid {
-        padding-right: calc(1.5em + 0.75rem);
-        background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
-    }
-
-    .was-validated .form-select:valid, .form-select.is-valid {
-        border-color: var(--bs-form-valid-border-color);
-    }
-
-    .was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] {
-        --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 8 8%27%3e%3cpath fill=%27%23198754%27 d=%27M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z%27/%3e%3c/svg%3e");
-        padding-right: 4.125rem;
-        background-position: right 0.75rem center, center right 2.25rem;
-        background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
-    }
-
-    .was-validated .form-select:valid:focus, .form-select.is-valid:focus {
-        border-color: var(--bs-form-valid-border-color);
-        box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
-    }
-
-    .was-validated .form-control-color:valid, .form-control-color.is-valid {
-        width: calc(3rem + calc(1.5em + 0.75rem));
-    }
-
-    .was-validated .form-check-input:valid, .form-check-input.is-valid {
-        border-color: var(--bs-form-valid-border-color);
-    }
-
-    .was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {
-        background-color: var(--bs-form-valid-color);
-    }
-
-    .was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {
-        box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
-    }
-
-    .was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
-        color: var(--bs-form-valid-color);
-    }
-
-    .form-check-inline .form-check-input ~ .valid-feedback {
-        margin-left: 0.5em;
-    }
-
-    .was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,
-    .was-validated .input-group > .form-select:not(:focus):valid,
-    .input-group > .form-select:not(:focus).is-valid,
-    .was-validated .input-group > .form-floating:not(:focus-within):valid,
-    .input-group > .form-floating:not(:focus-within).is-valid {
-        z-index: 3;
-    }
-
-    .invalid-feedback {
-        display: none;
-        width: 100%;
-        margin-top: 0.25rem;
-        font-size: 0.875em;
-        color: var(--bs-form-invalid-color);
-    }
-
-    .invalid-tooltip {
-        position: absolute;
-        top: 100%;
-        z-index: 5;
-        display: none;
-        max-width: 100%;
-        padding: 0.25rem 0.5rem;
-        margin-top: 0.1rem;
-        font-size: 0.875rem;
-        color: #fff;
-        background-color: var(--bs-danger);
-        border-radius: var(--bs-border-radius);
-    }
-
-    .was-validated :invalid ~ .invalid-feedback,
-    .was-validated :invalid ~ .invalid-tooltip,
-    .is-invalid ~ .invalid-feedback,
-    .is-invalid ~ .invalid-tooltip {
-        display: block;
-    }
-
-    .was-validated .form-control:invalid, .form-control.is-invalid {
-        border-color: var(--bs-form-invalid-border-color);
-        padding-right: calc(1.5em + 0.75rem);
-        background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27 width=%2712%27 height=%2712%27 fill=%27none%27 stroke=%27%23dc3545%27%3e%3ccircle cx=%276%27 cy=%276%27 r=%274.5%27/%3e%3cpath stroke-linejoin=%27round%27 d=%27M5.8 3.6h.4L6 6.5z%27/%3e%3ccircle cx=%276%27 cy=%278.2%27 r=%27.6%27 fill=%27%23dc3545%27 stroke=%27none%27/%3e%3c/svg%3e");
-        background-repeat: no-repeat;
-        background-position: right calc(0.375em + 0.1875rem) center;
-        background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
-    }
-
-    .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
-        border-color: var(--bs-form-invalid-border-color);
-        box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
-    }
-
-    .was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
-        padding-right: calc(1.5em + 0.75rem);
-        background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
-    }
-
-    .was-validated .form-select:invalid, .form-select.is-invalid {
-        border-color: var(--bs-form-invalid-border-color);
-    }
-
-    .was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] {
-        --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27 width=%2712%27 height=%2712%27 fill=%27none%27 stroke=%27%23dc3545%27%3e%3ccircle cx=%276%27 cy=%276%27 r=%274.5%27/%3e%3cpath stroke-linejoin=%27round%27 d=%27M5.8 3.6h.4L6 6.5z%27/%3e%3ccircle cx=%276%27 cy=%278.2%27 r=%27.6%27 fill=%27%23dc3545%27 stroke=%27none%27/%3e%3c/svg%3e");
-        padding-right: 4.125rem;
-        background-position: right 0.75rem center, center right 2.25rem;
-        background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
-    }
-
-    .was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {
-        border-color: var(--bs-form-invalid-border-color);
-        box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
-    }
-
-    .was-validated .form-control-color:invalid, .form-control-color.is-invalid {
-        width: calc(3rem + calc(1.5em + 0.75rem));
-    }
-
-    .was-validated .form-check-input:invalid, .form-check-input.is-invalid {
-        border-color: var(--bs-form-invalid-border-color);
-    }
-
-    .was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {
-        background-color: var(--bs-form-invalid-color);
-    }
-
-    .was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {
-        box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
-    }
-
-    .was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
-        color: var(--bs-form-invalid-color);
-    }
-
-    .form-check-inline .form-check-input ~ .invalid-feedback {
-        margin-left: 0.5em;
-    }
-
-    .was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,
-    .was-validated .input-group > .form-select:not(:focus):invalid,
-    .input-group > .form-select:not(:focus).is-invalid,
-    .was-validated .input-group > .form-floating:not(:focus-within):invalid,
-    .input-group > .form-floating:not(:focus-within).is-invalid {
-        z-index: 4;
-    }
-
-    .btn {
-        --bs-btn-padding-x: 0.75rem;
-        --bs-btn-padding-y: 0.375rem;
-        --bs-btn-font-family: ;
-        --bs-btn-font-size: 1rem;
-        --bs-btn-font-weight: 400;
-        --bs-btn-line-height: 1.5;
-        --bs-btn-color: var(--bs-body-color);
-        --bs-btn-bg: transparent;
-        --bs-btn-border-width: var(--bs-border-width);
-        --bs-btn-border-color: transparent;
-        --bs-btn-border-radius: var(--bs-border-radius);
-        --bs-btn-hover-border-color: transparent;
-        --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
-        --bs-btn-disabled-opacity: 0.65;
-        --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
-        display: inline-block;
-        padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
-        font-family: var(--bs-btn-font-family);
-        font-size: var(--bs-btn-font-size);
-        font-weight: var(--bs-btn-font-weight);
-        line-height: var(--bs-btn-line-height);
-        color: var(--bs-btn-color);
-        text-align: center;
-        text-decoration: none;
-        vertical-align: middle;
-        cursor: pointer;
-        -webkit-user-select: none;
-        user-select: none;
-        border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
-        border-radius: var(--bs-btn-border-radius);
-        background-color: var(--bs-btn-bg);
-        transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .btn {
-            transition: none;
-        }
-    }
-
-    .btn:hover {
-        color: var(--bs-btn-hover-color);
-        background-color: var(--bs-btn-hover-bg);
-        border-color: var(--bs-btn-hover-border-color);
-    }
-
-    .btn-check + .btn:hover {
-        color: var(--bs-btn-color);
-        background-color: var(--bs-btn-bg);
-        border-color: var(--bs-btn-border-color);
-    }
-
-    .btn:focus-visible {
-        color: var(--bs-btn-hover-color);
-        background-color: var(--bs-btn-hover-bg);
-        border-color: var(--bs-btn-hover-border-color);
-        outline: 0;
-        box-shadow: var(--bs-btn-focus-box-shadow);
-    }
-
-    .btn-check:focus-visible + .btn {
-        border-color: var(--bs-btn-hover-border-color);
-        outline: 0;
-        box-shadow: var(--bs-btn-focus-box-shadow);
-    }
-
-    .btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {
-        color: var(--bs-btn-active-color);
-        background-color: var(--bs-btn-active-bg);
-        border-color: var(--bs-btn-active-border-color);
-    }
-
-    .btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {
-        box-shadow: var(--bs-btn-focus-box-shadow);
-    }
-
-    .btn:disabled, .btn.disabled, fieldset:disabled .btn {
-        color: var(--bs-btn-disabled-color);
-        pointer-events: none;
-        background-color: var(--bs-btn-disabled-bg);
-        border-color: var(--bs-btn-disabled-border-color);
-        opacity: var(--bs-btn-disabled-opacity);
-    }
-
-    .btn-primary {
-        --bs-btn-color: #fff;
-        --bs-btn-bg: #0d6efd;
-        --bs-btn-border-color: #0d6efd;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #0b5ed7;
-        --bs-btn-hover-border-color: #0a58ca;
-        --bs-btn-focus-shadow-rgb: 49, 132, 253;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #0a58ca;
-        --bs-btn-active-border-color: #0a53be;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #fff;
-        --bs-btn-disabled-bg: #0d6efd;
-        --bs-btn-disabled-border-color: #0d6efd;
-    }
-
-    .btn-secondary {
-        --bs-btn-color: #fff;
-        --bs-btn-bg: #6c757d;
-        --bs-btn-border-color: #6c757d;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #5c636a;
-        --bs-btn-hover-border-color: #565e64;
-        --bs-btn-focus-shadow-rgb: 130, 138, 145;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #565e64;
-        --bs-btn-active-border-color: #51585e;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #fff;
-        --bs-btn-disabled-bg: #6c757d;
-        --bs-btn-disabled-border-color: #6c757d;
-    }
-
-    .btn-success {
-        --bs-btn-color: #fff;
-        --bs-btn-bg: #198754;
-        --bs-btn-border-color: #198754;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #157347;
-        --bs-btn-hover-border-color: #146c43;
-        --bs-btn-focus-shadow-rgb: 60, 153, 110;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #146c43;
-        --bs-btn-active-border-color: #13653f;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #fff;
-        --bs-btn-disabled-bg: #198754;
-        --bs-btn-disabled-border-color: #198754;
-    }
-
-    .btn-info {
-        --bs-btn-color: #000;
-        --bs-btn-bg: #0dcaf0;
-        --bs-btn-border-color: #0dcaf0;
-        --bs-btn-hover-color: #000;
-        --bs-btn-hover-bg: #31d2f2;
-        --bs-btn-hover-border-color: #25cff2;
-        --bs-btn-focus-shadow-rgb: 11, 172, 204;
-        --bs-btn-active-color: #000;
-        --bs-btn-active-bg: #3dd5f3;
-        --bs-btn-active-border-color: #25cff2;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #000;
-        --bs-btn-disabled-bg: #0dcaf0;
-        --bs-btn-disabled-border-color: #0dcaf0;
-    }
-
-    .btn-warning {
-        --bs-btn-color: #000;
-        --bs-btn-bg: #ffc107;
-        --bs-btn-border-color: #ffc107;
-        --bs-btn-hover-color: #000;
-        --bs-btn-hover-bg: #ffca2c;
-        --bs-btn-hover-border-color: #ffc720;
-        --bs-btn-focus-shadow-rgb: 217, 164, 6;
-        --bs-btn-active-color: #000;
-        --bs-btn-active-bg: #ffcd39;
-        --bs-btn-active-border-color: #ffc720;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #000;
-        --bs-btn-disabled-bg: #ffc107;
-        --bs-btn-disabled-border-color: #ffc107;
-    }
-
-    .btn-danger {
-        --bs-btn-color: #fff;
-        --bs-btn-bg: #dc3545;
-        --bs-btn-border-color: #dc3545;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #bb2d3b;
-        --bs-btn-hover-border-color: #b02a37;
-        --bs-btn-focus-shadow-rgb: 225, 83, 97;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #b02a37;
-        --bs-btn-active-border-color: #a52834;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #fff;
-        --bs-btn-disabled-bg: #dc3545;
-        --bs-btn-disabled-border-color: #dc3545;
-    }
-
-    .btn-light {
-        --bs-btn-color: #000;
-        --bs-btn-bg: #f8f9fa;
-        --bs-btn-border-color: #f8f9fa;
-        --bs-btn-hover-color: #000;
-        --bs-btn-hover-bg: #d3d4d5;
-        --bs-btn-hover-border-color: #c6c7c8;
-        --bs-btn-focus-shadow-rgb: 211, 212, 213;
-        --bs-btn-active-color: #000;
-        --bs-btn-active-bg: #c6c7c8;
-        --bs-btn-active-border-color: #babbbc;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #000;
-        --bs-btn-disabled-bg: #f8f9fa;
-        --bs-btn-disabled-border-color: #f8f9fa;
-    }
-
-    .btn-dark {
-        --bs-btn-color: #fff;
-        --bs-btn-bg: #212529;
-        --bs-btn-border-color: #212529;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #424649;
-        --bs-btn-hover-border-color: #373b3e;
-        --bs-btn-focus-shadow-rgb: 66, 70, 73;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #4d5154;
-        --bs-btn-active-border-color: #373b3e;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #fff;
-        --bs-btn-disabled-bg: #212529;
-        --bs-btn-disabled-border-color: #212529;
-    }
-
-    .btn-outline-primary {
-        --bs-btn-color: #0d6efd;
-        --bs-btn-border-color: #0d6efd;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #0d6efd;
-        --bs-btn-hover-border-color: #0d6efd;
-        --bs-btn-focus-shadow-rgb: 13, 110, 253;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #0d6efd;
-        --bs-btn-active-border-color: #0d6efd;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #0d6efd;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #0d6efd;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-secondary {
-        --bs-btn-color: #6c757d;
-        --bs-btn-border-color: #6c757d;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #6c757d;
-        --bs-btn-hover-border-color: #6c757d;
-        --bs-btn-focus-shadow-rgb: 108, 117, 125;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #6c757d;
-        --bs-btn-active-border-color: #6c757d;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #6c757d;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #6c757d;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-success {
-        --bs-btn-color: #198754;
-        --bs-btn-border-color: #198754;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #198754;
-        --bs-btn-hover-border-color: #198754;
-        --bs-btn-focus-shadow-rgb: 25, 135, 84;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #198754;
-        --bs-btn-active-border-color: #198754;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #198754;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #198754;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-info {
-        --bs-btn-color: #0dcaf0;
-        --bs-btn-border-color: #0dcaf0;
-        --bs-btn-hover-color: #000;
-        --bs-btn-hover-bg: #0dcaf0;
-        --bs-btn-hover-border-color: #0dcaf0;
-        --bs-btn-focus-shadow-rgb: 13, 202, 240;
-        --bs-btn-active-color: #000;
-        --bs-btn-active-bg: #0dcaf0;
-        --bs-btn-active-border-color: #0dcaf0;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #0dcaf0;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #0dcaf0;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-warning {
-        --bs-btn-color: #ffc107;
-        --bs-btn-border-color: #ffc107;
-        --bs-btn-hover-color: #000;
-        --bs-btn-hover-bg: #ffc107;
-        --bs-btn-hover-border-color: #ffc107;
-        --bs-btn-focus-shadow-rgb: 255, 193, 7;
-        --bs-btn-active-color: #000;
-        --bs-btn-active-bg: #ffc107;
-        --bs-btn-active-border-color: #ffc107;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #ffc107;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #ffc107;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-danger {
-        --bs-btn-color: #dc3545;
-        --bs-btn-border-color: #dc3545;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #dc3545;
-        --bs-btn-hover-border-color: #dc3545;
-        --bs-btn-focus-shadow-rgb: 220, 53, 69;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #dc3545;
-        --bs-btn-active-border-color: #dc3545;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #dc3545;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #dc3545;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-light {
-        --bs-btn-color: #f8f9fa;
-        --bs-btn-border-color: #f8f9fa;
-        --bs-btn-hover-color: #000;
-        --bs-btn-hover-bg: #f8f9fa;
-        --bs-btn-hover-border-color: #f8f9fa;
-        --bs-btn-focus-shadow-rgb: 248, 249, 250;
-        --bs-btn-active-color: #000;
-        --bs-btn-active-bg: #f8f9fa;
-        --bs-btn-active-border-color: #f8f9fa;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #f8f9fa;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #f8f9fa;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-dark {
-        --bs-btn-color: #212529;
-        --bs-btn-border-color: #212529;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #212529;
-        --bs-btn-hover-border-color: #212529;
-        --bs-btn-focus-shadow-rgb: 33, 37, 41;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #212529;
-        --bs-btn-active-border-color: #212529;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #212529;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #212529;
-        --bs-gradient: none;
-    }
-
-    .btn-link {
-        --bs-btn-font-weight: 400;
-        --bs-btn-color: var(--bs-link-color);
-        --bs-btn-bg: transparent;
-        --bs-btn-border-color: transparent;
-        --bs-btn-hover-color: var(--bs-link-hover-color);
-        --bs-btn-hover-border-color: transparent;
-        --bs-btn-active-color: var(--bs-link-hover-color);
-        --bs-btn-active-border-color: transparent;
-        --bs-btn-disabled-color: #6c757d;
-        --bs-btn-disabled-border-color: transparent;
-        --bs-btn-box-shadow: 0 0 0 #000;
-        --bs-btn-focus-shadow-rgb: 49, 132, 253;
-        text-decoration: underline;
-    }
-
-    .btn-link:focus-visible {
-        color: var(--bs-btn-color);
-    }
-
-    .btn-link:hover {
-        color: var(--bs-btn-hover-color);
-    }
-
-    .btn-lg, .btn-group-lg > .btn {
-        --bs-btn-padding-y: 0.5rem;
-        --bs-btn-padding-x: 1rem;
-        --bs-btn-font-size: 1.25rem;
-        --bs-btn-border-radius: var(--bs-border-radius-lg);
-    }
-
-    .btn-sm, .btn-group-sm > .btn {
-        --bs-btn-padding-y: 0.25rem;
-        --bs-btn-padding-x: 0.5rem;
-        --bs-btn-font-size: 0.875rem;
-        --bs-btn-border-radius: var(--bs-border-radius-sm);
-    }
-
-    .fade {
-        transition: opacity 0.15s linear;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .fade {
-            transition: none;
-        }
-    }
-
-    .fade:not(.show) {
-        opacity: 0;
-    }
-
-    .collapse:not(.show) {
-        display: none;
-    }
-
-    .collapsing {
-        height: 0;
-        overflow: hidden;
-        transition: height 0.35s ease;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .collapsing {
-            transition: none;
-        }
-    }
-
-    .collapsing.collapse-horizontal {
-        width: 0;
-        height: auto;
-        transition: width 0.35s ease;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .collapsing.collapse-horizontal {
-            transition: none;
-        }
-    }
-
-    .dropup,
-    .dropend,
-    .dropdown,
-    .dropstart,
-    .dropup-center,
-    .dropdown-center {
-        position: relative;
-    }
-
-    .dropdown-toggle {
-        white-space: nowrap;
-    }
-
-    .dropdown-toggle::after {
-        display: inline-block;
-        margin-left: 0.255em;
-        vertical-align: 0.255em;
-        content: "";
-        border-top: 0.3em solid;
-        border-right: 0.3em solid transparent;
-        border-bottom: 0;
-        border-left: 0.3em solid transparent;
-    }
-
-    .dropdown-toggle:empty::after {
-        margin-left: 0;
-    }
-
-    .dropdown-menu {
-        --bs-dropdown-zindex: 1000;
-        --bs-dropdown-min-width: 10rem;
-        --bs-dropdown-padding-x: 0;
-        --bs-dropdown-padding-y: 0.5rem;
-        --bs-dropdown-spacer: 0.125rem;
-        --bs-dropdown-font-size: 1rem;
-        --bs-dropdown-color: var(--bs-body-color);
-        --bs-dropdown-bg: var(--bs-body-bg);
-        --bs-dropdown-border-color: var(--bs-border-color-translucent);
-        --bs-dropdown-border-radius: var(--bs-border-radius);
-        --bs-dropdown-border-width: var(--bs-border-width);
-        --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
-        --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
-        --bs-dropdown-divider-margin-y: 0.5rem;
-        --bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
-        --bs-dropdown-link-color: var(--bs-body-color);
-        --bs-dropdown-link-hover-color: var(--bs-body-color);
-        --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);
-        --bs-dropdown-link-active-color: #fff;
-        --bs-dropdown-link-active-bg: #0d6efd;
-        --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
-        --bs-dropdown-item-padding-x: 1rem;
-        --bs-dropdown-item-padding-y: 0.25rem;
-        --bs-dropdown-header-color: #6c757d;
-        --bs-dropdown-header-padding-x: 1rem;
-        --bs-dropdown-header-padding-y: 0.5rem;
-        position: absolute;
-        z-index: var(--bs-dropdown-zindex);
-        display: none;
-        min-width: var(--bs-dropdown-min-width);
-        padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
-        margin: 0;
-        font-size: var(--bs-dropdown-font-size);
-        color: var(--bs-dropdown-color);
-        text-align: left;
-        list-style: none;
-        background-color: var(--bs-dropdown-bg);
-        background-clip: padding-box;
-        border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
-        border-radius: var(--bs-dropdown-border-radius);
-    }
-
-    .dropdown-menu[data-bs-popper] {
-        top: 100%;
-        left: 0;
-        margin-top: var(--bs-dropdown-spacer);
-    }
-
-    .dropdown-menu-start {
-        --bs-position: start;
-    }
-
-    .dropdown-menu-start[data-bs-popper] {
-        right: auto;
-        left: 0;
-    }
-
-    .dropdown-menu-end {
-        --bs-position: end;
-    }
-
-    .dropdown-menu-end[data-bs-popper] {
-        right: 0;
-        left: auto;
-    }
-
-    @media (min-width: 576px) {
-        .dropdown-menu-sm-start {
-            --bs-position: start;
-        }
-
-        .dropdown-menu-sm-start[data-bs-popper] {
-            right: auto;
-            left: 0;
-        }
-
-        .dropdown-menu-sm-end {
-            --bs-position: end;
-        }
-
-        .dropdown-menu-sm-end[data-bs-popper] {
-            right: 0;
-            left: auto;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .dropdown-menu-md-start {
-            --bs-position: start;
-        }
-
-        .dropdown-menu-md-start[data-bs-popper] {
-            right: auto;
-            left: 0;
-        }
-
-        .dropdown-menu-md-end {
-            --bs-position: end;
-        }
-
-        .dropdown-menu-md-end[data-bs-popper] {
-            right: 0;
-            left: auto;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .dropdown-menu-lg-start {
-            --bs-position: start;
-        }
-
-        .dropdown-menu-lg-start[data-bs-popper] {
-            right: auto;
-            left: 0;
-        }
-
-        .dropdown-menu-lg-end {
-            --bs-position: end;
-        }
-
-        .dropdown-menu-lg-end[data-bs-popper] {
-            right: 0;
-            left: auto;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .dropdown-menu-xl-start {
-            --bs-position: start;
-        }
-
-        .dropdown-menu-xl-start[data-bs-popper] {
-            right: auto;
-            left: 0;
-        }
-
-        .dropdown-menu-xl-end {
-            --bs-position: end;
-        }
-
-        .dropdown-menu-xl-end[data-bs-popper] {
-            right: 0;
-            left: auto;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .dropdown-menu-xxl-start {
-            --bs-position: start;
-        }
-
-        .dropdown-menu-xxl-start[data-bs-popper] {
-            right: auto;
-            left: 0;
-        }
-
-        .dropdown-menu-xxl-end {
-            --bs-position: end;
-        }
-
-        .dropdown-menu-xxl-end[data-bs-popper] {
-            right: 0;
-            left: auto;
-        }
-    }
-
-    .dropup .dropdown-menu[data-bs-popper] {
-        top: auto;
-        bottom: 100%;
-        margin-top: 0;
-        margin-bottom: var(--bs-dropdown-spacer);
-    }
-
-    .dropup .dropdown-toggle::after {
-        display: inline-block;
-        margin-left: 0.255em;
-        vertical-align: 0.255em;
-        content: "";
-        border-top: 0;
-        border-right: 0.3em solid transparent;
-        border-bottom: 0.3em solid;
-        border-left: 0.3em solid transparent;
-    }
-
-    .dropup .dropdown-toggle:empty::after {
-        margin-left: 0;
-    }
-
-    .dropend .dropdown-menu[data-bs-popper] {
-        top: 0;
-        right: auto;
-        left: 100%;
-        margin-top: 0;
-        margin-left: var(--bs-dropdown-spacer);
-    }
-
-    .dropend .dropdown-toggle::after {
-        display: inline-block;
-        margin-left: 0.255em;
-        vertical-align: 0.255em;
-        content: "";
-        border-top: 0.3em solid transparent;
-        border-right: 0;
-        border-bottom: 0.3em solid transparent;
-        border-left: 0.3em solid;
-    }
-
-    .dropend .dropdown-toggle:empty::after {
-        margin-left: 0;
-    }
-
-    .dropend .dropdown-toggle::after {
-        vertical-align: 0;
-    }
-
-    .dropstart .dropdown-menu[data-bs-popper] {
-        top: 0;
-        right: 100%;
-        left: auto;
-        margin-top: 0;
-        margin-right: var(--bs-dropdown-spacer);
-    }
-
-    .dropstart .dropdown-toggle::after {
-        display: inline-block;
-        margin-left: 0.255em;
-        vertical-align: 0.255em;
-        content: "";
-    }
-
-    .dropstart .dropdown-toggle::after {
-        display: none;
-    }
-
-    .dropstart .dropdown-toggle::before {
-        display: inline-block;
-        margin-right: 0.255em;
-        vertical-align: 0.255em;
-        content: "";
-        border-top: 0.3em solid transparent;
-        border-right: 0.3em solid;
-        border-bottom: 0.3em solid transparent;
-    }
-
-    .dropstart .dropdown-toggle:empty::after {
-        margin-left: 0;
-    }
-
-    .dropstart .dropdown-toggle::before {
-        vertical-align: 0;
-    }
-
-    .dropdown-divider {
-        height: 0;
-        margin: var(--bs-dropdown-divider-margin-y) 0;
-        overflow: hidden;
-        border-top: 1px solid var(--bs-dropdown-divider-bg);
-        opacity: 1;
-    }
-
-    .dropdown-item {
-        display: block;
-        width: 100%;
-        padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
-        clear: both;
-        font-weight: 400;
-        color: var(--bs-dropdown-link-color);
-        text-align: inherit;
-        text-decoration: none;
-        white-space: nowrap;
-        background-color: transparent;
-        border: 0;
-        border-radius: var(--bs-dropdown-item-border-radius, 0);
-    }
-
-    .dropdown-item:hover, .dropdown-item:focus {
-        color: var(--bs-dropdown-link-hover-color);
-        background-color: var(--bs-dropdown-link-hover-bg);
-    }
-
-    .dropdown-item.active, .dropdown-item:active {
-        color: var(--bs-dropdown-link-active-color);
-        text-decoration: none;
-        background-color: var(--bs-dropdown-link-active-bg);
-    }
-
-    .dropdown-item.disabled, .dropdown-item:disabled {
-        color: var(--bs-dropdown-link-disabled-color);
-        pointer-events: none;
-        background-color: transparent;
-    }
-
-    .dropdown-menu.show {
-        display: block;
-    }
-
-    .dropdown-header {
-        display: block;
-        padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
-        margin-bottom: 0;
-        font-size: 0.875rem;
-        color: var(--bs-dropdown-header-color);
-        white-space: nowrap;
-    }
-
-    .dropdown-item-text {
-        display: block;
-        padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
-        color: var(--bs-dropdown-link-color);
-    }
-
-    .dropdown-menu-dark {
-        --bs-dropdown-color: #dee2e6;
-        --bs-dropdown-bg: #343a40;
-        --bs-dropdown-border-color: var(--bs-border-color-translucent);
-        --bs-dropdown-box-shadow: ;
-        --bs-dropdown-link-color: #dee2e6;
-        --bs-dropdown-link-hover-color: #fff;
-        --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
-        --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
-        --bs-dropdown-link-active-color: #fff;
-        --bs-dropdown-link-active-bg: #0d6efd;
-        --bs-dropdown-link-disabled-color: #adb5bd;
-        --bs-dropdown-header-color: #adb5bd;
-    }
-
-    .btn-group,
-    .btn-group-vertical {
-        position: relative;
-        display: inline-flex;
-        vertical-align: middle;
-    }
-
-    .btn-group > .btn,
-    .btn-group-vertical > .btn {
-        position: relative;
-        flex: 1 1 auto;
-    }
-
-    .btn-group > .btn-check:checked + .btn,
-    .btn-group > .btn-check:focus + .btn,
-    .btn-group > .btn:hover,
-    .btn-group > .btn:focus,
-    .btn-group > .btn:active,
-    .btn-group > .btn.active,
-    .btn-group-vertical > .btn-check:checked + .btn,
-    .btn-group-vertical > .btn-check:focus + .btn,
-    .btn-group-vertical > .btn:hover,
-    .btn-group-vertical > .btn:focus,
-    .btn-group-vertical > .btn:active,
-    .btn-group-vertical > .btn.active {
-        z-index: 1;
-    }
-
-    .btn-toolbar {
-        display: flex;
-        flex-wrap: wrap;
-        justify-content: flex-start;
-    }
-
-    .btn-toolbar .input-group {
-        width: auto;
-    }
-
-    .btn-group {
-        border-radius: var(--bs-border-radius);
-    }
-
-    .btn-group > :not(.btn-check:first-child) + .btn,
-    .btn-group > .btn-group:not(:first-child) {
-        margin-left: calc(var(--bs-border-width) * -1);
-    }
-
-    .btn-group > .btn:not(:last-child):not(.dropdown-toggle),
-    .btn-group > .btn.dropdown-toggle-split:first-child,
-    .btn-group > .btn-group:not(:last-child) > .btn {
-        border-top-right-radius: 0;
-        border-bottom-right-radius: 0;
-    }
-
-    .btn-group > .btn:nth-child(n+3),
-    .btn-group > :not(.btn-check) + .btn,
-    .btn-group > .btn-group:not(:first-child) > .btn {
-        border-top-left-radius: 0;
-        border-bottom-left-radius: 0;
-    }
-
-    .dropdown-toggle-split {
-        padding-right: 0.5625rem;
-        padding-left: 0.5625rem;
-    }
-
-    .dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {
-        margin-left: 0;
-    }
-
-    .dropstart .dropdown-toggle-split::before {
-        margin-right: 0;
-    }
-
-    .btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
-        padding-right: 0.375rem;
-        padding-left: 0.375rem;
-    }
-
-    .btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
-        padding-right: 0.75rem;
-        padding-left: 0.75rem;
-    }
-
-    .btn-group-vertical {
-        flex-direction: column;
-        align-items: flex-start;
-        justify-content: center;
-    }
-
-    .btn-group-vertical > .btn,
-    .btn-group-vertical > .btn-group {
-        width: 100%;
-    }
-
-    .btn-group-vertical > .btn:not(:first-child),
-    .btn-group-vertical > .btn-group:not(:first-child) {
-        margin-top: calc(var(--bs-border-width) * -1);
-    }
-
-    .btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
-    .btn-group-vertical > .btn-group:not(:last-child) > .btn {
-        border-bottom-right-radius: 0;
-        border-bottom-left-radius: 0;
-    }
-
-    .btn-group-vertical > .btn ~ .btn,
-    .btn-group-vertical > .btn-group:not(:first-child) > .btn {
-        border-top-left-radius: 0;
-        border-top-right-radius: 0;
-    }
-
-    .nav {
-        --bs-nav-link-padding-x: 1rem;
-        --bs-nav-link-padding-y: 0.5rem;
-        --bs-nav-link-font-weight: ;
-        --bs-nav-link-color: var(--bs-link-color);
-        --bs-nav-link-hover-color: var(--bs-link-hover-color);
-        --bs-nav-link-disabled-color: var(--bs-secondary-color);
-        display: flex;
-        flex-wrap: wrap;
-        padding-left: 0;
-        margin-bottom: 0;
-        list-style: none;
-    }
-
-    .nav-link {
-        display: block;
-        padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
-        font-size: var(--bs-nav-link-font-size);
-        font-weight: var(--bs-nav-link-font-weight);
-        color: var(--bs-nav-link-color);
-        text-decoration: none;
-        background: none;
-        border: 0;
-        transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .nav-link {
-            transition: none;
-        }
-    }
-
-    .nav-link:hover, .nav-link:focus {
-        color: var(--bs-nav-link-hover-color);
-    }
-
-    .nav-link:focus-visible {
-        outline: 0;
-        box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-    }
-
-    .nav-link.disabled {
-        color: var(--bs-nav-link-disabled-color);
-        pointer-events: none;
-        cursor: default;
-    }
-
-    .nav-tabs {
-        --bs-nav-tabs-border-width: var(--bs-border-width);
-        --bs-nav-tabs-border-color: var(--bs-border-color);
-        --bs-nav-tabs-border-radius: var(--bs-border-radius);
-        --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);
-        --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);
-        --bs-nav-tabs-link-active-bg: var(--bs-body-bg);
-        --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);
-        border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);
-    }
-
-    .nav-tabs .nav-link {
-        margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
-        border: var(--bs-nav-tabs-border-width) solid transparent;
-        border-top-left-radius: var(--bs-nav-tabs-border-radius);
-        border-top-right-radius: var(--bs-nav-tabs-border-radius);
-    }
-
-    .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
-        isolation: isolate;
-        border-color: var(--bs-nav-tabs-link-hover-border-color);
-    }
-
-    .nav-tabs .nav-link.disabled, .nav-tabs .nav-link:disabled {
-        color: var(--bs-nav-link-disabled-color);
-        background-color: transparent;
-        border-color: transparent;
-    }
-
-    .nav-tabs .nav-link.active,
-    .nav-tabs .nav-item.show .nav-link {
-        color: var(--bs-nav-tabs-link-active-color);
-        background-color: var(--bs-nav-tabs-link-active-bg);
-        border-color: var(--bs-nav-tabs-link-active-border-color);
-    }
-
-    .nav-tabs .dropdown-menu {
-        margin-top: calc(-1 * var(--bs-nav-tabs-border-width));
-        border-top-left-radius: 0;
-        border-top-right-radius: 0;
-    }
-
-    .nav-pills {
-        --bs-nav-pills-border-radius: var(--bs-border-radius);
-        --bs-nav-pills-link-active-color: #fff;
-        --bs-nav-pills-link-active-bg: #0d6efd;
-    }
-
-    .nav-pills .nav-link {
-        border-radius: var(--bs-nav-pills-border-radius);
-    }
-
-    .nav-pills .nav-link:disabled {
-        color: var(--bs-nav-link-disabled-color);
-        background-color: transparent;
-        border-color: transparent;
-    }
-
-    .nav-pills .nav-link.active,
-    .nav-pills .show > .nav-link {
-        color: var(--bs-nav-pills-link-active-color);
-        background-color: var(--bs-nav-pills-link-active-bg);
-    }
-
-    .nav-underline {
-        --bs-nav-underline-gap: 1rem;
-        --bs-nav-underline-border-width: 0.125rem;
-        --bs-nav-underline-link-active-color: var(--bs-emphasis-color);
-        gap: var(--bs-nav-underline-gap);
-    }
-
-    .nav-underline .nav-link {
-        padding-right: 0;
-        padding-left: 0;
-        border-bottom: var(--bs-nav-underline-border-width) solid transparent;
-    }
-
-    .nav-underline .nav-link:hover, .nav-underline .nav-link:focus {
-        border-bottom-color: currentcolor;
-    }
-
-    .nav-underline .nav-link.active,
-    .nav-underline .show > .nav-link {
-        font-weight: 700;
-        color: var(--bs-nav-underline-link-active-color);
-        border-bottom-color: currentcolor;
-    }
-
-    .nav-fill > .nav-link,
-    .nav-fill .nav-item {
-        flex: 1 1 auto;
-        text-align: center;
-    }
-
-    .nav-justified > .nav-link,
-    .nav-justified .nav-item {
-        flex-basis: 0;
-        flex-grow: 1;
-        text-align: center;
-    }
-
-    .nav-fill .nav-item .nav-link,
-    .nav-justified .nav-item .nav-link {
-        width: 100%;
-    }
-
-    .tab-content > .tab-pane {
-        display: none;
-    }
-
-    .tab-content > .active {
-        display: block;
-    }
-
-    .navbar {
-        --bs-navbar-padding-x: 0;
-        --bs-navbar-padding-y: 0.5rem;
-        --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);
-        --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);
-        --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);
-        --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);
-        --bs-navbar-brand-padding-y: 0.3125rem;
-        --bs-navbar-brand-margin-end: 1rem;
-        --bs-navbar-brand-font-size: 1.25rem;
-        --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);
-        --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);
-        --bs-navbar-nav-link-padding-x: 0.5rem;
-        --bs-navbar-toggler-padding-y: 0.25rem;
-        --bs-navbar-toggler-padding-x: 0.75rem;
-        --bs-navbar-toggler-font-size: 1.25rem;
-        --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%2833, 37, 41, 0.75%29%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%3e%3c/svg%3e");
-        --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
-        --bs-navbar-toggler-border-radius: var(--bs-border-radius);
-        --bs-navbar-toggler-focus-width: 0.25rem;
-        --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
-        position: relative;
-        display: flex;
-        flex-wrap: wrap;
-        align-items: center;
-        justify-content: space-between;
-        padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);
-    }
-
-    .navbar > .container,
-    .navbar > .container-fluid,
-    .navbar > .container-sm,
-    .navbar > .container-md,
-    .navbar > .container-lg,
-    .navbar > .container-xl,
-    .navbar > .container-xxl {
-        display: flex;
-        flex-wrap: inherit;
-        align-items: center;
-        justify-content: space-between;
-    }
-
-    .navbar-brand {
-        padding-top: var(--bs-navbar-brand-padding-y);
-        padding-bottom: var(--bs-navbar-brand-padding-y);
-        margin-right: var(--bs-navbar-brand-margin-end);
-        font-size: var(--bs-navbar-brand-font-size);
-        color: var(--bs-navbar-brand-color);
-        text-decoration: none;
-        white-space: nowrap;
-    }
-
-    .navbar-brand:hover, .navbar-brand:focus {
-        color: var(--bs-navbar-brand-hover-color);
-    }
-
-    .navbar-nav {
-        --bs-nav-link-padding-x: 0;
-        --bs-nav-link-padding-y: 0.5rem;
-        --bs-nav-link-font-weight: ;
-        --bs-nav-link-color: var(--bs-navbar-color);
-        --bs-nav-link-hover-color: var(--bs-navbar-hover-color);
-        --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);
-        display: flex;
-        flex-direction: column;
-        padding-left: 0;
-        margin-bottom: 0;
-        list-style: none;
-    }
-
-    .navbar-nav .nav-link.active, .navbar-nav .nav-link.show {
-        color: var(--bs-navbar-active-color);
-    }
-
-    .navbar-nav .dropdown-menu {
-        position: static;
-    }
-
-    .navbar-text {
-        padding-top: 0.5rem;
-        padding-bottom: 0.5rem;
-        color: var(--bs-navbar-color);
-    }
-
-    .navbar-text a,
-    .navbar-text a:hover,
-    .navbar-text a:focus {
-        color: var(--bs-navbar-active-color);
-    }
-
-    .navbar-collapse {
-        flex-basis: 100%;
-        flex-grow: 1;
-        align-items: center;
-    }
-
-    .navbar-toggler {
-        padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);
-        font-size: var(--bs-navbar-toggler-font-size);
-        line-height: 1;
-        color: var(--bs-navbar-color);
-        background-color: transparent;
-        border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);
-        border-radius: var(--bs-navbar-toggler-border-radius);
-        transition: var(--bs-navbar-toggler-transition);
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .navbar-toggler {
-            transition: none;
-        }
-    }
-
-    .navbar-toggler:hover {
-        text-decoration: none;
-    }
-
-    .navbar-toggler:focus {
-        text-decoration: none;
-        outline: 0;
-        box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);
-    }
-
-    .navbar-toggler-icon {
-        display: inline-block;
-        width: 1.5em;
-        height: 1.5em;
-        vertical-align: middle;
-        background-image: var(--bs-navbar-toggler-icon-bg);
-        background-repeat: no-repeat;
-        background-position: center;
-        background-size: 100%;
-    }
-
-    .navbar-nav-scroll {
-        max-height: var(--bs-scroll-height, 75vh);
-        overflow-y: auto;
-    }
-
-    @media (min-width: 576px) {
-        .navbar-expand-sm {
-            flex-wrap: nowrap;
-            justify-content: flex-start;
-        }
-
-        .navbar-expand-sm .navbar-nav {
-            flex-direction: row;
-        }
-
-        .navbar-expand-sm .navbar-nav .dropdown-menu {
-            position: absolute;
-        }
-
-        .navbar-expand-sm .navbar-nav .nav-link {
-            padding-right: var(--bs-navbar-nav-link-padding-x);
-            padding-left: var(--bs-navbar-nav-link-padding-x);
-        }
-
-        .navbar-expand-sm .navbar-nav-scroll {
-            overflow: visible;
-        }
-
-        .navbar-expand-sm .navbar-collapse {
-            display: flex !important;
-            flex-basis: auto;
-        }
-
-        .navbar-expand-sm .navbar-toggler {
-            display: none;
-        }
-
-        .navbar-expand-sm .offcanvas {
-            position: static;
-            z-index: auto;
-            flex-grow: 1;
-            width: auto !important;
-            height: auto !important;
-            visibility: visible !important;
-            background-color: transparent !important;
-            border: 0 !important;
-            transform: none !important;
-            transition: none;
-        }
-
-        .navbar-expand-sm .offcanvas .offcanvas-header {
-            display: none;
-        }
-
-        .navbar-expand-sm .offcanvas .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .navbar-expand-md {
-            flex-wrap: nowrap;
-            justify-content: flex-start;
-        }
-
-        .navbar-expand-md .navbar-nav {
-            flex-direction: row;
-        }
-
-        .navbar-expand-md .navbar-nav .dropdown-menu {
-            position: absolute;
-        }
-
-        .navbar-expand-md .navbar-nav .nav-link {
-            padding-right: var(--bs-navbar-nav-link-padding-x);
-            padding-left: var(--bs-navbar-nav-link-padding-x);
-        }
-
-        .navbar-expand-md .navbar-nav-scroll {
-            overflow: visible;
-        }
-
-        .navbar-expand-md .navbar-collapse {
-            display: flex !important;
-            flex-basis: auto;
-        }
-
-        .navbar-expand-md .navbar-toggler {
-            display: none;
-        }
-
-        .navbar-expand-md .offcanvas {
-            position: static;
-            z-index: auto;
-            flex-grow: 1;
-            width: auto !important;
-            height: auto !important;
-            visibility: visible !important;
-            background-color: transparent !important;
-            border: 0 !important;
-            transform: none !important;
-            transition: none;
-        }
-
-        .navbar-expand-md .offcanvas .offcanvas-header {
-            display: none;
-        }
-
-        .navbar-expand-md .offcanvas .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .navbar-expand-lg {
-            flex-wrap: nowrap;
-            justify-content: flex-start;
-        }
-
-        .navbar-expand-lg .navbar-nav {
-            flex-direction: row;
-        }
-
-        .navbar-expand-lg .navbar-nav .dropdown-menu {
-            position: absolute;
-        }
-
-        .navbar-expand-lg .navbar-nav .nav-link {
-            padding-right: var(--bs-navbar-nav-link-padding-x);
-            padding-left: var(--bs-navbar-nav-link-padding-x);
-        }
-
-        .navbar-expand-lg .navbar-nav-scroll {
-            overflow: visible;
-        }
-
-        .navbar-expand-lg .navbar-collapse {
-            display: flex !important;
-            flex-basis: auto;
-        }
-
-        .navbar-expand-lg .navbar-toggler {
-            display: none;
-        }
-
-        .navbar-expand-lg .offcanvas {
-            position: static;
-            z-index: auto;
-            flex-grow: 1;
-            width: auto !important;
-            height: auto !important;
-            visibility: visible !important;
-            background-color: transparent !important;
-            border: 0 !important;
-            transform: none !important;
-            transition: none;
-        }
-
-        .navbar-expand-lg .offcanvas .offcanvas-header {
-            display: none;
-        }
-
-        .navbar-expand-lg .offcanvas .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .navbar-expand-xl {
-            flex-wrap: nowrap;
-            justify-content: flex-start;
-        }
-
-        .navbar-expand-xl .navbar-nav {
-            flex-direction: row;
-        }
-
-        .navbar-expand-xl .navbar-nav .dropdown-menu {
-            position: absolute;
-        }
-
-        .navbar-expand-xl .navbar-nav .nav-link {
-            padding-right: var(--bs-navbar-nav-link-padding-x);
-            padding-left: var(--bs-navbar-nav-link-padding-x);
-        }
-
-        .navbar-expand-xl .navbar-nav-scroll {
-            overflow: visible;
-        }
-
-        .navbar-expand-xl .navbar-collapse {
-            display: flex !important;
-            flex-basis: auto;
-        }
-
-        .navbar-expand-xl .navbar-toggler {
-            display: none;
-        }
-
-        .navbar-expand-xl .offcanvas {
-            position: static;
-            z-index: auto;
-            flex-grow: 1;
-            width: auto !important;
-            height: auto !important;
-            visibility: visible !important;
-            background-color: transparent !important;
-            border: 0 !important;
-            transform: none !important;
-            transition: none;
-        }
-
-        .navbar-expand-xl .offcanvas .offcanvas-header {
-            display: none;
-        }
-
-        .navbar-expand-xl .offcanvas .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .navbar-expand-xxl {
-            flex-wrap: nowrap;
-            justify-content: flex-start;
-        }
-
-        .navbar-expand-xxl .navbar-nav {
-            flex-direction: row;
-        }
-
-        .navbar-expand-xxl .navbar-nav .dropdown-menu {
-            position: absolute;
-        }
-
-        .navbar-expand-xxl .navbar-nav .nav-link {
-            padding-right: var(--bs-navbar-nav-link-padding-x);
-            padding-left: var(--bs-navbar-nav-link-padding-x);
-        }
-
-        .navbar-expand-xxl .navbar-nav-scroll {
-            overflow: visible;
-        }
-
-        .navbar-expand-xxl .navbar-collapse {
-            display: flex !important;
-            flex-basis: auto;
-        }
-
-        .navbar-expand-xxl .navbar-toggler {
-            display: none;
-        }
-
-        .navbar-expand-xxl .offcanvas {
-            position: static;
-            z-index: auto;
-            flex-grow: 1;
-            width: auto !important;
-            height: auto !important;
-            visibility: visible !important;
-            background-color: transparent !important;
-            border: 0 !important;
-            transform: none !important;
-            transition: none;
-        }
-
-        .navbar-expand-xxl .offcanvas .offcanvas-header {
-            display: none;
-        }
-
-        .navbar-expand-xxl .offcanvas .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-        }
-    }
-
-    .navbar-expand {
-        flex-wrap: nowrap;
-        justify-content: flex-start;
-    }
-
-    .navbar-expand .navbar-nav {
-        flex-direction: row;
-    }
-
-    .navbar-expand .navbar-nav .dropdown-menu {
-        position: absolute;
-    }
-
-    .navbar-expand .navbar-nav .nav-link {
-        padding-right: var(--bs-navbar-nav-link-padding-x);
-        padding-left: var(--bs-navbar-nav-link-padding-x);
-    }
-
-    .navbar-expand .navbar-nav-scroll {
-        overflow: visible;
-    }
-
-    .navbar-expand .navbar-collapse {
-        display: flex !important;
-        flex-basis: auto;
-    }
-
-    .navbar-expand .navbar-toggler {
-        display: none;
-    }
-
-    .navbar-expand .offcanvas {
-        position: static;
-        z-index: auto;
-        flex-grow: 1;
-        width: auto !important;
-        height: auto !important;
-        visibility: visible !important;
-        background-color: transparent !important;
-        border: 0 !important;
-        transform: none !important;
-        transition: none;
-    }
-
-    .navbar-expand .offcanvas .offcanvas-header {
-        display: none;
-    }
-
-    .navbar-expand .offcanvas .offcanvas-body {
-        display: flex;
-        flex-grow: 0;
-        padding: 0;
-        overflow-y: visible;
-    }
-
-    .navbar-dark,
-    .navbar[data-bs-theme=dark] {
-        --bs-navbar-color: rgba(255, 255, 255, 0.55);
-        --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);
-        --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);
-        --bs-navbar-active-color: #fff;
-        --bs-navbar-brand-color: #fff;
-        --bs-navbar-brand-hover-color: #fff;
-        --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);
-        --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%28255, 255, 255, 0.55%29%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%3e%3c/svg%3e");
-    }
-
-    [data-bs-theme=dark] .navbar-toggler-icon {
-        --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%28255, 255, 255, 0.55%29%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%3e%3c/svg%3e");
-    }
-
-    .card {
-        --bs-card-spacer-y: 1rem;
-        --bs-card-spacer-x: 1rem;
-        --bs-card-title-spacer-y: 0.5rem;
-        --bs-card-title-color: ;
-        --bs-card-subtitle-color: ;
-        --bs-card-border-width: var(--bs-border-width);
-        --bs-card-border-color: var(--bs-border-color-translucent);
-        --bs-card-border-radius: var(--bs-border-radius);
-        --bs-card-box-shadow: ;
-        --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
-        --bs-card-cap-padding-y: 0.5rem;
-        --bs-card-cap-padding-x: 1rem;
-        --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
-        --bs-card-cap-color: ;
-        --bs-card-height: ;
-        --bs-card-color: ;
-        --bs-card-bg: var(--bs-body-bg);
-        --bs-card-img-overlay-padding: 1rem;
-        --bs-card-group-margin: 0.75rem;
-        position: relative;
-        display: flex;
-        flex-direction: column;
-        min-width: 0;
-        height: var(--bs-card-height);
-        color: var(--bs-body-color);
-        word-wrap: break-word;
-        background-color: var(--bs-card-bg);
-        background-clip: border-box;
-        border: var(--bs-card-border-width) solid var(--bs-card-border-color);
-        border-radius: var(--bs-card-border-radius);
-    }
-
-    .card > hr {
-        margin-right: 0;
-        margin-left: 0;
-    }
-
-    .card > .list-group {
-        border-top: inherit;
-        border-bottom: inherit;
-    }
-
-    .card > .list-group:first-child {
-        border-top-width: 0;
-        border-top-left-radius: var(--bs-card-inner-border-radius);
-        border-top-right-radius: var(--bs-card-inner-border-radius);
-    }
-
-    .card > .list-group:last-child {
-        border-bottom-width: 0;
-        border-bottom-right-radius: var(--bs-card-inner-border-radius);
-        border-bottom-left-radius: var(--bs-card-inner-border-radius);
-    }
-
-    .card > .card-header + .list-group,
-    .card > .list-group + .card-footer {
-        border-top: 0;
-    }
-
-    .card-body {
-        flex: 1 1 auto;
-        padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
-        color: var(--bs-card-color);
-    }
-
-    .card-title {
-        margin-bottom: var(--bs-card-title-spacer-y);
-        color: var(--bs-card-title-color);
-    }
-
-    .card-subtitle {
-        margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));
-        margin-bottom: 0;
-        color: var(--bs-card-subtitle-color);
-    }
-
-    .card-text:last-child {
-        margin-bottom: 0;
-    }
-
-    .card-link + .card-link {
-        margin-left: var(--bs-card-spacer-x);
-    }
-
-    .card-header {
-        padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
-        margin-bottom: 0;
-        color: var(--bs-card-cap-color);
-        background-color: var(--bs-card-cap-bg);
-        border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
-    }
-
-    .card-header:first-child {
-        border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;
-    }
-
-    .card-footer {
-        padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
-        color: var(--bs-card-cap-color);
-        background-color: var(--bs-card-cap-bg);
-        border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);
-    }
-
-    .card-footer:last-child {
-        border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);
-    }
-
-    .card-header-tabs {
-        margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
-        margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));
-        margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
-        border-bottom: 0;
-    }
-
-    .card-header-tabs .nav-link.active {
-        background-color: var(--bs-card-bg);
-        border-bottom-color: var(--bs-card-bg);
-    }
-
-    .card-header-pills {
-        margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
-        margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
-    }
-
-    .card-img-overlay {
-        position: absolute;
-        top: 0;
-        right: 0;
-        bottom: 0;
-        left: 0;
-        padding: var(--bs-card-img-overlay-padding);
-        border-radius: var(--bs-card-inner-border-radius);
-    }
-
-    .card-img,
-    .card-img-top,
-    .card-img-bottom {
-        width: 100%;
-    }
-
-    .card-img,
-    .card-img-top {
-        border-top-left-radius: var(--bs-card-inner-border-radius);
-        border-top-right-radius: var(--bs-card-inner-border-radius);
-    }
-
-    .card-img,
-    .card-img-bottom {
-        border-bottom-right-radius: var(--bs-card-inner-border-radius);
-        border-bottom-left-radius: var(--bs-card-inner-border-radius);
-    }
-
-    .card-group > .card {
-        margin-bottom: var(--bs-card-group-margin);
-    }
-
-    @media (min-width: 576px) {
-        .card-group {
-            display: flex;
-            flex-flow: row wrap;
-        }
-
-        .card-group > .card {
-            flex: 1 0;
-            margin-bottom: 0;
-        }
-
-        .card-group > .card + .card {
-            margin-left: 0;
-            border-left: 0;
-        }
-
-        .card-group > .card:not(:last-child) {
-            border-top-right-radius: 0;
-            border-bottom-right-radius: 0;
-        }
-
-        .card-group > .card:not(:last-child) .card-img-top,
-        .card-group > .card:not(:last-child) .card-header {
-            border-top-right-radius: 0;
-        }
-
-        .card-group > .card:not(:last-child) .card-img-bottom,
-        .card-group > .card:not(:last-child) .card-footer {
-            border-bottom-right-radius: 0;
-        }
-
-        .card-group > .card:not(:first-child) {
-            border-top-left-radius: 0;
-            border-bottom-left-radius: 0;
-        }
-
-        .card-group > .card:not(:first-child) .card-img-top,
-        .card-group > .card:not(:first-child) .card-header {
-            border-top-left-radius: 0;
-        }
-
-        .card-group > .card:not(:first-child) .card-img-bottom,
-        .card-group > .card:not(:first-child) .card-footer {
-            border-bottom-left-radius: 0;
-        }
-    }
-
-    .accordion {
-        --bs-accordion-color: var(--bs-body-color);
-        --bs-accordion-bg: var(--bs-body-bg);
-        --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
-        --bs-accordion-border-color: var(--bs-border-color);
-        --bs-accordion-border-width: var(--bs-border-width);
-        --bs-accordion-border-radius: var(--bs-border-radius);
-        --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
-        --bs-accordion-btn-padding-x: 1.25rem;
-        --bs-accordion-btn-padding-y: 1rem;
-        --bs-accordion-btn-color: var(--bs-body-color);
-        --bs-accordion-btn-bg: var(--bs-accordion-bg);
-        --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23212529%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
-        --bs-accordion-btn-icon-width: 1.25rem;
-        --bs-accordion-btn-icon-transform: rotate(-180deg);
-        --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
-        --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23052c65%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
-        --bs-accordion-btn-focus-border-color: #86b7fe;
-        --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-        --bs-accordion-body-padding-x: 1.25rem;
-        --bs-accordion-body-padding-y: 1rem;
-        --bs-accordion-active-color: var(--bs-primary-text-emphasis);
-        --bs-accordion-active-bg: var(--bs-primary-bg-subtle);
-    }
-
-    .accordion-button {
-        position: relative;
-        display: flex;
-        align-items: center;
-        width: 100%;
-        padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
-        font-size: 1rem;
-        color: var(--bs-accordion-btn-color);
-        text-align: left;
-        background-color: var(--bs-accordion-btn-bg);
-        border: 0;
-        border-radius: 0;
-        overflow-anchor: none;
-        transition: var(--bs-accordion-transition);
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .accordion-button {
-            transition: none;
-        }
-    }
-
-    .accordion-button:not(.collapsed) {
-        color: var(--bs-accordion-active-color);
-        background-color: var(--bs-accordion-active-bg);
-        box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
-    }
-
-    .accordion-button:not(.collapsed)::after {
-        background-image: var(--bs-accordion-btn-active-icon);
-        transform: var(--bs-accordion-btn-icon-transform);
-    }
-
-    .accordion-button::after {
-        flex-shrink: 0;
-        width: var(--bs-accordion-btn-icon-width);
-        height: var(--bs-accordion-btn-icon-width);
-        margin-left: auto;
-        content: "";
-        background-image: var(--bs-accordion-btn-icon);
-        background-repeat: no-repeat;
-        background-size: var(--bs-accordion-btn-icon-width);
-        transition: var(--bs-accordion-btn-icon-transition);
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .accordion-button::after {
-            transition: none;
-        }
-    }
-
-    .accordion-button:hover {
-        z-index: 2;
-    }
-
-    .accordion-button:focus {
-        z-index: 3;
-        border-color: var(--bs-accordion-btn-focus-border-color);
-        outline: 0;
-        box-shadow: var(--bs-accordion-btn-focus-box-shadow);
-    }
-
-    .accordion-header {
-        margin-bottom: 0;
-    }
-
-    .accordion-item {
-        color: var(--bs-accordion-color);
-        background-color: var(--bs-accordion-bg);
-        border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
-    }
-
-    .accordion-item:first-of-type {
-        border-top-left-radius: var(--bs-accordion-border-radius);
-        border-top-right-radius: var(--bs-accordion-border-radius);
-    }
-
-    .accordion-item:first-of-type .accordion-button {
-        border-top-left-radius: var(--bs-accordion-inner-border-radius);
-        border-top-right-radius: var(--bs-accordion-inner-border-radius);
-    }
-
-    .accordion-item:not(:first-of-type) {
-        border-top: 0;
-    }
-
-    .accordion-item:last-of-type {
-        border-bottom-right-radius: var(--bs-accordion-border-radius);
-        border-bottom-left-radius: var(--bs-accordion-border-radius);
-    }
-
-    .accordion-item:last-of-type .accordion-button.collapsed {
-        border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
-        border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
-    }
-
-    .accordion-item:last-of-type .accordion-collapse {
-        border-bottom-right-radius: var(--bs-accordion-border-radius);
-        border-bottom-left-radius: var(--bs-accordion-border-radius);
-    }
-
-    .accordion-body {
-        padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);
-    }
-
-    .accordion-flush .accordion-collapse {
-        border-width: 0;
-    }
-
-    .accordion-flush .accordion-item {
-        border-right: 0;
-        border-left: 0;
-        border-radius: 0;
-    }
-
-    .accordion-flush .accordion-item:first-child {
-        border-top: 0;
-    }
-
-    .accordion-flush .accordion-item:last-child {
-        border-bottom: 0;
-    }
-
-    .accordion-flush .accordion-item .accordion-button, .accordion-flush .accordion-item .accordion-button.collapsed {
-        border-radius: 0;
-    }
-
-    [data-bs-theme=dark] .accordion-button::after {
-        --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%236ea8fe%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
-        --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%236ea8fe%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
-    }
-
-    .breadcrumb {
-        --bs-breadcrumb-padding-x: 0;
-        --bs-breadcrumb-padding-y: 0;
-        --bs-breadcrumb-margin-bottom: 1rem;
-        --bs-breadcrumb-bg: ;
-        --bs-breadcrumb-border-radius: ;
-        --bs-breadcrumb-divider-color: var(--bs-secondary-color);
-        --bs-breadcrumb-item-padding-x: 0.5rem;
-        --bs-breadcrumb-item-active-color: var(--bs-secondary-color);
-        display: flex;
-        flex-wrap: wrap;
-        padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);
-        margin-bottom: var(--bs-breadcrumb-margin-bottom);
-        font-size: var(--bs-breadcrumb-font-size);
-        list-style: none;
-        background-color: var(--bs-breadcrumb-bg);
-        border-radius: var(--bs-breadcrumb-border-radius);
-    }
-
-    .breadcrumb-item + .breadcrumb-item {
-        padding-left: var(--bs-breadcrumb-item-padding-x);
-    }
-
-    .breadcrumb-item + .breadcrumb-item::before {
-        float: left;
-        padding-right: var(--bs-breadcrumb-item-padding-x);
-        color: var(--bs-breadcrumb-divider-color);
-        content: var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */;
-    }
-
-    .breadcrumb-item.active {
-        color: var(--bs-breadcrumb-item-active-color);
-    }
-
-    .pagination {
-        --bs-pagination-padding-x: 0.75rem;
-        --bs-pagination-padding-y: 0.375rem;
-        --bs-pagination-font-size: 1rem;
-        --bs-pagination-color: var(--bs-link-color);
-        --bs-pagination-bg: var(--bs-body-bg);
-        --bs-pagination-border-width: var(--bs-border-width);
-        --bs-pagination-border-color: var(--bs-border-color);
-        --bs-pagination-border-radius: var(--bs-border-radius);
-        --bs-pagination-hover-color: var(--bs-link-hover-color);
-        --bs-pagination-hover-bg: var(--bs-tertiary-bg);
-        --bs-pagination-hover-border-color: var(--bs-border-color);
-        --bs-pagination-focus-color: var(--bs-link-hover-color);
-        --bs-pagination-focus-bg: var(--bs-secondary-bg);
-        --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-        --bs-pagination-active-color: #fff;
-        --bs-pagination-active-bg: #0d6efd;
-        --bs-pagination-active-border-color: #0d6efd;
-        --bs-pagination-disabled-color: var(--bs-secondary-color);
-        --bs-pagination-disabled-bg: var(--bs-secondary-bg);
-        --bs-pagination-disabled-border-color: var(--bs-border-color);
-        display: flex;
-        padding-left: 0;
-        list-style: none;
-    }
-
-    .page-link {
-        position: relative;
-        display: block;
-        padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);
-        font-size: var(--bs-pagination-font-size);
-        color: var(--bs-pagination-color);
-        text-decoration: none;
-        background-color: var(--bs-pagination-bg);
-        border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
-        transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .page-link {
-            transition: none;
-        }
-    }
-
-    .page-link:hover {
-        z-index: 2;
-        color: var(--bs-pagination-hover-color);
-        background-color: var(--bs-pagination-hover-bg);
-        border-color: var(--bs-pagination-hover-border-color);
-    }
-
-    .page-link:focus {
-        z-index: 3;
-        color: var(--bs-pagination-focus-color);
-        background-color: var(--bs-pagination-focus-bg);
-        outline: 0;
-        box-shadow: var(--bs-pagination-focus-box-shadow);
-    }
-
-    .page-link.active, .active > .page-link {
-        z-index: 3;
-        color: var(--bs-pagination-active-color);
-        background-color: var(--bs-pagination-active-bg);
-        border-color: var(--bs-pagination-active-border-color);
-    }
-
-    .page-link.disabled, .disabled > .page-link {
-        color: var(--bs-pagination-disabled-color);
-        pointer-events: none;
-        background-color: var(--bs-pagination-disabled-bg);
-        border-color: var(--bs-pagination-disabled-border-color);
-    }
-
-    .page-item:not(:first-child) .page-link {
-        margin-left: calc(var(--bs-border-width) * -1);
-    }
-
-    .page-item:first-child .page-link {
-        border-top-left-radius: var(--bs-pagination-border-radius);
-        border-bottom-left-radius: var(--bs-pagination-border-radius);
-    }
-
-    .page-item:last-child .page-link {
-        border-top-right-radius: var(--bs-pagination-border-radius);
-        border-bottom-right-radius: var(--bs-pagination-border-radius);
-    }
-
-    .pagination-lg {
-        --bs-pagination-padding-x: 1.5rem;
-        --bs-pagination-padding-y: 0.75rem;
-        --bs-pagination-font-size: 1.25rem;
-        --bs-pagination-border-radius: var(--bs-border-radius-lg);
-    }
-
-    .pagination-sm {
-        --bs-pagination-padding-x: 0.5rem;
-        --bs-pagination-padding-y: 0.25rem;
-        --bs-pagination-font-size: 0.875rem;
-        --bs-pagination-border-radius: var(--bs-border-radius-sm);
-    }
-
-    .badge {
-        --bs-badge-padding-x: 0.65em;
-        --bs-badge-padding-y: 0.35em;
-        --bs-badge-font-size: 0.75em;
-        --bs-badge-font-weight: 700;
-        --bs-badge-color: #fff;
-        --bs-badge-border-radius: var(--bs-border-radius);
-        display: inline-block;
-        padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
-        font-size: var(--bs-badge-font-size);
-        font-weight: var(--bs-badge-font-weight);
-        line-height: 1;
-        color: var(--bs-badge-color);
-        text-align: center;
-        white-space: nowrap;
-        vertical-align: baseline;
-        border-radius: var(--bs-badge-border-radius);
-    }
-
-    .badge:empty {
-        display: none;
-    }
-
-    .btn .badge {
-        position: relative;
-        top: -1px;
-    }
-
-    .alert {
-        --bs-alert-bg: transparent;
-        --bs-alert-padding-x: 1rem;
-        --bs-alert-padding-y: 1rem;
-        --bs-alert-margin-bottom: 1rem;
-        --bs-alert-color: inherit;
-        --bs-alert-border-color: transparent;
-        --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
-        --bs-alert-border-radius: var(--bs-border-radius);
-        --bs-alert-link-color: inherit;
-        position: relative;
-        padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
-        margin-bottom: var(--bs-alert-margin-bottom);
-        color: var(--bs-alert-color);
-        background-color: var(--bs-alert-bg);
-        border: var(--bs-alert-border);
-        border-radius: var(--bs-alert-border-radius);
-    }
-
-    .alert-heading {
-        color: inherit;
-    }
-
-    .alert-link {
-        font-weight: 700;
-        color: var(--bs-alert-link-color);
-    }
-
-    .alert-dismissible {
-        padding-right: 3rem;
-    }
-
-    .alert-dismissible .btn-close {
-        position: absolute;
-        top: 0;
-        right: 0;
-        z-index: 2;
-        padding: 1.25rem 1rem;
-    }
-
-    .alert-primary {
-        --bs-alert-color: var(--bs-primary-text-emphasis);
-        --bs-alert-bg: var(--bs-primary-bg-subtle);
-        --bs-alert-border-color: var(--bs-primary-border-subtle);
-        --bs-alert-link-color: var(--bs-primary-text-emphasis);
-    }
-
-    .alert-secondary {
-        --bs-alert-color: var(--bs-secondary-text-emphasis);
-        --bs-alert-bg: var(--bs-secondary-bg-subtle);
-        --bs-alert-border-color: var(--bs-secondary-border-subtle);
-        --bs-alert-link-color: var(--bs-secondary-text-emphasis);
-    }
-
-    .alert-success {
-        --bs-alert-color: var(--bs-success-text-emphasis);
-        --bs-alert-bg: var(--bs-success-bg-subtle);
-        --bs-alert-border-color: var(--bs-success-border-subtle);
-        --bs-alert-link-color: var(--bs-success-text-emphasis);
-    }
-
-    .alert-info {
-        --bs-alert-color: var(--bs-info-text-emphasis);
-        --bs-alert-bg: var(--bs-info-bg-subtle);
-        --bs-alert-border-color: var(--bs-info-border-subtle);
-        --bs-alert-link-color: var(--bs-info-text-emphasis);
-    }
-
-    .alert-warning {
-        --bs-alert-color: var(--bs-warning-text-emphasis);
-        --bs-alert-bg: var(--bs-warning-bg-subtle);
-        --bs-alert-border-color: var(--bs-warning-border-subtle);
-        --bs-alert-link-color: var(--bs-warning-text-emphasis);
-    }
-
-    .alert-danger {
-        --bs-alert-color: var(--bs-danger-text-emphasis);
-        --bs-alert-bg: var(--bs-danger-bg-subtle);
-        --bs-alert-border-color: var(--bs-danger-border-subtle);
-        --bs-alert-link-color: var(--bs-danger-text-emphasis);
-    }
-
-    .alert-light {
-        --bs-alert-color: var(--bs-light-text-emphasis);
-        --bs-alert-bg: var(--bs-light-bg-subtle);
-        --bs-alert-border-color: var(--bs-light-border-subtle);
-        --bs-alert-link-color: var(--bs-light-text-emphasis);
-    }
-
-    .alert-dark {
-        --bs-alert-color: var(--bs-dark-text-emphasis);
-        --bs-alert-bg: var(--bs-dark-bg-subtle);
-        --bs-alert-border-color: var(--bs-dark-border-subtle);
-        --bs-alert-link-color: var(--bs-dark-text-emphasis);
-    }
-
-    @keyframes progress-bar-stripes {
-        0% {
-            background-position-x: 1rem;
-        }
-    }
-
-    .progress,
-    .progress-stacked {
-        --bs-progress-height: 1rem;
-        --bs-progress-font-size: 0.75rem;
-        --bs-progress-bg: var(--bs-secondary-bg);
-        --bs-progress-border-radius: var(--bs-border-radius);
-        --bs-progress-box-shadow: var(--bs-box-shadow-inset);
-        --bs-progress-bar-color: #fff;
-        --bs-progress-bar-bg: #0d6efd;
-        --bs-progress-bar-transition: width 0.6s ease;
-        display: flex;
-        height: var(--bs-progress-height);
-        overflow: hidden;
-        font-size: var(--bs-progress-font-size);
-        background-color: var(--bs-progress-bg);
-        border-radius: var(--bs-progress-border-radius);
-    }
-
-    .progress-bar {
-        display: flex;
-        flex-direction: column;
-        justify-content: center;
-        overflow: hidden;
-        color: var(--bs-progress-bar-color);
-        text-align: center;
-        white-space: nowrap;
-        background-color: var(--bs-progress-bar-bg);
-        transition: var(--bs-progress-bar-transition);
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .progress-bar {
-            transition: none;
-        }
-    }
-
-    .progress-bar-striped {
-        background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-        background-size: var(--bs-progress-height) var(--bs-progress-height);
-    }
-
-    .progress-stacked > .progress {
-        overflow: visible;
-    }
-
-    .progress-stacked > .progress > .progress-bar {
-        width: 100%;
-    }
-
-    .progress-bar-animated {
-        animation: 1s linear infinite progress-bar-stripes;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .progress-bar-animated {
-            animation: none;
-        }
-    }
-
-    .list-group {
-        --bs-list-group-color: var(--bs-body-color);
-        --bs-list-group-bg: var(--bs-body-bg);
-        --bs-list-group-border-color: var(--bs-border-color);
-        --bs-list-group-border-width: var(--bs-border-width);
-        --bs-list-group-border-radius: var(--bs-border-radius);
-        --bs-list-group-item-padding-x: 1rem;
-        --bs-list-group-item-padding-y: 0.5rem;
-        --bs-list-group-action-color: var(--bs-secondary-color);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);
-        --bs-list-group-action-active-color: var(--bs-body-color);
-        --bs-list-group-action-active-bg: var(--bs-secondary-bg);
-        --bs-list-group-disabled-color: var(--bs-secondary-color);
-        --bs-list-group-disabled-bg: var(--bs-body-bg);
-        --bs-list-group-active-color: #fff;
-        --bs-list-group-active-bg: #0d6efd;
-        --bs-list-group-active-border-color: #0d6efd;
-        display: flex;
-        flex-direction: column;
-        padding-left: 0;
-        margin-bottom: 0;
-        border-radius: var(--bs-list-group-border-radius);
-    }
-
-    .list-group-numbered {
-        list-style-type: none;
-        counter-reset: section;
-    }
-
-    .list-group-numbered > .list-group-item::before {
-        content: counters(section, ".") ". ";
-        counter-increment: section;
-    }
-
-    .list-group-item-action {
-        width: 100%;
-        color: var(--bs-list-group-action-color);
-        text-align: inherit;
-    }
-
-    .list-group-item-action:hover, .list-group-item-action:focus {
-        z-index: 1;
-        color: var(--bs-list-group-action-hover-color);
-        text-decoration: none;
-        background-color: var(--bs-list-group-action-hover-bg);
-    }
-
-    .list-group-item-action:active {
-        color: var(--bs-list-group-action-active-color);
-        background-color: var(--bs-list-group-action-active-bg);
-    }
-
-    .list-group-item {
-        position: relative;
-        display: block;
-        padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);
-        color: var(--bs-list-group-color);
-        text-decoration: none;
-        background-color: var(--bs-list-group-bg);
-        border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);
-    }
-
-    .list-group-item:first-child {
-        border-top-left-radius: inherit;
-        border-top-right-radius: inherit;
-    }
-
-    .list-group-item:last-child {
-        border-bottom-right-radius: inherit;
-        border-bottom-left-radius: inherit;
-    }
-
-    .list-group-item.disabled, .list-group-item:disabled {
-        color: var(--bs-list-group-disabled-color);
-        pointer-events: none;
-        background-color: var(--bs-list-group-disabled-bg);
-    }
-
-    .list-group-item.active {
-        z-index: 2;
-        color: var(--bs-list-group-active-color);
-        background-color: var(--bs-list-group-active-bg);
-        border-color: var(--bs-list-group-active-border-color);
-    }
-
-    .list-group-item + .list-group-item {
-        border-top-width: 0;
-    }
-
-    .list-group-item + .list-group-item.active {
-        margin-top: calc(-1 * var(--bs-list-group-border-width));
-        border-top-width: var(--bs-list-group-border-width);
-    }
-
-    .list-group-horizontal {
-        flex-direction: row;
-    }
-
-    .list-group-horizontal > .list-group-item:first-child:not(:last-child) {
-        border-bottom-left-radius: var(--bs-list-group-border-radius);
-        border-top-right-radius: 0;
-    }
-
-    .list-group-horizontal > .list-group-item:last-child:not(:first-child) {
-        border-top-right-radius: var(--bs-list-group-border-radius);
-        border-bottom-left-radius: 0;
-    }
-
-    .list-group-horizontal > .list-group-item.active {
-        margin-top: 0;
-    }
-
-    .list-group-horizontal > .list-group-item + .list-group-item {
-        border-top-width: var(--bs-list-group-border-width);
-        border-left-width: 0;
-    }
-
-    .list-group-horizontal > .list-group-item + .list-group-item.active {
-        margin-left: calc(-1 * var(--bs-list-group-border-width));
-        border-left-width: var(--bs-list-group-border-width);
-    }
-
-    @media (min-width: 576px) {
-        .list-group-horizontal-sm {
-            flex-direction: row;
-        }
-
-        .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {
-            border-bottom-left-radius: var(--bs-list-group-border-radius);
-            border-top-right-radius: 0;
-        }
-
-        .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {
-            border-top-right-radius: var(--bs-list-group-border-radius);
-            border-bottom-left-radius: 0;
-        }
-
-        .list-group-horizontal-sm > .list-group-item.active {
-            margin-top: 0;
-        }
-
-        .list-group-horizontal-sm > .list-group-item + .list-group-item {
-            border-top-width: var(--bs-list-group-border-width);
-            border-left-width: 0;
-        }
-
-        .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
-            margin-left: calc(-1 * var(--bs-list-group-border-width));
-            border-left-width: var(--bs-list-group-border-width);
-        }
-    }
-
-    @media (min-width: 768px) {
-        .list-group-horizontal-md {
-            flex-direction: row;
-        }
-
-        .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {
-            border-bottom-left-radius: var(--bs-list-group-border-radius);
-            border-top-right-radius: 0;
-        }
-
-        .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {
-            border-top-right-radius: var(--bs-list-group-border-radius);
-            border-bottom-left-radius: 0;
-        }
-
-        .list-group-horizontal-md > .list-group-item.active {
-            margin-top: 0;
-        }
-
-        .list-group-horizontal-md > .list-group-item + .list-group-item {
-            border-top-width: var(--bs-list-group-border-width);
-            border-left-width: 0;
-        }
-
-        .list-group-horizontal-md > .list-group-item + .list-group-item.active {
-            margin-left: calc(-1 * var(--bs-list-group-border-width));
-            border-left-width: var(--bs-list-group-border-width);
-        }
-    }
-
-    @media (min-width: 992px) {
-        .list-group-horizontal-lg {
-            flex-direction: row;
-        }
-
-        .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {
-            border-bottom-left-radius: var(--bs-list-group-border-radius);
-            border-top-right-radius: 0;
-        }
-
-        .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {
-            border-top-right-radius: var(--bs-list-group-border-radius);
-            border-bottom-left-radius: 0;
-        }
-
-        .list-group-horizontal-lg > .list-group-item.active {
-            margin-top: 0;
-        }
-
-        .list-group-horizontal-lg > .list-group-item + .list-group-item {
-            border-top-width: var(--bs-list-group-border-width);
-            border-left-width: 0;
-        }
-
-        .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
-            margin-left: calc(-1 * var(--bs-list-group-border-width));
-            border-left-width: var(--bs-list-group-border-width);
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .list-group-horizontal-xl {
-            flex-direction: row;
-        }
-
-        .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {
-            border-bottom-left-radius: var(--bs-list-group-border-radius);
-            border-top-right-radius: 0;
-        }
-
-        .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {
-            border-top-right-radius: var(--bs-list-group-border-radius);
-            border-bottom-left-radius: 0;
-        }
-
-        .list-group-horizontal-xl > .list-group-item.active {
-            margin-top: 0;
-        }
-
-        .list-group-horizontal-xl > .list-group-item + .list-group-item {
-            border-top-width: var(--bs-list-group-border-width);
-            border-left-width: 0;
-        }
-
-        .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
-            margin-left: calc(-1 * var(--bs-list-group-border-width));
-            border-left-width: var(--bs-list-group-border-width);
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .list-group-horizontal-xxl {
-            flex-direction: row;
-        }
-
-        .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) {
-            border-bottom-left-radius: var(--bs-list-group-border-radius);
-            border-top-right-radius: 0;
-        }
-
-        .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) {
-            border-top-right-radius: var(--bs-list-group-border-radius);
-            border-bottom-left-radius: 0;
-        }
-
-        .list-group-horizontal-xxl > .list-group-item.active {
-            margin-top: 0;
-        }
-
-        .list-group-horizontal-xxl > .list-group-item + .list-group-item {
-            border-top-width: var(--bs-list-group-border-width);
-            border-left-width: 0;
-        }
-
-        .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {
-            margin-left: calc(-1 * var(--bs-list-group-border-width));
-            border-left-width: var(--bs-list-group-border-width);
-        }
-    }
-
-    .list-group-flush {
-        border-radius: 0;
-    }
-
-    .list-group-flush > .list-group-item {
-        border-width: 0 0 var(--bs-list-group-border-width);
-    }
-
-    .list-group-flush > .list-group-item:last-child {
-        border-bottom-width: 0;
-    }
-
-    .list-group-item-primary {
-        --bs-list-group-color: var(--bs-primary-text-emphasis);
-        --bs-list-group-bg: var(--bs-primary-bg-subtle);
-        --bs-list-group-border-color: var(--bs-primary-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);
-        --bs-list-group-active-color: var(--bs-primary-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-primary-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);
-    }
-
-    .list-group-item-secondary {
-        --bs-list-group-color: var(--bs-secondary-text-emphasis);
-        --bs-list-group-bg: var(--bs-secondary-bg-subtle);
-        --bs-list-group-border-color: var(--bs-secondary-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);
-        --bs-list-group-active-color: var(--bs-secondary-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);
-    }
-
-    .list-group-item-success {
-        --bs-list-group-color: var(--bs-success-text-emphasis);
-        --bs-list-group-bg: var(--bs-success-bg-subtle);
-        --bs-list-group-border-color: var(--bs-success-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-success-border-subtle);
-        --bs-list-group-active-color: var(--bs-success-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-success-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-success-text-emphasis);
-    }
-
-    .list-group-item-info {
-        --bs-list-group-color: var(--bs-info-text-emphasis);
-        --bs-list-group-bg: var(--bs-info-bg-subtle);
-        --bs-list-group-border-color: var(--bs-info-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-info-border-subtle);
-        --bs-list-group-active-color: var(--bs-info-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-info-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-info-text-emphasis);
-    }
-
-    .list-group-item-warning {
-        --bs-list-group-color: var(--bs-warning-text-emphasis);
-        --bs-list-group-bg: var(--bs-warning-bg-subtle);
-        --bs-list-group-border-color: var(--bs-warning-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);
-        --bs-list-group-active-color: var(--bs-warning-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-warning-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);
-    }
-
-    .list-group-item-danger {
-        --bs-list-group-color: var(--bs-danger-text-emphasis);
-        --bs-list-group-bg: var(--bs-danger-bg-subtle);
-        --bs-list-group-border-color: var(--bs-danger-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);
-        --bs-list-group-active-color: var(--bs-danger-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-danger-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);
-    }
-
-    .list-group-item-light {
-        --bs-list-group-color: var(--bs-light-text-emphasis);
-        --bs-list-group-bg: var(--bs-light-bg-subtle);
-        --bs-list-group-border-color: var(--bs-light-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-light-border-subtle);
-        --bs-list-group-active-color: var(--bs-light-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-light-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-light-text-emphasis);
-    }
-
-    .list-group-item-dark {
-        --bs-list-group-color: var(--bs-dark-text-emphasis);
-        --bs-list-group-bg: var(--bs-dark-bg-subtle);
-        --bs-list-group-border-color: var(--bs-dark-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);
-        --bs-list-group-active-color: var(--bs-dark-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-dark-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);
-    }
-
-    .btn-close {
-        --bs-btn-close-color: #000;
-        --bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23000%27%3e%3cpath d=%27M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z%27/%3e%3c/svg%3e");
-        --bs-btn-close-opacity: 0.5;
-        --bs-btn-close-hover-opacity: 0.75;
-        --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-        --bs-btn-close-focus-opacity: 1;
-        --bs-btn-close-disabled-opacity: 0.25;
-        --bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);
-        box-sizing: content-box;
-        width: 1em;
-        height: 1em;
-        padding: 0.25em 0.25em;
-        color: var(--bs-btn-close-color);
-        background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;
-        border: 0;
-        border-radius: 0.375rem;
-        opacity: var(--bs-btn-close-opacity);
-    }
-
-    .btn-close:hover {
-        color: var(--bs-btn-close-color);
-        text-decoration: none;
-        opacity: var(--bs-btn-close-hover-opacity);
-    }
-
-    .btn-close:focus {
-        outline: 0;
-        box-shadow: var(--bs-btn-close-focus-shadow);
-        opacity: var(--bs-btn-close-focus-opacity);
-    }
-
-    .btn-close:disabled, .btn-close.disabled {
-        pointer-events: none;
-        -webkit-user-select: none;
-        user-select: none;
-        opacity: var(--bs-btn-close-disabled-opacity);
-    }
-
-    .btn-close-white {
-        filter: var(--bs-btn-close-white-filter);
-    }
-
-    [data-bs-theme=dark] .btn-close {
-        filter: var(--bs-btn-close-white-filter);
-    }
-
-    .toast {
-        --bs-toast-zindex: 1090;
-        --bs-toast-padding-x: 0.75rem;
-        --bs-toast-padding-y: 0.5rem;
-        --bs-toast-spacing: 1.5rem;
-        --bs-toast-max-width: 350px;
-        --bs-toast-font-size: 0.875rem;
-        --bs-toast-color: ;
-        --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);
-        --bs-toast-border-width: var(--bs-border-width);
-        --bs-toast-border-color: var(--bs-border-color-translucent);
-        --bs-toast-border-radius: var(--bs-border-radius);
-        --bs-toast-box-shadow: var(--bs-box-shadow);
-        --bs-toast-header-color: var(--bs-secondary-color);
-        --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);
-        --bs-toast-header-border-color: var(--bs-border-color-translucent);
-        width: var(--bs-toast-max-width);
-        max-width: 100%;
-        font-size: var(--bs-toast-font-size);
-        color: var(--bs-toast-color);
-        pointer-events: auto;
-        background-color: var(--bs-toast-bg);
-        background-clip: padding-box;
-        border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);
-        box-shadow: var(--bs-toast-box-shadow);
-        border-radius: var(--bs-toast-border-radius);
-    }
-
-    .toast.showing {
-        opacity: 0;
-    }
-
-    .toast:not(.show) {
-        display: none;
-    }
-
-    .toast-container {
-        --bs-toast-zindex: 1090;
-        position: absolute;
-        z-index: var(--bs-toast-zindex);
-        width: max-content;
-        max-width: 100%;
-        pointer-events: none;
-    }
-
-    .toast-container > :not(:last-child) {
-        margin-bottom: var(--bs-toast-spacing);
-    }
-
-    .toast-header {
-        display: flex;
-        align-items: center;
-        padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);
-        color: var(--bs-toast-header-color);
-        background-color: var(--bs-toast-header-bg);
-        background-clip: padding-box;
-        border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);
-        border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
-        border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
-    }
-
-    .toast-header .btn-close {
-        margin-right: calc(-0.5 * var(--bs-toast-padding-x));
-        margin-left: var(--bs-toast-padding-x);
-    }
-
-    .toast-body {
-        padding: var(--bs-toast-padding-x);
-        word-wrap: break-word;
-    }
-
-    .modal {
-        --bs-modal-zindex: 1055;
-        --bs-modal-width: 500px;
-        --bs-modal-padding: 1rem;
-        --bs-modal-margin: 0.5rem;
-        --bs-modal-color: ;
-        --bs-modal-bg: var(--bs-body-bg);
-        --bs-modal-border-color: var(--bs-border-color-translucent);
-        --bs-modal-border-width: var(--bs-border-width);
-        --bs-modal-border-radius: var(--bs-border-radius-lg);
-        --bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
-        --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));
-        --bs-modal-header-padding-x: 1rem;
-        --bs-modal-header-padding-y: 1rem;
-        --bs-modal-header-padding: 1rem 1rem;
-        --bs-modal-header-border-color: var(--bs-border-color);
-        --bs-modal-header-border-width: var(--bs-border-width);
-        --bs-modal-title-line-height: 1.5;
-        --bs-modal-footer-gap: 0.5rem;
-        --bs-modal-footer-bg: ;
-        --bs-modal-footer-border-color: var(--bs-border-color);
-        --bs-modal-footer-border-width: var(--bs-border-width);
-        position: fixed;
-        top: 0;
-        left: 0;
-        z-index: var(--bs-modal-zindex);
-        display: none;
-        width: 100%;
-        height: 100%;
-        overflow-x: hidden;
-        overflow-y: auto;
-        outline: 0;
-    }
-
-    .modal-dialog {
-        position: relative;
-        width: auto;
-        margin: var(--bs-modal-margin);
-        pointer-events: none;
-    }
-
-    .modal.fade .modal-dialog {
-        transition: transform 0.3s ease-out;
-        transform: translate(0, -50px);
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .modal.fade .modal-dialog {
-            transition: none;
-        }
-    }
-
-    .modal.show .modal-dialog {
-        transform: none;
-    }
-
-    .modal.modal-static .modal-dialog {
-        transform: scale(1.02);
-    }
-
-    .modal-dialog-scrollable {
-        height: calc(100% - var(--bs-modal-margin) * 2);
-    }
-
-    .modal-dialog-scrollable .modal-content {
-        max-height: 100%;
-        overflow: hidden;
-    }
-
-    .modal-dialog-scrollable .modal-body {
-        overflow-y: auto;
-    }
-
-    .modal-dialog-centered {
-        display: flex;
-        align-items: center;
-        min-height: calc(100% - var(--bs-modal-margin) * 2);
-    }
-
-    .modal-content {
-        position: relative;
-        display: flex;
-        flex-direction: column;
-        width: 100%;
-        color: var(--bs-modal-color);
-        pointer-events: auto;
-        background-color: var(--bs-modal-bg);
-        background-clip: padding-box;
-        border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);
-        border-radius: var(--bs-modal-border-radius);
-        outline: 0;
-    }
-
-    .modal-backdrop {
-        --bs-backdrop-zindex: 1050;
-        --bs-backdrop-bg: #000;
-        --bs-backdrop-opacity: 0.5;
-        position: fixed;
-        top: 0;
-        left: 0;
-        z-index: var(--bs-backdrop-zindex);
-        width: 100vw;
-        height: 100vh;
-        background-color: var(--bs-backdrop-bg);
-    }
-
-    .modal-backdrop.fade {
-        opacity: 0;
-    }
-
-    .modal-backdrop.show {
-        opacity: var(--bs-backdrop-opacity);
-    }
-
-    .modal-header {
-        display: flex;
-        flex-shrink: 0;
-        align-items: center;
-        justify-content: space-between;
-        padding: var(--bs-modal-header-padding);
-        border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
-        border-top-left-radius: var(--bs-modal-inner-border-radius);
-        border-top-right-radius: var(--bs-modal-inner-border-radius);
-    }
-
-    .modal-header .btn-close {
-        padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);
-        margin: calc(-0.5 * var(--bs-modal-header-padding-y)) calc(-0.5 * var(--bs-modal-header-padding-x)) calc(-0.5 * var(--bs-modal-header-padding-y)) auto;
-    }
-
-    .modal-title {
-        margin-bottom: 0;
-        line-height: var(--bs-modal-title-line-height);
-    }
-
-    .modal-body {
-        position: relative;
-        flex: 1 1 auto;
-        padding: var(--bs-modal-padding);
-    }
-
-    .modal-footer {
-        display: flex;
-        flex-shrink: 0;
-        flex-wrap: wrap;
-        align-items: center;
-        justify-content: flex-end;
-        padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);
-        background-color: var(--bs-modal-footer-bg);
-        border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);
-        border-bottom-right-radius: var(--bs-modal-inner-border-radius);
-        border-bottom-left-radius: var(--bs-modal-inner-border-radius);
-    }
-
-    .modal-footer > * {
-        margin: calc(var(--bs-modal-footer-gap) * 0.5);
-    }
-
-    @media (min-width: 576px) {
-        .modal {
-            --bs-modal-margin: 1.75rem;
-            --bs-modal-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
-        }
-
-        .modal-dialog {
-            max-width: var(--bs-modal-width);
-            margin-right: auto;
-            margin-left: auto;
-        }
-
-        .modal-sm {
-            --bs-modal-width: 300px;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .modal-lg,
-        .modal-xl {
-            --bs-modal-width: 800px;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .modal-xl {
-            --bs-modal-width: 1140px;
-        }
-    }
-
-    .modal-fullscreen {
-        width: 100vw;
-        max-width: none;
-        height: 100%;
-        margin: 0;
-    }
-
-    .modal-fullscreen .modal-content {
-        height: 100%;
-        border: 0;
-        border-radius: 0;
-    }
-
-    .modal-fullscreen .modal-header,
-    .modal-fullscreen .modal-footer {
-        border-radius: 0;
-    }
-
-    .modal-fullscreen .modal-body {
-        overflow-y: auto;
-    }
-
-    @media (max-width: 575.98px) {
-        .modal-fullscreen-sm-down {
-            width: 100vw;
-            max-width: none;
-            height: 100%;
-            margin: 0;
-        }
-
-        .modal-fullscreen-sm-down .modal-content {
-            height: 100%;
-            border: 0;
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-sm-down .modal-header,
-        .modal-fullscreen-sm-down .modal-footer {
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-sm-down .modal-body {
-            overflow-y: auto;
-        }
-    }
-
-    @media (max-width: 767.98px) {
-        .modal-fullscreen-md-down {
-            width: 100vw;
-            max-width: none;
-            height: 100%;
-            margin: 0;
-        }
-
-        .modal-fullscreen-md-down .modal-content {
-            height: 100%;
-            border: 0;
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-md-down .modal-header,
-        .modal-fullscreen-md-down .modal-footer {
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-md-down .modal-body {
-            overflow-y: auto;
-        }
-    }
-
-    @media (max-width: 991.98px) {
-        .modal-fullscreen-lg-down {
-            width: 100vw;
-            max-width: none;
-            height: 100%;
-            margin: 0;
-        }
-
-        .modal-fullscreen-lg-down .modal-content {
-            height: 100%;
-            border: 0;
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-lg-down .modal-header,
-        .modal-fullscreen-lg-down .modal-footer {
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-lg-down .modal-body {
-            overflow-y: auto;
-        }
-    }
-
-    @media (max-width: 1199.98px) {
-        .modal-fullscreen-xl-down {
-            width: 100vw;
-            max-width: none;
-            height: 100%;
-            margin: 0;
-        }
-
-        .modal-fullscreen-xl-down .modal-content {
-            height: 100%;
-            border: 0;
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-xl-down .modal-header,
-        .modal-fullscreen-xl-down .modal-footer {
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-xl-down .modal-body {
-            overflow-y: auto;
-        }
-    }
-
-    @media (max-width: 1399.98px) {
-        .modal-fullscreen-xxl-down {
-            width: 100vw;
-            max-width: none;
-            height: 100%;
-            margin: 0;
-        }
-
-        .modal-fullscreen-xxl-down .modal-content {
-            height: 100%;
-            border: 0;
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-xxl-down .modal-header,
-        .modal-fullscreen-xxl-down .modal-footer {
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-xxl-down .modal-body {
-            overflow-y: auto;
-        }
-    }
-
-    .tooltip {
-        --bs-tooltip-zindex: 1080;
-        --bs-tooltip-max-width: 200px;
-        --bs-tooltip-padding-x: 0.5rem;
-        --bs-tooltip-padding-y: 0.25rem;
-        --bs-tooltip-margin: ;
-        --bs-tooltip-font-size: 0.875rem;
-        --bs-tooltip-color: var(--bs-body-bg);
-        --bs-tooltip-bg: var(--bs-emphasis-color);
-        --bs-tooltip-border-radius: var(--bs-border-radius);
-        --bs-tooltip-opacity: 0.9;
-        --bs-tooltip-arrow-width: 0.8rem;
-        --bs-tooltip-arrow-height: 0.4rem;
-        z-index: var(--bs-tooltip-zindex);
-        display: block;
-        margin: var(--bs-tooltip-margin);
-        font-family: var(--bs-font-sans-serif);
-        font-style: normal;
-        font-weight: 400;
-        line-height: 1.5;
-        text-align: left;
-        text-align: start;
-        text-decoration: none;
-        text-shadow: none;
-        text-transform: none;
-        letter-spacing: normal;
-        word-break: normal;
-        white-space: normal;
-        word-spacing: normal;
-        line-break: auto;
-        font-size: var(--bs-tooltip-font-size);
-        word-wrap: break-word;
-        opacity: 0;
-    }
-
-    .tooltip.show {
-        opacity: var(--bs-tooltip-opacity);
-    }
-
-    .tooltip .tooltip-arrow {
-        display: block;
-        width: var(--bs-tooltip-arrow-width);
-        height: var(--bs-tooltip-arrow-height);
-    }
-
-    .tooltip .tooltip-arrow::before {
-        position: absolute;
-        content: "";
-        border-color: transparent;
-        border-style: solid;
-    }
-
-    .bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
-        bottom: calc(-1 * var(--bs-tooltip-arrow-height));
-    }
-
-    .bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
-        top: -1px;
-        border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
-        border-top-color: var(--bs-tooltip-bg);
-    }
-
-    /* rtl:begin:ignore */
-    .bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
-        left: calc(-1 * var(--bs-tooltip-arrow-height));
-        width: var(--bs-tooltip-arrow-height);
-        height: var(--bs-tooltip-arrow-width);
-    }
-
-    .bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
-        right: -1px;
-        border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
-        border-right-color: var(--bs-tooltip-bg);
-    }
-
-    /* rtl:end:ignore */
-    .bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
-        top: calc(-1 * var(--bs-tooltip-arrow-height));
-    }
-
-    .bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
-        bottom: -1px;
-        border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
-        border-bottom-color: var(--bs-tooltip-bg);
-    }
-
-    /* rtl:begin:ignore */
-    .bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
-        right: calc(-1 * var(--bs-tooltip-arrow-height));
-        width: var(--bs-tooltip-arrow-height);
-        height: var(--bs-tooltip-arrow-width);
-    }
-
-    .bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
-        left: -1px;
-        border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
-        border-left-color: var(--bs-tooltip-bg);
-    }
-
-    /* rtl:end:ignore */
-    .tooltip-inner {
-        max-width: var(--bs-tooltip-max-width);
-        padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);
-        color: var(--bs-tooltip-color);
-        text-align: center;
-        background-color: var(--bs-tooltip-bg);
-        border-radius: var(--bs-tooltip-border-radius);
-    }
-
-    .popover {
-        --bs-popover-zindex: 1070;
-        --bs-popover-max-width: 276px;
-        --bs-popover-font-size: 0.875rem;
-        --bs-popover-bg: var(--bs-body-bg);
-        --bs-popover-border-width: var(--bs-border-width);
-        --bs-popover-border-color: var(--bs-border-color-translucent);
-        --bs-popover-border-radius: var(--bs-border-radius-lg);
-        --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));
-        --bs-popover-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
-        --bs-popover-header-padding-x: 1rem;
-        --bs-popover-header-padding-y: 0.5rem;
-        --bs-popover-header-font-size: 1rem;
-        --bs-popover-header-color: inherit;
-        --bs-popover-header-bg: var(--bs-secondary-bg);
-        --bs-popover-body-padding-x: 1rem;
-        --bs-popover-body-padding-y: 1rem;
-        --bs-popover-body-color: var(--bs-body-color);
-        --bs-popover-arrow-width: 1rem;
-        --bs-popover-arrow-height: 0.5rem;
-        --bs-popover-arrow-border: var(--bs-popover-border-color);
-        z-index: var(--bs-popover-zindex);
-        display: block;
-        max-width: var(--bs-popover-max-width);
-        font-family: var(--bs-font-sans-serif);
-        font-style: normal;
-        font-weight: 400;
-        line-height: 1.5;
-        text-align: left;
-        text-align: start;
-        text-decoration: none;
-        text-shadow: none;
-        text-transform: none;
-        letter-spacing: normal;
-        word-break: normal;
-        white-space: normal;
-        word-spacing: normal;
-        line-break: auto;
-        font-size: var(--bs-popover-font-size);
-        word-wrap: break-word;
-        background-color: var(--bs-popover-bg);
-        background-clip: padding-box;
-        border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
-        border-radius: var(--bs-popover-border-radius);
-    }
-
-    .popover .popover-arrow {
-        display: block;
-        width: var(--bs-popover-arrow-width);
-        height: var(--bs-popover-arrow-height);
-    }
-
-    .popover .popover-arrow::before, .popover .popover-arrow::after {
-        position: absolute;
-        display: block;
-        content: "";
-        border-color: transparent;
-        border-style: solid;
-        border-width: 0;
-    }
-
-    .bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {
-        bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
-    }
-
-    .bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
-        border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
-    }
-
-    .bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {
-        bottom: 0;
-        border-top-color: var(--bs-popover-arrow-border);
-    }
-
-    .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
-        bottom: var(--bs-popover-border-width);
-        border-top-color: var(--bs-popover-bg);
-    }
-
-    /* rtl:begin:ignore */
-    .bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {
-        left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
-        width: var(--bs-popover-arrow-height);
-        height: var(--bs-popover-arrow-width);
-    }
-
-    .bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
-        border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
-    }
-
-    .bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {
-        left: 0;
-        border-right-color: var(--bs-popover-arrow-border);
-    }
-
-    .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
-        left: var(--bs-popover-border-width);
-        border-right-color: var(--bs-popover-bg);
-    }
-
-    /* rtl:end:ignore */
-    .bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {
-        top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
-    }
-
-    .bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
-        border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
-    }
-
-    .bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {
-        top: 0;
-        border-bottom-color: var(--bs-popover-arrow-border);
-    }
-
-    .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
-        top: var(--bs-popover-border-width);
-        border-bottom-color: var(--bs-popover-bg);
-    }
-
-    .bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {
-        position: absolute;
-        top: 0;
-        left: 50%;
-        display: block;
-        width: var(--bs-popover-arrow-width);
-        margin-left: calc(-0.5 * var(--bs-popover-arrow-width));
-        content: "";
-        border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);
-    }
-
-    /* rtl:begin:ignore */
-    .bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {
-        right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
-        width: var(--bs-popover-arrow-height);
-        height: var(--bs-popover-arrow-width);
-    }
-
-    .bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
-        border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
-    }
-
-    .bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {
-        right: 0;
-        border-left-color: var(--bs-popover-arrow-border);
-    }
-
-    .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
-        right: var(--bs-popover-border-width);
-        border-left-color: var(--bs-popover-bg);
-    }
-
-    /* rtl:end:ignore */
-    .popover-header {
-        padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);
-        margin-bottom: 0;
-        font-size: var(--bs-popover-header-font-size);
-        color: var(--bs-popover-header-color);
-        background-color: var(--bs-popover-header-bg);
-        border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
-        border-top-left-radius: var(--bs-popover-inner-border-radius);
-        border-top-right-radius: var(--bs-popover-inner-border-radius);
-    }
-
-    .popover-header:empty {
-        display: none;
-    }
-
-    .popover-body {
-        padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);
-        color: var(--bs-popover-body-color);
-    }
-
-    .carousel {
-        position: relative;
-    }
-
-    .carousel.pointer-event {
-        touch-action: pan-y;
-    }
-
-    .carousel-inner {
-        position: relative;
-        width: 100%;
-        overflow: hidden;
-    }
-
-    .carousel-inner::after {
-        display: block;
-        clear: both;
-        content: "";
-    }
-
-    .carousel-item {
-        position: relative;
-        display: none;
-        float: left;
-        width: 100%;
-        margin-right: -100%;
-        backface-visibility: hidden;
-        transition: transform 0.6s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .carousel-item {
-            transition: none;
-        }
-    }
-
-    .carousel-item.active,
-    .carousel-item-next,
-    .carousel-item-prev {
-        display: block;
-    }
-
-    .carousel-item-next:not(.carousel-item-start),
-    .active.carousel-item-end {
-        transform: translateX(100%);
-    }
-
-    .carousel-item-prev:not(.carousel-item-end),
-    .active.carousel-item-start {
-        transform: translateX(-100%);
-    }
-
-    .carousel-fade .carousel-item {
-        opacity: 0;
-        transition-property: opacity;
-        transform: none;
-    }
-
-    .carousel-fade .carousel-item.active,
-    .carousel-fade .carousel-item-next.carousel-item-start,
-    .carousel-fade .carousel-item-prev.carousel-item-end {
-        z-index: 1;
-        opacity: 1;
-    }
-
-    .carousel-fade .active.carousel-item-start,
-    .carousel-fade .active.carousel-item-end {
-        z-index: 0;
-        opacity: 0;
-        transition: opacity 0s 0.6s;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .carousel-fade .active.carousel-item-start,
-        .carousel-fade .active.carousel-item-end {
-            transition: none;
-        }
-    }
-
-    .carousel-control-prev,
-    .carousel-control-next {
-        position: absolute;
-        top: 0;
-        bottom: 0;
-        z-index: 1;
-        display: flex;
-        align-items: center;
-        justify-content: center;
-        width: 15%;
-        padding: 0;
-        color: #fff;
-        text-align: center;
-        background: none;
-        border: 0;
-        opacity: 0.5;
-        transition: opacity 0.15s ease;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .carousel-control-prev,
-        .carousel-control-next {
-            transition: none;
-        }
-    }
-
-    .carousel-control-prev:hover, .carousel-control-prev:focus,
-    .carousel-control-next:hover,
-    .carousel-control-next:focus {
-        color: #fff;
-        text-decoration: none;
-        outline: 0;
-        opacity: 0.9;
-    }
-
-    .carousel-control-prev {
-        left: 0;
-    }
-
-    .carousel-control-next {
-        right: 0;
-    }
-
-    .carousel-control-prev-icon,
-    .carousel-control-next-icon {
-        display: inline-block;
-        width: 2rem;
-        height: 2rem;
-        background-repeat: no-repeat;
-        background-position: 50%;
-        background-size: 100% 100%;
-    }
-
-    /* rtl:options: {
-  "autoRename": true,
-  "stringMap":[ {
-    "name"    : "prev-next",
-    "search"  : "prev",
-    "replace" : "next"
-  } ]
-} */
-    .carousel-control-prev-icon {
-        background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23fff%27%3e%3cpath d=%27M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z%27/%3e%3c/svg%3e");
-    }
-
-    .carousel-control-next-icon {
-        background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23fff%27%3e%3cpath d=%27M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
-    }
-
-    .carousel-indicators {
-        position: absolute;
-        right: 0;
-        bottom: 0;
-        left: 0;
-        z-index: 2;
-        display: flex;
-        justify-content: center;
-        padding: 0;
-        margin-right: 15%;
-        margin-bottom: 1rem;
-        margin-left: 15%;
-    }
-
-    .carousel-indicators [data-bs-target] {
-        box-sizing: content-box;
-        flex: 0 1 auto;
-        width: 30px;
-        height: 3px;
-        padding: 0;
-        margin-right: 3px;
-        margin-left: 3px;
-        text-indent: -999px;
-        cursor: pointer;
-        background-color: #fff;
-        background-clip: padding-box;
-        border: 0;
-        border-top: 10px solid transparent;
-        border-bottom: 10px solid transparent;
-        opacity: 0.5;
-        transition: opacity 0.6s ease;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .carousel-indicators [data-bs-target] {
-            transition: none;
-        }
-    }
-
-    .carousel-indicators .active {
-        opacity: 1;
-    }
-
-    .carousel-caption {
-        position: absolute;
-        right: 15%;
-        bottom: 1.25rem;
-        left: 15%;
-        padding-top: 1.25rem;
-        padding-bottom: 1.25rem;
-        color: #fff;
-        text-align: center;
-    }
-
-    .carousel-dark .carousel-control-prev-icon,
-    .carousel-dark .carousel-control-next-icon {
-        filter: invert(1) grayscale(100);
-    }
-
-    .carousel-dark .carousel-indicators [data-bs-target] {
-        background-color: #000;
-    }
-
-    .carousel-dark .carousel-caption {
-        color: #000;
-    }
-
-    [data-bs-theme=dark] .carousel .carousel-control-prev-icon,
-    [data-bs-theme=dark] .carousel .carousel-control-next-icon, [data-bs-theme=dark].carousel .carousel-control-prev-icon,
-    [data-bs-theme=dark].carousel .carousel-control-next-icon {
-        filter: invert(1) grayscale(100);
-    }
-
-    [data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target], [data-bs-theme=dark].carousel .carousel-indicators [data-bs-target] {
-        background-color: #000;
-    }
-
-    [data-bs-theme=dark] .carousel .carousel-caption, [data-bs-theme=dark].carousel .carousel-caption {
-        color: #000;
-    }
-
-    .spinner-grow,
-    .spinner-border {
-        display: inline-block;
-        width: var(--bs-spinner-width);
-        height: var(--bs-spinner-height);
-        vertical-align: var(--bs-spinner-vertical-align);
-        border-radius: 50%;
-        animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
-    }
-
-    @keyframes spinner-border {
-        to {
-            transform: rotate(360deg) /* rtl:ignore */;
-        }
-    }
-
-    .spinner-border {
-        --bs-spinner-width: 2rem;
-        --bs-spinner-height: 2rem;
-        --bs-spinner-vertical-align: -0.125em;
-        --bs-spinner-border-width: 0.25em;
-        --bs-spinner-animation-speed: 0.75s;
-        --bs-spinner-animation-name: spinner-border;
-        border: var(--bs-spinner-border-width) solid currentcolor;
-        border-right-color: transparent;
-    }
-
-    .spinner-border-sm {
-        --bs-spinner-width: 1rem;
-        --bs-spinner-height: 1rem;
-        --bs-spinner-border-width: 0.2em;
-    }
-
-    @keyframes spinner-grow {
-        0% {
-            transform: scale(0);
-        }
-        50% {
-            opacity: 1;
-            transform: none;
-        }
-    }
-
-    .spinner-grow {
-        --bs-spinner-width: 2rem;
-        --bs-spinner-height: 2rem;
-        --bs-spinner-vertical-align: -0.125em;
-        --bs-spinner-animation-speed: 0.75s;
-        --bs-spinner-animation-name: spinner-grow;
-        background-color: currentcolor;
-        opacity: 0;
-    }
-
-    .spinner-grow-sm {
-        --bs-spinner-width: 1rem;
-        --bs-spinner-height: 1rem;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .spinner-border,
-        .spinner-grow {
-            --bs-spinner-animation-speed: 1.5s;
-        }
-    }
-
-    .offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {
-        --bs-offcanvas-zindex: 1045;
-        --bs-offcanvas-width: 400px;
-        --bs-offcanvas-height: 30vh;
-        --bs-offcanvas-padding-x: 1rem;
-        --bs-offcanvas-padding-y: 1rem;
-        --bs-offcanvas-color: var(--bs-body-color);
-        --bs-offcanvas-bg: var(--bs-body-bg);
-        --bs-offcanvas-border-width: var(--bs-border-width);
-        --bs-offcanvas-border-color: var(--bs-border-color-translucent);
-        --bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
-        --bs-offcanvas-transition: transform 0.3s ease-in-out;
-        --bs-offcanvas-title-line-height: 1.5;
-    }
-
-    @media (max-width: 575.98px) {
-        .offcanvas-sm {
-            position: fixed;
-            bottom: 0;
-            z-index: var(--bs-offcanvas-zindex);
-            display: flex;
-            flex-direction: column;
-            max-width: 100%;
-            color: var(--bs-offcanvas-color);
-            visibility: hidden;
-            background-color: var(--bs-offcanvas-bg);
-            background-clip: padding-box;
-            outline: 0;
-            transition: var(--bs-offcanvas-transition);
-        }
-    }
-
-    @media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {
-        .offcanvas-sm {
-            transition: none;
-        }
-    }
-
-    @media (max-width: 575.98px) {
-        .offcanvas-sm.offcanvas-start {
-            top: 0;
-            left: 0;
-            width: var(--bs-offcanvas-width);
-            border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(-100%);
-        }
-
-        .offcanvas-sm.offcanvas-end {
-            top: 0;
-            right: 0;
-            width: var(--bs-offcanvas-width);
-            border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(100%);
-        }
-
-        .offcanvas-sm.offcanvas-top {
-            top: 0;
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(-100%);
-        }
-
-        .offcanvas-sm.offcanvas-bottom {
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(100%);
-        }
-
-        .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {
-            transform: none;
-        }
-
-        .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {
-            visibility: visible;
-        }
-    }
-
-    @media (min-width: 576px) {
-        .offcanvas-sm {
-            --bs-offcanvas-height: auto;
-            --bs-offcanvas-border-width: 0;
-            background-color: transparent !important;
-        }
-
-        .offcanvas-sm .offcanvas-header {
-            display: none;
-        }
-
-        .offcanvas-sm .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-            background-color: transparent !important;
-        }
-    }
-
-    @media (max-width: 767.98px) {
-        .offcanvas-md {
-            position: fixed;
-            bottom: 0;
-            z-index: var(--bs-offcanvas-zindex);
-            display: flex;
-            flex-direction: column;
-            max-width: 100%;
-            color: var(--bs-offcanvas-color);
-            visibility: hidden;
-            background-color: var(--bs-offcanvas-bg);
-            background-clip: padding-box;
-            outline: 0;
-            transition: var(--bs-offcanvas-transition);
-        }
-    }
-
-    @media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {
-        .offcanvas-md {
-            transition: none;
-        }
-    }
-
-    @media (max-width: 767.98px) {
-        .offcanvas-md.offcanvas-start {
-            top: 0;
-            left: 0;
-            width: var(--bs-offcanvas-width);
-            border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(-100%);
-        }
-
-        .offcanvas-md.offcanvas-end {
-            top: 0;
-            right: 0;
-            width: var(--bs-offcanvas-width);
-            border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(100%);
-        }
-
-        .offcanvas-md.offcanvas-top {
-            top: 0;
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(-100%);
-        }
-
-        .offcanvas-md.offcanvas-bottom {
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(100%);
-        }
-
-        .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {
-            transform: none;
-        }
-
-        .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {
-            visibility: visible;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .offcanvas-md {
-            --bs-offcanvas-height: auto;
-            --bs-offcanvas-border-width: 0;
-            background-color: transparent !important;
-        }
-
-        .offcanvas-md .offcanvas-header {
-            display: none;
-        }
-
-        .offcanvas-md .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-            background-color: transparent !important;
-        }
-    }
-
-    @media (max-width: 991.98px) {
-        .offcanvas-lg {
-            position: fixed;
-            bottom: 0;
-            z-index: var(--bs-offcanvas-zindex);
-            display: flex;
-            flex-direction: column;
-            max-width: 100%;
-            color: var(--bs-offcanvas-color);
-            visibility: hidden;
-            background-color: var(--bs-offcanvas-bg);
-            background-clip: padding-box;
-            outline: 0;
-            transition: var(--bs-offcanvas-transition);
-        }
-    }
-
-    @media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {
-        .offcanvas-lg {
-            transition: none;
-        }
-    }
-
-    @media (max-width: 991.98px) {
-        .offcanvas-lg.offcanvas-start {
-            top: 0;
-            left: 0;
-            width: var(--bs-offcanvas-width);
-            border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(-100%);
-        }
-
-        .offcanvas-lg.offcanvas-end {
-            top: 0;
-            right: 0;
-            width: var(--bs-offcanvas-width);
-            border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(100%);
-        }
-
-        .offcanvas-lg.offcanvas-top {
-            top: 0;
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(-100%);
-        }
-
-        .offcanvas-lg.offcanvas-bottom {
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(100%);
-        }
-
-        .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {
-            transform: none;
-        }
-
-        .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {
-            visibility: visible;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .offcanvas-lg {
-            --bs-offcanvas-height: auto;
-            --bs-offcanvas-border-width: 0;
-            background-color: transparent !important;
-        }
-
-        .offcanvas-lg .offcanvas-header {
-            display: none;
-        }
-
-        .offcanvas-lg .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-            background-color: transparent !important;
-        }
-    }
-
-    @media (max-width: 1199.98px) {
-        .offcanvas-xl {
-            position: fixed;
-            bottom: 0;
-            z-index: var(--bs-offcanvas-zindex);
-            display: flex;
-            flex-direction: column;
-            max-width: 100%;
-            color: var(--bs-offcanvas-color);
-            visibility: hidden;
-            background-color: var(--bs-offcanvas-bg);
-            background-clip: padding-box;
-            outline: 0;
-            transition: var(--bs-offcanvas-transition);
-        }
-    }
-
-    @media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {
-        .offcanvas-xl {
-            transition: none;
-        }
-    }
-
-    @media (max-width: 1199.98px) {
-        .offcanvas-xl.offcanvas-start {
-            top: 0;
-            left: 0;
-            width: var(--bs-offcanvas-width);
-            border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(-100%);
-        }
-
-        .offcanvas-xl.offcanvas-end {
-            top: 0;
-            right: 0;
-            width: var(--bs-offcanvas-width);
-            border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(100%);
-        }
-
-        .offcanvas-xl.offcanvas-top {
-            top: 0;
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(-100%);
-        }
-
-        .offcanvas-xl.offcanvas-bottom {
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(100%);
-        }
-
-        .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {
-            transform: none;
-        }
-
-        .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {
-            visibility: visible;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .offcanvas-xl {
-            --bs-offcanvas-height: auto;
-            --bs-offcanvas-border-width: 0;
-            background-color: transparent !important;
-        }
-
-        .offcanvas-xl .offcanvas-header {
-            display: none;
-        }
-
-        .offcanvas-xl .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-            background-color: transparent !important;
-        }
-    }
-
-    @media (max-width: 1399.98px) {
-        .offcanvas-xxl {
-            position: fixed;
-            bottom: 0;
-            z-index: var(--bs-offcanvas-zindex);
-            display: flex;
-            flex-direction: column;
-            max-width: 100%;
-            color: var(--bs-offcanvas-color);
-            visibility: hidden;
-            background-color: var(--bs-offcanvas-bg);
-            background-clip: padding-box;
-            outline: 0;
-            transition: var(--bs-offcanvas-transition);
-        }
-    }
-
-    @media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {
-        .offcanvas-xxl {
-            transition: none;
-        }
-    }
-
-    @media (max-width: 1399.98px) {
-        .offcanvas-xxl.offcanvas-start {
-            top: 0;
-            left: 0;
-            width: var(--bs-offcanvas-width);
-            border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(-100%);
-        }
-
-        .offcanvas-xxl.offcanvas-end {
-            top: 0;
-            right: 0;
-            width: var(--bs-offcanvas-width);
-            border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(100%);
-        }
-
-        .offcanvas-xxl.offcanvas-top {
-            top: 0;
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(-100%);
-        }
-
-        .offcanvas-xxl.offcanvas-bottom {
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(100%);
-        }
-
-        .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {
-            transform: none;
-        }
-
-        .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {
-            visibility: visible;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .offcanvas-xxl {
-            --bs-offcanvas-height: auto;
-            --bs-offcanvas-border-width: 0;
-            background-color: transparent !important;
-        }
-
-        .offcanvas-xxl .offcanvas-header {
-            display: none;
-        }
-
-        .offcanvas-xxl .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-            background-color: transparent !important;
-        }
-    }
-
-    .offcanvas {
-        position: fixed;
-        bottom: 0;
-        z-index: var(--bs-offcanvas-zindex);
-        display: flex;
-        flex-direction: column;
-        max-width: 100%;
-        color: var(--bs-offcanvas-color);
-        visibility: hidden;
-        background-color: var(--bs-offcanvas-bg);
-        background-clip: padding-box;
-        outline: 0;
-        transition: var(--bs-offcanvas-transition);
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .offcanvas {
-            transition: none;
-        }
-    }
-
-    .offcanvas.offcanvas-start {
-        top: 0;
-        left: 0;
-        width: var(--bs-offcanvas-width);
-        border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-        transform: translateX(-100%);
-    }
-
-    .offcanvas.offcanvas-end {
-        top: 0;
-        right: 0;
-        width: var(--bs-offcanvas-width);
-        border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-        transform: translateX(100%);
-    }
-
-    .offcanvas.offcanvas-top {
-        top: 0;
-        right: 0;
-        left: 0;
-        height: var(--bs-offcanvas-height);
-        max-height: 100%;
-        border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-        transform: translateY(-100%);
-    }
-
-    .offcanvas.offcanvas-bottom {
-        right: 0;
-        left: 0;
-        height: var(--bs-offcanvas-height);
-        max-height: 100%;
-        border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-        transform: translateY(100%);
-    }
-
-    .offcanvas.showing, .offcanvas.show:not(.hiding) {
-        transform: none;
-    }
-
-    .offcanvas.showing, .offcanvas.hiding, .offcanvas.show {
-        visibility: visible;
-    }
-
-    .offcanvas-backdrop {
-        position: fixed;
-        top: 0;
-        left: 0;
-        z-index: 1040;
-        width: 100vw;
-        height: 100vh;
-        background-color: #000;
-    }
-
-    .offcanvas-backdrop.fade {
-        opacity: 0;
-    }
-
-    .offcanvas-backdrop.show {
-        opacity: 0.5;
-    }
-
-    .offcanvas-header {
-        display: flex;
-        align-items: center;
-        justify-content: space-between;
-        padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
-    }
-
-    .offcanvas-header .btn-close {
-        padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);
-        margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));
-        margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));
-        margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));
-    }
-
-    .offcanvas-title {
-        margin-bottom: 0;
-        line-height: var(--bs-offcanvas-title-line-height);
-    }
-
-    .offcanvas-body {
-        flex-grow: 1;
-        padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
-        overflow-y: auto;
-    }
-
-    .placeholder {
-        display: inline-block;
-        min-height: 1em;
-        vertical-align: middle;
-        cursor: wait;
-        background-color: currentcolor;
-        opacity: 0.5;
-    }
-
-    .placeholder.btn::before {
-        display: inline-block;
-        content: "";
-    }
-
-    .placeholder-xs {
-        min-height: 0.6em;
-    }
-
-    .placeholder-sm {
-        min-height: 0.8em;
-    }
-
-    .placeholder-lg {
-        min-height: 1.2em;
-    }
-
-    .placeholder-glow .placeholder {
-        animation: placeholder-glow 2s ease-in-out infinite;
-    }
-
-    @keyframes placeholder-glow {
-        50% {
-            opacity: 0.2;
-        }
-    }
-
-    .placeholder-wave {
-        -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
-        mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
-        -webkit-mask-size: 200% 100%;
-        mask-size: 200% 100%;
-        animation: placeholder-wave 2s linear infinite;
-    }
-
-    @keyframes placeholder-wave {
-        100% {
-            -webkit-mask-position: -200% 0%;
-            mask-position: -200% 0%;
-        }
-    }
-
-    .clearfix::after {
-        display: block;
-        clear: both;
-        content: "";
-    }
-
-    .text-bg-primary {
-        color: #fff !important;
-        background-color: RGBA(13, 110, 253, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-secondary {
-        color: #fff !important;
-        background-color: RGBA(108, 117, 125, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-success {
-        color: #fff !important;
-        background-color: RGBA(25, 135, 84, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-info {
-        color: #000 !important;
-        background-color: RGBA(13, 202, 240, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-warning {
-        color: #000 !important;
-        background-color: RGBA(255, 193, 7, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-danger {
-        color: #fff !important;
-        background-color: RGBA(220, 53, 69, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-light {
-        color: #000 !important;
-        background-color: RGBA(248, 249, 250, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-dark {
-        color: #fff !important;
-        background-color: RGBA(33, 37, 41, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .link-primary {
-        color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-primary:hover, .link-primary:focus {
-        color: RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-secondary {
-        color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-secondary:hover, .link-secondary:focus {
-        color: RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-success {
-        color: RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-success:hover, .link-success:focus {
-        color: RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-info {
-        color: RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-info:hover, .link-info:focus {
-        color: RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-warning {
-        color: RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-warning:hover, .link-warning:focus {
-        color: RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-danger {
-        color: RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-danger:hover, .link-danger:focus {
-        color: RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-light {
-        color: RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-light:hover, .link-light:focus {
-        color: RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-dark {
-        color: RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-dark:hover, .link-dark:focus {
-        color: RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-body-emphasis {
-        color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-body-emphasis:hover, .link-body-emphasis:focus {
-        color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;
-        text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;
-    }
-
-    .focus-ring:focus {
-        outline: 0;
-        box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);
-    }
-
-    .icon-link {
-        display: inline-flex;
-        gap: 0.375rem;
-        align-items: center;
-        text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
-        text-underline-offset: 0.25em;
-        backface-visibility: hidden;
-    }
-
-    .icon-link > .bi {
-        flex-shrink: 0;
-        width: 1em;
-        height: 1em;
-        fill: currentcolor;
-        transition: 0.2s ease-in-out transform;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .icon-link > .bi {
-            transition: none;
-        }
-    }
-
-    .icon-link-hover:hover > .bi, .icon-link-hover:focus-visible > .bi {
-        transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));
-    }
-
-    .ratio {
-        position: relative;
-        width: 100%;
-    }
-
-    .ratio::before {
-        display: block;
-        padding-top: var(--bs-aspect-ratio);
-        content: "";
-    }
-
-    .ratio > * {
-        position: absolute;
-        top: 0;
-        left: 0;
-        width: 100%;
-        height: 100%;
-    }
-
-    .ratio-1x1 {
-        --bs-aspect-ratio: 100%;
-    }
-
-    .ratio-4x3 {
-        --bs-aspect-ratio: 75%;
-    }
-
-    .ratio-16x9 {
-        --bs-aspect-ratio: 56.25%;
-    }
-
-    .ratio-21x9 {
-        --bs-aspect-ratio: 42.8571428571%;
-    }
-
-    .fixed-top {
-        position: fixed;
-        top: 0;
-        right: 0;
-        left: 0;
-        z-index: 1030;
-    }
-
-    .fixed-bottom {
-        position: fixed;
-        right: 0;
-        bottom: 0;
-        left: 0;
-        z-index: 1030;
-    }
-
-    .sticky-top {
-        position: sticky;
-        top: 0;
-        z-index: 1020;
-    }
-
-    .sticky-bottom {
-        position: sticky;
-        bottom: 0;
-        z-index: 1020;
-    }
-
-    @media (min-width: 576px) {
-        .sticky-sm-top {
-            position: sticky;
-            top: 0;
-            z-index: 1020;
-        }
-
-        .sticky-sm-bottom {
-            position: sticky;
-            bottom: 0;
-            z-index: 1020;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .sticky-md-top {
-            position: sticky;
-            top: 0;
-            z-index: 1020;
-        }
-
-        .sticky-md-bottom {
-            position: sticky;
-            bottom: 0;
-            z-index: 1020;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .sticky-lg-top {
-            position: sticky;
-            top: 0;
-            z-index: 1020;
-        }
-
-        .sticky-lg-bottom {
-            position: sticky;
-            bottom: 0;
-            z-index: 1020;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .sticky-xl-top {
-            position: sticky;
-            top: 0;
-            z-index: 1020;
-        }
-
-        .sticky-xl-bottom {
-            position: sticky;
-            bottom: 0;
-            z-index: 1020;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .sticky-xxl-top {
-            position: sticky;
-            top: 0;
-            z-index: 1020;
-        }
-
-        .sticky-xxl-bottom {
-            position: sticky;
-            bottom: 0;
-            z-index: 1020;
-        }
-    }
-
-    .hstack {
-        display: flex;
-        flex-direction: row;
-        align-items: center;
-        align-self: stretch;
-    }
-
-    .vstack {
-        display: flex;
-        flex: 1 1 auto;
-        flex-direction: column;
-        align-self: stretch;
-    }
-
-    .visually-hidden,
-    .visually-hidden-focusable:not(:focus):not(:focus-within) {
-        width: 1px !important;
-        height: 1px !important;
-        padding: 0 !important;
-        margin: -1px !important;
-        overflow: hidden !important;
-        clip: rect(0, 0, 0, 0) !important;
-        white-space: nowrap !important;
-        border: 0 !important;
-    }
-
-    .visually-hidden:not(caption),
-    .visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {
-        position: absolute !important;
-    }
-
-    .stretched-link::after {
-        position: absolute;
-        top: 0;
-        right: 0;
-        bottom: 0;
-        left: 0;
-        z-index: 1;
-        content: "";
-    }
-
-    .text-truncate {
-        overflow: hidden;
-        text-overflow: ellipsis;
-        white-space: nowrap;
-    }
-
-    .vr {
-        display: inline-block;
-        align-self: stretch;
-        width: 1px;
-        min-height: 1em;
-        background-color: currentcolor;
-        opacity: 0.25;
-    }
-
-    .align-baseline {
-        vertical-align: baseline !important;
-    }
-
-    .align-top {
-        vertical-align: top !important;
-    }
-
-    .align-middle {
-        vertical-align: middle !important;
-    }
-
-    .align-bottom {
-        vertical-align: bottom !important;
-    }
-
-    .align-text-bottom {
-        vertical-align: text-bottom !important;
-    }
-
-    .align-text-top {
-        vertical-align: text-top !important;
-    }
-
-    .float-start {
-        float: left !important;
-    }
-
-    .float-end {
-        float: right !important;
-    }
-
-    .float-none {
-        float: none !important;
-    }
-
-    .object-fit-contain {
-        object-fit: contain !important;
-    }
-
-    .object-fit-cover {
-        object-fit: cover !important;
-    }
-
-    .object-fit-fill {
-        object-fit: fill !important;
-    }
-
-    .object-fit-scale {
-        object-fit: scale-down !important;
-    }
-
-    .object-fit-none {
-        object-fit: none !important;
-    }
-
-    .opacity-0 {
-        opacity: 0 !important;
-    }
-
-    .opacity-25 {
-        opacity: 0.25 !important;
-    }
-
-    .opacity-50 {
-        opacity: 0.5 !important;
-    }
-
-    .opacity-75 {
-        opacity: 0.75 !important;
-    }
-
-    .opacity-100 {
-        opacity: 1 !important;
-    }
-
-    .overflow-auto {
-        overflow: auto !important;
-    }
-
-    .overflow-hidden {
-        overflow: hidden !important;
-    }
-
-    .overflow-visible {
-        overflow: visible !important;
-    }
-
-    .overflow-scroll {
-        overflow: scroll !important;
-    }
-
-    .overflow-x-auto {
-        overflow-x: auto !important;
-    }
-
-    .overflow-x-hidden {
-        overflow-x: hidden !important;
-    }
-
-    .overflow-x-visible {
-        overflow-x: visible !important;
-    }
-
-    .overflow-x-scroll {
-        overflow-x: scroll !important;
-    }
-
-    .overflow-y-auto {
-        overflow-y: auto !important;
-    }
-
-    .overflow-y-hidden {
-        overflow-y: hidden !important;
-    }
-
-    .overflow-y-visible {
-        overflow-y: visible !important;
-    }
-
-    .overflow-y-scroll {
-        overflow-y: scroll !important;
-    }
-
-    .d-inline {
-        display: inline !important;
-    }
-
-    .d-inline-block {
-        display: inline-block !important;
-    }
-
-    .d-block {
-        display: block !important;
-    }
-
-    .d-grid {
-        display: grid !important;
-    }
-
-    .d-inline-grid {
-        display: inline-grid !important;
-    }
-
-    .d-table {
-        display: table !important;
-    }
-
-    .d-table-row {
-        display: table-row !important;
-    }
-
-    .d-table-cell {
-        display: table-cell !important;
-    }
-
-    .d-flex {
-        display: flex !important;
-    }
-
-    .d-inline-flex {
-        display: inline-flex !important;
-    }
-
-    .d-none {
-        display: none !important;
-    }
-
-    .shadow {
-        box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
-    }
-
-    .shadow-sm {
-        box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
-    }
-
-    .shadow-lg {
-        box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
-    }
-
-    .shadow-none {
-        box-shadow: none !important;
-    }
-
-    .focus-ring-primary {
-        --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-secondary {
-        --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-success {
-        --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-info {
-        --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-warning {
-        --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-danger {
-        --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-light {
-        --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-dark {
-        --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .position-static {
-        position: static !important;
-    }
-
-    .position-relative {
-        position: relative !important;
-    }
-
-    .position-absolute {
-        position: absolute !important;
-    }
-
-    .position-fixed {
-        position: fixed !important;
-    }
-
-    .position-sticky {
-        position: sticky !important;
-    }
-
-    .top-0 {
-        top: 0 !important;
-    }
-
-    .top-50 {
-        top: 50% !important;
-    }
-
-    .top-100 {
-        top: 100% !important;
-    }
-
-    .bottom-0 {
-        bottom: 0 !important;
-    }
-
-    .bottom-50 {
-        bottom: 50% !important;
-    }
-
-    .bottom-100 {
-        bottom: 100% !important;
-    }
-
-    .start-0 {
-        left: 0 !important;
-    }
-
-    .start-50 {
-        left: 50% !important;
-    }
-
-    .start-100 {
-        left: 100% !important;
-    }
-
-    .end-0 {
-        right: 0 !important;
-    }
-
-    .end-50 {
-        right: 50% !important;
-    }
-
-    .end-100 {
-        right: 100% !important;
-    }
-
-    .translate-middle {
-        transform: translate(-50%, -50%) !important;
-    }
-
-    .translate-middle-x {
-        transform: translateX(-50%) !important;
-    }
-
-    .translate-middle-y {
-        transform: translateY(-50%) !important;
-    }
-
-    .border {
-        border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
-    }
-
-    .border-0 {
-        border: 0 !important;
-    }
-
-    .border-top {
-        border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
-    }
-
-    .border-top-0 {
-        border-top: 0 !important;
-    }
-
-    .border-end {
-        border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
-    }
-
-    .border-end-0 {
-        border-right: 0 !important;
-    }
-
-    .border-bottom {
-        border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
-    }
-
-    .border-bottom-0 {
-        border-bottom: 0 !important;
-    }
-
-    .border-start {
-        border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
-    }
-
-    .border-start-0 {
-        border-left: 0 !important;
-    }
-
-    .border-primary {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-secondary {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-success {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-info {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-warning {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-danger {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-light {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-dark {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-black {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-white {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-primary-subtle {
-        border-color: var(--bs-primary-border-subtle) !important;
-    }
-
-    .border-secondary-subtle {
-        border-color: var(--bs-secondary-border-subtle) !important;
-    }
-
-    .border-success-subtle {
-        border-color: var(--bs-success-border-subtle) !important;
-    }
-
-    .border-info-subtle {
-        border-color: var(--bs-info-border-subtle) !important;
-    }
-
-    .border-warning-subtle {
-        border-color: var(--bs-warning-border-subtle) !important;
-    }
-
-    .border-danger-subtle {
-        border-color: var(--bs-danger-border-subtle) !important;
-    }
-
-    .border-light-subtle {
-        border-color: var(--bs-light-border-subtle) !important;
-    }
-
-    .border-dark-subtle {
-        border-color: var(--bs-dark-border-subtle) !important;
-    }
-
-    .border-1 {
-        border-width: 1px !important;
-    }
-
-    .border-2 {
-        border-width: 2px !important;
-    }
-
-    .border-3 {
-        border-width: 3px !important;
-    }
-
-    .border-4 {
-        border-width: 4px !important;
-    }
-
-    .border-5 {
-        border-width: 5px !important;
-    }
-
-    .border-opacity-10 {
-        --bs-border-opacity: 0.1;
-    }
-
-    .border-opacity-25 {
-        --bs-border-opacity: 0.25;
-    }
-
-    .border-opacity-50 {
-        --bs-border-opacity: 0.5;
-    }
-
-    .border-opacity-75 {
-        --bs-border-opacity: 0.75;
-    }
-
-    .border-opacity-100 {
-        --bs-border-opacity: 1;
-    }
-
-    .w-25 {
-        width: 25% !important;
-    }
-
-    .w-50 {
-        width: 50% !important;
-    }
-
-    .w-75 {
-        width: 75% !important;
-    }
-
-    .w-100 {
-        width: 100% !important;
-    }
-
-    .w-auto {
-        width: auto !important;
-    }
-
-    .mw-100 {
-        max-width: 100% !important;
-    }
-
-    .vw-100 {
-        width: 100vw !important;
-    }
-
-    .min-vw-100 {
-        min-width: 100vw !important;
-    }
-
-    .h-25 {
-        height: 25% !important;
-    }
-
-    .h-50 {
-        height: 50% !important;
-    }
-
-    .h-75 {
-        height: 75% !important;
-    }
-
-    .h-100 {
-        height: 100% !important;
-    }
-
-    .h-auto {
-        height: auto !important;
-    }
-
-    .mh-100 {
-        max-height: 100% !important;
-    }
-
-    .vh-100 {
-        height: 100vh !important;
-    }
-
-    .min-vh-100 {
-        min-height: 100vh !important;
-    }
-
-    .flex-fill {
-        flex: 1 1 auto !important;
-    }
-
-    .flex-row {
-        flex-direction: row !important;
-    }
-
-    .flex-column {
-        flex-direction: column !important;
-    }
-
-    .flex-row-reverse {
-        flex-direction: row-reverse !important;
-    }
-
-    .flex-column-reverse {
-        flex-direction: column-reverse !important;
-    }
-
-    .flex-grow-0 {
-        flex-grow: 0 !important;
-    }
-
-    .flex-grow-1 {
-        flex-grow: 1 !important;
-    }
-
-    .flex-shrink-0 {
-        flex-shrink: 0 !important;
-    }
-
-    .flex-shrink-1 {
-        flex-shrink: 1 !important;
-    }
-
-    .flex-wrap {
-        flex-wrap: wrap !important;
-    }
-
-    .flex-nowrap {
-        flex-wrap: nowrap !important;
-    }
-
-    .flex-wrap-reverse {
-        flex-wrap: wrap-reverse !important;
-    }
-
-    .justify-content-start {
-        justify-content: flex-start !important;
-    }
-
-    .justify-content-end {
-        justify-content: flex-end !important;
-    }
-
-    .justify-content-center {
-        justify-content: center !important;
-    }
-
-    .justify-content-between {
-        justify-content: space-between !important;
-    }
-
-    .justify-content-around {
-        justify-content: space-around !important;
-    }
-
-    .justify-content-evenly {
-        justify-content: space-evenly !important;
-    }
-
-    .align-items-start {
-        align-items: flex-start !important;
-    }
-
-    .align-items-end {
-        align-items: flex-end !important;
-    }
-
-    .align-items-center {
-        align-items: center !important;
-    }
-
-    .align-items-baseline {
-        align-items: baseline !important;
-    }
-
-    .align-items-stretch {
-        align-items: stretch !important;
-    }
-
-    .align-content-start {
-        align-content: flex-start !important;
-    }
-
-    .align-content-end {
-        align-content: flex-end !important;
-    }
-
-    .align-content-center {
-        align-content: center !important;
-    }
-
-    .align-content-between {
-        align-content: space-between !important;
-    }
-
-    .align-content-around {
-        align-content: space-around !important;
-    }
-
-    .align-content-stretch {
-        align-content: stretch !important;
-    }
-
-    .align-self-auto {
-        align-self: auto !important;
-    }
-
-    .align-self-start {
-        align-self: flex-start !important;
-    }
-
-    .align-self-end {
-        align-self: flex-end !important;
-    }
-
-    .align-self-center {
-        align-self: center !important;
-    }
-
-    .align-self-baseline {
-        align-self: baseline !important;
-    }
-
-    .align-self-stretch {
-        align-self: stretch !important;
-    }
-
-    .order-first {
-        order: -1 !important;
-    }
-
-    .order-0 {
-        order: 0 !important;
-    }
-
-    .order-1 {
-        order: 1 !important;
-    }
-
-    .order-2 {
-        order: 2 !important;
-    }
-
-    .order-3 {
-        order: 3 !important;
-    }
-
-    .order-4 {
-        order: 4 !important;
-    }
-
-    .order-5 {
-        order: 5 !important;
-    }
-
-    .order-last {
-        order: 6 !important;
-    }
-
-    .m-0 {
-        margin: 0 !important;
-    }
-
-    .m-1 {
-        margin: 0.25rem !important;
-    }
-
-    .m-2 {
-        margin: 0.5rem !important;
-    }
-
-    .m-3 {
-        margin: 1rem !important;
-    }
-
-    .m-4 {
-        margin: 1.5rem !important;
-    }
-
-    .m-5 {
-        margin: 3rem !important;
-    }
-
-    .m-auto {
-        margin: auto !important;
-    }
-
-    .mx-0 {
-        margin-right: 0 !important;
-        margin-left: 0 !important;
-    }
-
-    .mx-1 {
-        margin-right: 0.25rem !important;
-        margin-left: 0.25rem !important;
-    }
-
-    .mx-2 {
-        margin-right: 0.5rem !important;
-        margin-left: 0.5rem !important;
-    }
-
-    .mx-3 {
-        margin-right: 1rem !important;
-        margin-left: 1rem !important;
-    }
-
-    .mx-4 {
-        margin-right: 1.5rem !important;
-        margin-left: 1.5rem !important;
-    }
-
-    .mx-5 {
-        margin-right: 3rem !important;
-        margin-left: 3rem !important;
-    }
-
-    .mx-auto {
-        margin-right: auto !important;
-        margin-left: auto !important;
-    }
-
-    .my-0 {
-        margin-top: 0 !important;
-        margin-bottom: 0 !important;
-    }
-
-    .my-1 {
-        margin-top: 0.25rem !important;
-        margin-bottom: 0.25rem !important;
-    }
-
-    .my-2 {
-        margin-top: 0.5rem !important;
-        margin-bottom: 0.5rem !important;
-    }
-
-    .my-3 {
-        margin-top: 1rem !important;
-        margin-bottom: 1rem !important;
-    }
-
-    .my-4 {
-        margin-top: 1.5rem !important;
-        margin-bottom: 1.5rem !important;
-    }
-
-    .my-5 {
-        margin-top: 3rem !important;
-        margin-bottom: 3rem !important;
-    }
-
-    .my-auto {
-        margin-top: auto !important;
-        margin-bottom: auto !important;
-    }
-
-    .mt-0 {
-        margin-top: 0 !important;
-    }
-
-    .mt-1 {
-        margin-top: 0.25rem !important;
-    }
-
-    .mt-2 {
-        margin-top: 0.5rem !important;
-    }
-
-    .mt-3 {
-        margin-top: 1rem !important;
-    }
-
-    .mt-4 {
-        margin-top: 1.5rem !important;
-    }
-
-    .mt-5 {
-        margin-top: 3rem !important;
-    }
-
-    .mt-auto {
-        margin-top: auto !important;
-    }
-
-    .me-0 {
-        margin-right: 0 !important;
-    }
-
-    .me-1 {
-        margin-right: 0.25rem !important;
-    }
-
-    .me-2 {
-        margin-right: 0.5rem !important;
-    }
-
-    .me-3 {
-        margin-right: 1rem !important;
-    }
-
-    .me-4 {
-        margin-right: 1.5rem !important;
-    }
-
-    .me-5 {
-        margin-right: 3rem !important;
-    }
-
-    .me-auto {
-        margin-right: auto !important;
-    }
-
-    .mb-0 {
-        margin-bottom: 0 !important;
-    }
-
-    .mb-1 {
-        margin-bottom: 0.25rem !important;
-    }
-
-    .mb-2 {
-        margin-bottom: 0.5rem !important;
-    }
-
-    .mb-3 {
-        margin-bottom: 1rem !important;
-    }
-
-    .mb-4 {
-        margin-bottom: 1.5rem !important;
-    }
-
-    .mb-5 {
-        margin-bottom: 3rem !important;
-    }
-
-    .mb-auto {
-        margin-bottom: auto !important;
-    }
-
-    .ms-0 {
-        margin-left: 0 !important;
-    }
-
-    .ms-1 {
-        margin-left: 0.25rem !important;
-    }
-
-    .ms-2 {
-        margin-left: 0.5rem !important;
-    }
-
-    .ms-3 {
-        margin-left: 1rem !important;
-    }
-
-    .ms-4 {
-        margin-left: 1.5rem !important;
-    }
-
-    .ms-5 {
-        margin-left: 3rem !important;
-    }
-
-    .ms-auto {
-        margin-left: auto !important;
-    }
-
-    .p-0 {
-        padding: 0 !important;
-    }
-
-    .p-1 {
-        padding: 0.25rem !important;
-    }
-
-    .p-2 {
-        padding: 0.5rem !important;
-    }
-
-    .p-3 {
-        padding: 1rem !important;
-    }
-
-    .p-4 {
-        padding: 1.5rem !important;
-    }
-
-    .p-5 {
-        padding: 3rem !important;
-    }
-
-    .px-0 {
-        padding-right: 0 !important;
-        padding-left: 0 !important;
-    }
-
-    .px-1 {
-        padding-right: 0.25rem !important;
-        padding-left: 0.25rem !important;
-    }
-
-    .px-2 {
-        padding-right: 0.5rem !important;
-        padding-left: 0.5rem !important;
-    }
-
-    .px-3 {
-        padding-right: 1rem !important;
-        padding-left: 1rem !important;
-    }
-
-    .px-4 {
-        padding-right: 1.5rem !important;
-        padding-left: 1.5rem !important;
-    }
-
-    .px-5 {
-        padding-right: 3rem !important;
-        padding-left: 3rem !important;
-    }
-
-    .py-0 {
-        padding-top: 0 !important;
-        padding-bottom: 0 !important;
-    }
-
-    .py-1 {
-        padding-top: 0.25rem !important;
-        padding-bottom: 0.25rem !important;
-    }
-
-    .py-2 {
-        padding-top: 0.5rem !important;
-        padding-bottom: 0.5rem !important;
-    }
-
-    .py-3 {
-        padding-top: 1rem !important;
-        padding-bottom: 1rem !important;
-    }
-
-    .py-4 {
-        padding-top: 1.5rem !important;
-        padding-bottom: 1.5rem !important;
-    }
-
-    .py-5 {
-        padding-top: 3rem !important;
-        padding-bottom: 3rem !important;
-    }
-
-    .pt-0 {
-        padding-top: 0 !important;
-    }
-
-    .pt-1 {
-        padding-top: 0.25rem !important;
-    }
-
-    .pt-2 {
-        padding-top: 0.5rem !important;
-    }
-
-    .pt-3 {
-        padding-top: 1rem !important;
-    }
-
-    .pt-4 {
-        padding-top: 1.5rem !important;
-    }
-
-    .pt-5 {
-        padding-top: 3rem !important;
-    }
-
-    .pe-0 {
-        padding-right: 0 !important;
-    }
-
-    .pe-1 {
-        padding-right: 0.25rem !important;
-    }
-
-    .pe-2 {
-        padding-right: 0.5rem !important;
-    }
-
-    .pe-3 {
-        padding-right: 1rem !important;
-    }
-
-    .pe-4 {
-        padding-right: 1.5rem !important;
-    }
-
-    .pe-5 {
-        padding-right: 3rem !important;
-    }
-
-    .pb-0 {
-        padding-bottom: 0 !important;
-    }
-
-    .pb-1 {
-        padding-bottom: 0.25rem !important;
-    }
-
-    .pb-2 {
-        padding-bottom: 0.5rem !important;
-    }
-
-    .pb-3 {
-        padding-bottom: 1rem !important;
-    }
-
-    .pb-4 {
-        padding-bottom: 1.5rem !important;
-    }
-
-    .pb-5 {
-        padding-bottom: 3rem !important;
-    }
-
-    .ps-0 {
-        padding-left: 0 !important;
-    }
-
-    .ps-1 {
-        padding-left: 0.25rem !important;
-    }
-
-    .ps-2 {
-        padding-left: 0.5rem !important;
-    }
-
-    .ps-3 {
-        padding-left: 1rem !important;
-    }
-
-    .ps-4 {
-        padding-left: 1.5rem !important;
-    }
-
-    .ps-5 {
-        padding-left: 3rem !important;
-    }
-
-    .gap-0 {
-        gap: 0 !important;
-    }
-
-    .gap-1 {
-        gap: 0.25rem !important;
-    }
-
-    .gap-2 {
-        gap: 0.5rem !important;
-    }
-
-    .gap-3 {
-        gap: 1rem !important;
-    }
-
-    .gap-4 {
-        gap: 1.5rem !important;
-    }
-
-    .gap-5 {
-        gap: 3rem !important;
-    }
-
-    .row-gap-0 {
-        row-gap: 0 !important;
-    }
-
-    .row-gap-1 {
-        row-gap: 0.25rem !important;
-    }
-
-    .row-gap-2 {
-        row-gap: 0.5rem !important;
-    }
-
-    .row-gap-3 {
-        row-gap: 1rem !important;
-    }
-
-    .row-gap-4 {
-        row-gap: 1.5rem !important;
-    }
-
-    .row-gap-5 {
-        row-gap: 3rem !important;
-    }
-
-    .column-gap-0 {
-        column-gap: 0 !important;
-    }
-
-    .column-gap-1 {
-        column-gap: 0.25rem !important;
-    }
-
-    .column-gap-2 {
-        column-gap: 0.5rem !important;
-    }
-
-    .column-gap-3 {
-        column-gap: 1rem !important;
-    }
-
-    .column-gap-4 {
-        column-gap: 1.5rem !important;
-    }
-
-    .column-gap-5 {
-        column-gap: 3rem !important;
-    }
-
-    .font-monospace {
-        font-family: var(--bs-font-monospace) !important;
-    }
-
-    .fs-1 {
-        font-size: calc(1.375rem + 1.5vw) !important;
-    }
-
-    .fs-2 {
-        font-size: calc(1.325rem + 0.9vw) !important;
-    }
-
-    .fs-3 {
-        font-size: calc(1.3rem + 0.6vw) !important;
-    }
-
-    .fs-4 {
-        font-size: calc(1.275rem + 0.3vw) !important;
-    }
-
-    .fs-5 {
-        font-size: 1.25rem !important;
-    }
-
-    .fs-6 {
-        font-size: 1rem !important;
-    }
-
-    .fst-italic {
-        font-style: italic !important;
-    }
-
-    .fst-normal {
-        font-style: normal !important;
-    }
-
-    .fw-lighter {
-        font-weight: lighter !important;
-    }
-
-    .fw-light {
-        font-weight: 300 !important;
-    }
-
-    .fw-normal {
-        font-weight: 400 !important;
-    }
-
-    .fw-medium {
-        font-weight: 500 !important;
-    }
-
-    .fw-semibold {
-        font-weight: 600 !important;
-    }
-
-    .fw-bold {
-        font-weight: 700 !important;
-    }
-
-    .fw-bolder {
-        font-weight: bolder !important;
-    }
-
-    .lh-1 {
-        line-height: 1 !important;
-    }
-
-    .lh-sm {
-        line-height: 1.25 !important;
-    }
-
-    .lh-base {
-        line-height: 1.5 !important;
-    }
-
-    .lh-lg {
-        line-height: 2 !important;
-    }
-
-    .text-start {
-        text-align: left !important;
-    }
-
-    .text-end {
-        text-align: right !important;
-    }
-
-    .text-center {
-        text-align: center !important;
-    }
-
-    .text-decoration-none {
-        text-decoration: none !important;
-    }
-
-    .text-decoration-underline {
-        text-decoration: underline !important;
-    }
-
-    .text-decoration-line-through {
-        text-decoration: line-through !important;
-    }
-
-    .text-lowercase {
-        text-transform: lowercase !important;
-    }
-
-    .text-uppercase {
-        text-transform: uppercase !important;
-    }
-
-    .text-capitalize {
-        text-transform: capitalize !important;
-    }
-
-    .text-wrap {
-        white-space: normal !important;
-    }
-
-    .text-nowrap {
-        white-space: nowrap !important;
-    }
-
-    /* rtl:begin:remove */
-    .text-break {
-        word-wrap: break-word !important;
-        word-break: break-word !important;
-    }
-
-    /* rtl:end:remove */
-    .text-primary {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-secondary {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-success {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-info {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-warning {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-danger {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-light {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-dark {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-black {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-white {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-body {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-muted {
-        --bs-text-opacity: 1;
-        color: var(--bs-secondary-color) !important;
-    }
-
-    .text-black-50 {
-        --bs-text-opacity: 1;
-        color: rgba(0, 0, 0, 0.5) !important;
-    }
-
-    .text-white-50 {
-        --bs-text-opacity: 1;
-        color: rgba(255, 255, 255, 0.5) !important;
-    }
-
-    .text-body-secondary {
-        --bs-text-opacity: 1;
-        color: var(--bs-secondary-color) !important;
-    }
-
-    .text-body-tertiary {
-        --bs-text-opacity: 1;
-        color: var(--bs-tertiary-color) !important;
-    }
-
-    .text-body-emphasis {
-        --bs-text-opacity: 1;
-        color: var(--bs-emphasis-color) !important;
-    }
-
-    .text-reset {
-        --bs-text-opacity: 1;
-        color: inherit !important;
-    }
-
-    .text-opacity-25 {
-        --bs-text-opacity: 0.25;
-    }
-
-    .text-opacity-50 {
-        --bs-text-opacity: 0.5;
-    }
-
-    .text-opacity-75 {
-        --bs-text-opacity: 0.75;
-    }
-
-    .text-opacity-100 {
-        --bs-text-opacity: 1;
-    }
-
-    .text-primary-emphasis {
-        color: var(--bs-primary-text-emphasis) !important;
-    }
-
-    .text-secondary-emphasis {
-        color: var(--bs-secondary-text-emphasis) !important;
-    }
-
-    .text-success-emphasis {
-        color: var(--bs-success-text-emphasis) !important;
-    }
-
-    .text-info-emphasis {
-        color: var(--bs-info-text-emphasis) !important;
-    }
-
-    .text-warning-emphasis {
-        color: var(--bs-warning-text-emphasis) !important;
-    }
-
-    .text-danger-emphasis {
-        color: var(--bs-danger-text-emphasis) !important;
-    }
-
-    .text-light-emphasis {
-        color: var(--bs-light-text-emphasis) !important;
-    }
-
-    .text-dark-emphasis {
-        color: var(--bs-dark-text-emphasis) !important;
-    }
-
-    .link-opacity-10 {
-        --bs-link-opacity: 0.1;
-    }
-
-    .link-opacity-10-hover:hover {
-        --bs-link-opacity: 0.1;
-    }
-
-    .link-opacity-25 {
-        --bs-link-opacity: 0.25;
-    }
-
-    .link-opacity-25-hover:hover {
-        --bs-link-opacity: 0.25;
-    }
-
-    .link-opacity-50 {
-        --bs-link-opacity: 0.5;
-    }
-
-    .link-opacity-50-hover:hover {
-        --bs-link-opacity: 0.5;
-    }
-
-    .link-opacity-75 {
-        --bs-link-opacity: 0.75;
-    }
-
-    .link-opacity-75-hover:hover {
-        --bs-link-opacity: 0.75;
-    }
-
-    .link-opacity-100 {
-        --bs-link-opacity: 1;
-    }
-
-    .link-opacity-100-hover:hover {
-        --bs-link-opacity: 1;
-    }
-
-    .link-offset-1 {
-        text-underline-offset: 0.125em !important;
-    }
-
-    .link-offset-1-hover:hover {
-        text-underline-offset: 0.125em !important;
-    }
-
-    .link-offset-2 {
-        text-underline-offset: 0.25em !important;
-    }
-
-    .link-offset-2-hover:hover {
-        text-underline-offset: 0.25em !important;
-    }
-
-    .link-offset-3 {
-        text-underline-offset: 0.375em !important;
-    }
-
-    .link-offset-3-hover:hover {
-        text-underline-offset: 0.375em !important;
-    }
-
-    .link-underline-primary {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-secondary {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-success {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-info {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-warning {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-danger {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-light {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-dark {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-underline-opacity-0 {
-        --bs-link-underline-opacity: 0;
-    }
-
-    .link-underline-opacity-0-hover:hover {
-        --bs-link-underline-opacity: 0;
-    }
-
-    .link-underline-opacity-10 {
-        --bs-link-underline-opacity: 0.1;
-    }
-
-    .link-underline-opacity-10-hover:hover {
-        --bs-link-underline-opacity: 0.1;
-    }
-
-    .link-underline-opacity-25 {
-        --bs-link-underline-opacity: 0.25;
-    }
-
-    .link-underline-opacity-25-hover:hover {
-        --bs-link-underline-opacity: 0.25;
-    }
-
-    .link-underline-opacity-50 {
-        --bs-link-underline-opacity: 0.5;
-    }
-
-    .link-underline-opacity-50-hover:hover {
-        --bs-link-underline-opacity: 0.5;
-    }
-
-    .link-underline-opacity-75 {
-        --bs-link-underline-opacity: 0.75;
-    }
-
-    .link-underline-opacity-75-hover:hover {
-        --bs-link-underline-opacity: 0.75;
-    }
-
-    .link-underline-opacity-100 {
-        --bs-link-underline-opacity: 1;
-    }
-
-    .link-underline-opacity-100-hover:hover {
-        --bs-link-underline-opacity: 1;
-    }
-
-    .bg-primary {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-secondary {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-success {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-info {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-warning {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-danger {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-light {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-dark {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-black {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-white {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-body {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-transparent {
-        --bs-bg-opacity: 1;
-        background-color: transparent !important;
-    }
-
-    .bg-body-secondary {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-body-tertiary {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-opacity-10 {
-        --bs-bg-opacity: 0.1;
-    }
-
-    .bg-opacity-25 {
-        --bs-bg-opacity: 0.25;
-    }
-
-    .bg-opacity-50 {
-        --bs-bg-opacity: 0.5;
-    }
-
-    .bg-opacity-75 {
-        --bs-bg-opacity: 0.75;
-    }
-
-    .bg-opacity-100 {
-        --bs-bg-opacity: 1;
-    }
-
-    .bg-primary-subtle {
-        background-color: var(--bs-primary-bg-subtle) !important;
-    }
-
-    .bg-secondary-subtle {
-        background-color: var(--bs-secondary-bg-subtle) !important;
-    }
-
-    .bg-success-subtle {
-        background-color: var(--bs-success-bg-subtle) !important;
-    }
-
-    .bg-info-subtle {
-        background-color: var(--bs-info-bg-subtle) !important;
-    }
-
-    .bg-warning-subtle {
-        background-color: var(--bs-warning-bg-subtle) !important;
-    }
-
-    .bg-danger-subtle {
-        background-color: var(--bs-danger-bg-subtle) !important;
-    }
-
-    .bg-light-subtle {
-        background-color: var(--bs-light-bg-subtle) !important;
-    }
-
-    .bg-dark-subtle {
-        background-color: var(--bs-dark-bg-subtle) !important;
-    }
-
-    .bg-gradient {
-        background-image: var(--bs-gradient) !important;
-    }
-
-    .user-select-all {
-        -webkit-user-select: all !important;
-        user-select: all !important;
-    }
-
-    .user-select-auto {
-        -webkit-user-select: auto !important;
-        user-select: auto !important;
-    }
-
-    .user-select-none {
-        -webkit-user-select: none !important;
-        user-select: none !important;
-    }
-
-    .pe-none {
-        pointer-events: none !important;
-    }
-
-    .pe-auto {
-        pointer-events: auto !important;
-    }
-
-    .rounded {
-        border-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-0 {
-        border-radius: 0 !important;
-    }
-
-    .rounded-1 {
-        border-radius: var(--bs-border-radius-sm) !important;
-    }
-
-    .rounded-2 {
-        border-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-3 {
-        border-radius: var(--bs-border-radius-lg) !important;
-    }
-
-    .rounded-4 {
-        border-radius: var(--bs-border-radius-xl) !important;
-    }
-
-    .rounded-5 {
-        border-radius: var(--bs-border-radius-xxl) !important;
-    }
-
-    .rounded-circle {
-        border-radius: 50% !important;
-    }
-
-    .rounded-pill {
-        border-radius: var(--bs-border-radius-pill) !important;
-    }
-
-    .rounded-top {
-        border-top-left-radius: var(--bs-border-radius) !important;
-        border-top-right-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-top-0 {
-        border-top-left-radius: 0 !important;
-        border-top-right-radius: 0 !important;
-    }
-
-    .rounded-top-1 {
-        border-top-left-radius: var(--bs-border-radius-sm) !important;
-        border-top-right-radius: var(--bs-border-radius-sm) !important;
-    }
-
-    .rounded-top-2 {
-        border-top-left-radius: var(--bs-border-radius) !important;
-        border-top-right-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-top-3 {
-        border-top-left-radius: var(--bs-border-radius-lg) !important;
-        border-top-right-radius: var(--bs-border-radius-lg) !important;
-    }
-
-    .rounded-top-4 {
-        border-top-left-radius: var(--bs-border-radius-xl) !important;
-        border-top-right-radius: var(--bs-border-radius-xl) !important;
-    }
-
-    .rounded-top-5 {
-        border-top-left-radius: var(--bs-border-radius-xxl) !important;
-        border-top-right-radius: var(--bs-border-radius-xxl) !important;
-    }
-
-    .rounded-top-circle {
-        border-top-left-radius: 50% !important;
-        border-top-right-radius: 50% !important;
-    }
-
-    .rounded-top-pill {
-        border-top-left-radius: var(--bs-border-radius-pill) !important;
-        border-top-right-radius: var(--bs-border-radius-pill) !important;
-    }
-
-    .rounded-end {
-        border-top-right-radius: var(--bs-border-radius) !important;
-        border-bottom-right-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-end-0 {
-        border-top-right-radius: 0 !important;
-        border-bottom-right-radius: 0 !important;
-    }
-
-    .rounded-end-1 {
-        border-top-right-radius: var(--bs-border-radius-sm) !important;
-        border-bottom-right-radius: var(--bs-border-radius-sm) !important;
-    }
-
-    .rounded-end-2 {
-        border-top-right-radius: var(--bs-border-radius) !important;
-        border-bottom-right-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-end-3 {
-        border-top-right-radius: var(--bs-border-radius-lg) !important;
-        border-bottom-right-radius: var(--bs-border-radius-lg) !important;
-    }
-
-    .rounded-end-4 {
-        border-top-right-radius: var(--bs-border-radius-xl) !important;
-        border-bottom-right-radius: var(--bs-border-radius-xl) !important;
-    }
-
-    .rounded-end-5 {
-        border-top-right-radius: var(--bs-border-radius-xxl) !important;
-        border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
-    }
-
-    .rounded-end-circle {
-        border-top-right-radius: 50% !important;
-        border-bottom-right-radius: 50% !important;
-    }
-
-    .rounded-end-pill {
-        border-top-right-radius: var(--bs-border-radius-pill) !important;
-        border-bottom-right-radius: var(--bs-border-radius-pill) !important;
-    }
-
-    .rounded-bottom {
-        border-bottom-right-radius: var(--bs-border-radius) !important;
-        border-bottom-left-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-bottom-0 {
-        border-bottom-right-radius: 0 !important;
-        border-bottom-left-radius: 0 !important;
-    }
-
-    .rounded-bottom-1 {
-        border-bottom-right-radius: var(--bs-border-radius-sm) !important;
-        border-bottom-left-radius: var(--bs-border-radius-sm) !important;
-    }
-
-    .rounded-bottom-2 {
-        border-bottom-right-radius: var(--bs-border-radius) !important;
-        border-bottom-left-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-bottom-3 {
-        border-bottom-right-radius: var(--bs-border-radius-lg) !important;
-        border-bottom-left-radius: var(--bs-border-radius-lg) !important;
-    }
-
-    .rounded-bottom-4 {
-        border-bottom-right-radius: var(--bs-border-radius-xl) !important;
-        border-bottom-left-radius: var(--bs-border-radius-xl) !important;
-    }
-
-    .rounded-bottom-5 {
-        border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
-        border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
-    }
-
-    .rounded-bottom-circle {
-        border-bottom-right-radius: 50% !important;
-        border-bottom-left-radius: 50% !important;
-    }
-
-    .rounded-bottom-pill {
-        border-bottom-right-radius: var(--bs-border-radius-pill) !important;
-        border-bottom-left-radius: var(--bs-border-radius-pill) !important;
-    }
-
-    .rounded-start {
-        border-bottom-left-radius: var(--bs-border-radius) !important;
-        border-top-left-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-start-0 {
-        border-bottom-left-radius: 0 !important;
-        border-top-left-radius: 0 !important;
-    }
-
-    .rounded-start-1 {
-        border-bottom-left-radius: var(--bs-border-radius-sm) !important;
-        border-top-left-radius: var(--bs-border-radius-sm) !important;
-    }
-
-    .rounded-start-2 {
-        border-bottom-left-radius: var(--bs-border-radius) !important;
-        border-top-left-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-start-3 {
-        border-bottom-left-radius: var(--bs-border-radius-lg) !important;
-        border-top-left-radius: var(--bs-border-radius-lg) !important;
-    }
-
-    .rounded-start-4 {
-        border-bottom-left-radius: var(--bs-border-radius-xl) !important;
-        border-top-left-radius: var(--bs-border-radius-xl) !important;
-    }
-
-    .rounded-start-5 {
-        border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
-        border-top-left-radius: var(--bs-border-radius-xxl) !important;
-    }
-
-    .rounded-start-circle {
-        border-bottom-left-radius: 50% !important;
-        border-top-left-radius: 50% !important;
-    }
-
-    .rounded-start-pill {
-        border-bottom-left-radius: var(--bs-border-radius-pill) !important;
-        border-top-left-radius: var(--bs-border-radius-pill) !important;
-    }
-
-    .visible {
-        visibility: visible !important;
-    }
-
-    .invisible {
-        visibility: hidden !important;
-    }
-
-    .z-n1 {
-        z-index: -1 !important;
-    }
-
-    .z-0 {
-        z-index: 0 !important;
-    }
-
-    .z-1 {
-        z-index: 1 !important;
-    }
-
-    .z-2 {
-        z-index: 2 !important;
-    }
-
-    .z-3 {
-        z-index: 3 !important;
-    }
-
-    @media (min-width: 576px) {
-        .float-sm-start {
-            float: left !important;
-        }
-
-        .float-sm-end {
-            float: right !important;
-        }
-
-        .float-sm-none {
-            float: none !important;
-        }
-
-        .object-fit-sm-contain {
-            object-fit: contain !important;
-        }
-
-        .object-fit-sm-cover {
-            object-fit: cover !important;
-        }
-
-        .object-fit-sm-fill {
-            object-fit: fill !important;
-        }
-
-        .object-fit-sm-scale {
-            object-fit: scale-down !important;
-        }
-
-        .object-fit-sm-none {
-            object-fit: none !important;
-        }
-
-        .d-sm-inline {
-            display: inline !important;
-        }
-
-        .d-sm-inline-block {
-            display: inline-block !important;
-        }
-
-        .d-sm-block {
-            display: block !important;
-        }
-
-        .d-sm-grid {
-            display: grid !important;
-        }
-
-        .d-sm-inline-grid {
-            display: inline-grid !important;
-        }
-
-        .d-sm-table {
-            display: table !important;
-        }
-
-        .d-sm-table-row {
-            display: table-row !important;
-        }
-
-        .d-sm-table-cell {
-            display: table-cell !important;
-        }
-
-        .d-sm-flex {
-            display: flex !important;
-        }
-
-        .d-sm-inline-flex {
-            display: inline-flex !important;
-        }
-
-        .d-sm-none {
-            display: none !important;
-        }
-
-        .flex-sm-fill {
-            flex: 1 1 auto !important;
-        }
-
-        .flex-sm-row {
-            flex-direction: row !important;
-        }
-
-        .flex-sm-column {
-            flex-direction: column !important;
-        }
-
-        .flex-sm-row-reverse {
-            flex-direction: row-reverse !important;
-        }
-
-        .flex-sm-column-reverse {
-            flex-direction: column-reverse !important;
-        }
-
-        .flex-sm-grow-0 {
-            flex-grow: 0 !important;
-        }
-
-        .flex-sm-grow-1 {
-            flex-grow: 1 !important;
-        }
-
-        .flex-sm-shrink-0 {
-            flex-shrink: 0 !important;
-        }
-
-        .flex-sm-shrink-1 {
-            flex-shrink: 1 !important;
-        }
-
-        .flex-sm-wrap {
-            flex-wrap: wrap !important;
-        }
-
-        .flex-sm-nowrap {
-            flex-wrap: nowrap !important;
-        }
-
-        .flex-sm-wrap-reverse {
-            flex-wrap: wrap-reverse !important;
-        }
-
-        .justify-content-sm-start {
-            justify-content: flex-start !important;
-        }
-
-        .justify-content-sm-end {
-            justify-content: flex-end !important;
-        }
-
-        .justify-content-sm-center {
-            justify-content: center !important;
-        }
-
-        .justify-content-sm-between {
-            justify-content: space-between !important;
-        }
-
-        .justify-content-sm-around {
-            justify-content: space-around !important;
-        }
-
-        .justify-content-sm-evenly {
-            justify-content: space-evenly !important;
-        }
-
-        .align-items-sm-start {
-            align-items: flex-start !important;
-        }
-
-        .align-items-sm-end {
-            align-items: flex-end !important;
-        }
-
-        .align-items-sm-center {
-            align-items: center !important;
-        }
-
-        .align-items-sm-baseline {
-            align-items: baseline !important;
-        }
-
-        .align-items-sm-stretch {
-            align-items: stretch !important;
-        }
-
-        .align-content-sm-start {
-            align-content: flex-start !important;
-        }
-
-        .align-content-sm-end {
-            align-content: flex-end !important;
-        }
-
-        .align-content-sm-center {
-            align-content: center !important;
-        }
-
-        .align-content-sm-between {
-            align-content: space-between !important;
-        }
-
-        .align-content-sm-around {
-            align-content: space-around !important;
-        }
-
-        .align-content-sm-stretch {
-            align-content: stretch !important;
-        }
-
-        .align-self-sm-auto {
-            align-self: auto !important;
-        }
-
-        .align-self-sm-start {
-            align-self: flex-start !important;
-        }
-
-        .align-self-sm-end {
-            align-self: flex-end !important;
-        }
-
-        .align-self-sm-center {
-            align-self: center !important;
-        }
-
-        .align-self-sm-baseline {
-            align-self: baseline !important;
-        }
-
-        .align-self-sm-stretch {
-            align-self: stretch !important;
-        }
-
-        .order-sm-first {
-            order: -1 !important;
-        }
-
-        .order-sm-0 {
-            order: 0 !important;
-        }
-
-        .order-sm-1 {
-            order: 1 !important;
-        }
-
-        .order-sm-2 {
-            order: 2 !important;
-        }
-
-        .order-sm-3 {
-            order: 3 !important;
-        }
-
-        .order-sm-4 {
-            order: 4 !important;
-        }
-
-        .order-sm-5 {
-            order: 5 !important;
-        }
-
-        .order-sm-last {
-            order: 6 !important;
-        }
-
-        .m-sm-0 {
-            margin: 0 !important;
-        }
-
-        .m-sm-1 {
-            margin: 0.25rem !important;
-        }
-
-        .m-sm-2 {
-            margin: 0.5rem !important;
-        }
-
-        .m-sm-3 {
-            margin: 1rem !important;
-        }
-
-        .m-sm-4 {
-            margin: 1.5rem !important;
-        }
-
-        .m-sm-5 {
-            margin: 3rem !important;
-        }
-
-        .m-sm-auto {
-            margin: auto !important;
-        }
-
-        .mx-sm-0 {
-            margin-right: 0 !important;
-            margin-left: 0 !important;
-        }
-
-        .mx-sm-1 {
-            margin-right: 0.25rem !important;
-            margin-left: 0.25rem !important;
-        }
-
-        .mx-sm-2 {
-            margin-right: 0.5rem !important;
-            margin-left: 0.5rem !important;
-        }
-
-        .mx-sm-3 {
-            margin-right: 1rem !important;
-            margin-left: 1rem !important;
-        }
-
-        .mx-sm-4 {
-            margin-right: 1.5rem !important;
-            margin-left: 1.5rem !important;
-        }
-
-        .mx-sm-5 {
-            margin-right: 3rem !important;
-            margin-left: 3rem !important;
-        }
-
-        .mx-sm-auto {
-            margin-right: auto !important;
-            margin-left: auto !important;
-        }
-
-        .my-sm-0 {
-            margin-top: 0 !important;
-            margin-bottom: 0 !important;
-        }
-
-        .my-sm-1 {
-            margin-top: 0.25rem !important;
-            margin-bottom: 0.25rem !important;
-        }
-
-        .my-sm-2 {
-            margin-top: 0.5rem !important;
-            margin-bottom: 0.5rem !important;
-        }
-
-        .my-sm-3 {
-            margin-top: 1rem !important;
-            margin-bottom: 1rem !important;
-        }
-
-        .my-sm-4 {
-            margin-top: 1.5rem !important;
-            margin-bottom: 1.5rem !important;
-        }
-
-        .my-sm-5 {
-            margin-top: 3rem !important;
-            margin-bottom: 3rem !important;
-        }
-
-        .my-sm-auto {
-            margin-top: auto !important;
-            margin-bottom: auto !important;
-        }
-
-        .mt-sm-0 {
-            margin-top: 0 !important;
-        }
-
-        .mt-sm-1 {
-            margin-top: 0.25rem !important;
-        }
-
-        .mt-sm-2 {
-            margin-top: 0.5rem !important;
-        }
-
-        .mt-sm-3 {
-            margin-top: 1rem !important;
-        }
-
-        .mt-sm-4 {
-            margin-top: 1.5rem !important;
-        }
-
-        .mt-sm-5 {
-            margin-top: 3rem !important;
-        }
-
-        .mt-sm-auto {
-            margin-top: auto !important;
-        }
-
-        .me-sm-0 {
-            margin-right: 0 !important;
-        }
-
-        .me-sm-1 {
-            margin-right: 0.25rem !important;
-        }
-
-        .me-sm-2 {
-            margin-right: 0.5rem !important;
-        }
-
-        .me-sm-3 {
-            margin-right: 1rem !important;
-        }
-
-        .me-sm-4 {
-            margin-right: 1.5rem !important;
-        }
-
-        .me-sm-5 {
-            margin-right: 3rem !important;
-        }
-
-        .me-sm-auto {
-            margin-right: auto !important;
-        }
-
-        .mb-sm-0 {
-            margin-bottom: 0 !important;
-        }
-
-        .mb-sm-1 {
-            margin-bottom: 0.25rem !important;
-        }
-
-        .mb-sm-2 {
-            margin-bottom: 0.5rem !important;
-        }
-
-        .mb-sm-3 {
-            margin-bottom: 1rem !important;
-        }
-
-        .mb-sm-4 {
-            margin-bottom: 1.5rem !important;
-        }
-
-        .mb-sm-5 {
-            margin-bottom: 3rem !important;
-        }
-
-        .mb-sm-auto {
-            margin-bottom: auto !important;
-        }
-
-        .ms-sm-0 {
-            margin-left: 0 !important;
-        }
-
-        .ms-sm-1 {
-            margin-left: 0.25rem !important;
-        }
-
-        .ms-sm-2 {
-            margin-left: 0.5rem !important;
-        }
-
-        .ms-sm-3 {
-            margin-left: 1rem !important;
-        }
-
-        .ms-sm-4 {
-            margin-left: 1.5rem !important;
-        }
-
-        .ms-sm-5 {
-            margin-left: 3rem !important;
-        }
-
-        .ms-sm-auto {
-            margin-left: auto !important;
-        }
-
-        .p-sm-0 {
-            padding: 0 !important;
-        }
-
-        .p-sm-1 {
-            padding: 0.25rem !important;
-        }
-
-        .p-sm-2 {
-            padding: 0.5rem !important;
-        }
-
-        .p-sm-3 {
-            padding: 1rem !important;
-        }
-
-        .p-sm-4 {
-            padding: 1.5rem !important;
-        }
-
-        .p-sm-5 {
-            padding: 3rem !important;
-        }
-
-        .px-sm-0 {
-            padding-right: 0 !important;
-            padding-left: 0 !important;
-        }
-
-        .px-sm-1 {
-            padding-right: 0.25rem !important;
-            padding-left: 0.25rem !important;
-        }
-
-        .px-sm-2 {
-            padding-right: 0.5rem !important;
-            padding-left: 0.5rem !important;
-        }
-
-        .px-sm-3 {
-            padding-right: 1rem !important;
-            padding-left: 1rem !important;
-        }
-
-        .px-sm-4 {
-            padding-right: 1.5rem !important;
-            padding-left: 1.5rem !important;
-        }
-
-        .px-sm-5 {
-            padding-right: 3rem !important;
-            padding-left: 3rem !important;
-        }
-
-        .py-sm-0 {
-            padding-top: 0 !important;
-            padding-bottom: 0 !important;
-        }
-
-        .py-sm-1 {
-            padding-top: 0.25rem !important;
-            padding-bottom: 0.25rem !important;
-        }
-
-        .py-sm-2 {
-            padding-top: 0.5rem !important;
-            padding-bottom: 0.5rem !important;
-        }
-
-        .py-sm-3 {
-            padding-top: 1rem !important;
-            padding-bottom: 1rem !important;
-        }
-
-        .py-sm-4 {
-            padding-top: 1.5rem !important;
-            padding-bottom: 1.5rem !important;
-        }
-
-        .py-sm-5 {
-            padding-top: 3rem !important;
-            padding-bottom: 3rem !important;
-        }
-
-        .pt-sm-0 {
-            padding-top: 0 !important;
-        }
-
-        .pt-sm-1 {
-            padding-top: 0.25rem !important;
-        }
-
-        .pt-sm-2 {
-            padding-top: 0.5rem !important;
-        }
-
-        .pt-sm-3 {
-            padding-top: 1rem !important;
-        }
-
-        .pt-sm-4 {
-            padding-top: 1.5rem !important;
-        }
-
-        .pt-sm-5 {
-            padding-top: 3rem !important;
-        }
-
-        .pe-sm-0 {
-            padding-right: 0 !important;
-        }
-
-        .pe-sm-1 {
-            padding-right: 0.25rem !important;
-        }
-
-        .pe-sm-2 {
-            padding-right: 0.5rem !important;
-        }
-
-        .pe-sm-3 {
-            padding-right: 1rem !important;
-        }
-
-        .pe-sm-4 {
-            padding-right: 1.5rem !important;
-        }
-
-        .pe-sm-5 {
-            padding-right: 3rem !important;
-        }
-
-        .pb-sm-0 {
-            padding-bottom: 0 !important;
-        }
-
-        .pb-sm-1 {
-            padding-bottom: 0.25rem !important;
-        }
-
-        .pb-sm-2 {
-            padding-bottom: 0.5rem !important;
-        }
-
-        .pb-sm-3 {
-            padding-bottom: 1rem !important;
-        }
-
-        .pb-sm-4 {
-            padding-bottom: 1.5rem !important;
-        }
-
-        .pb-sm-5 {
-            padding-bottom: 3rem !important;
-        }
-
-        .ps-sm-0 {
-            padding-left: 0 !important;
-        }
-
-        .ps-sm-1 {
-            padding-left: 0.25rem !important;
-        }
-
-        .ps-sm-2 {
-            padding-left: 0.5rem !important;
-        }
-
-        .ps-sm-3 {
-            padding-left: 1rem !important;
-        }
-
-        .ps-sm-4 {
-            padding-left: 1.5rem !important;
-        }
-
-        .ps-sm-5 {
-            padding-left: 3rem !important;
-        }
-
-        .gap-sm-0 {
-            gap: 0 !important;
-        }
-
-        .gap-sm-1 {
-            gap: 0.25rem !important;
-        }
-
-        .gap-sm-2 {
-            gap: 0.5rem !important;
-        }
-
-        .gap-sm-3 {
-            gap: 1rem !important;
-        }
-
-        .gap-sm-4 {
-            gap: 1.5rem !important;
-        }
-
-        .gap-sm-5 {
-            gap: 3rem !important;
-        }
-
-        .row-gap-sm-0 {
-            row-gap: 0 !important;
-        }
-
-        .row-gap-sm-1 {
-            row-gap: 0.25rem !important;
-        }
-
-        .row-gap-sm-2 {
-            row-gap: 0.5rem !important;
-        }
-
-        .row-gap-sm-3 {
-            row-gap: 1rem !important;
-        }
-
-        .row-gap-sm-4 {
-            row-gap: 1.5rem !important;
-        }
-
-        .row-gap-sm-5 {
-            row-gap: 3rem !important;
-        }
-
-        .column-gap-sm-0 {
-            column-gap: 0 !important;
-        }
-
-        .column-gap-sm-1 {
-            column-gap: 0.25rem !important;
-        }
-
-        .column-gap-sm-2 {
-            column-gap: 0.5rem !important;
-        }
-
-        .column-gap-sm-3 {
-            column-gap: 1rem !important;
-        }
-
-        .column-gap-sm-4 {
-            column-gap: 1.5rem !important;
-        }
-
-        .column-gap-sm-5 {
-            column-gap: 3rem !important;
-        }
-
-        .text-sm-start {
-            text-align: left !important;
-        }
-
-        .text-sm-end {
-            text-align: right !important;
-        }
-
-        .text-sm-center {
-            text-align: center !important;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .float-md-start {
-            float: left !important;
-        }
-
-        .float-md-end {
-            float: right !important;
-        }
-
-        .float-md-none {
-            float: none !important;
-        }
-
-        .object-fit-md-contain {
-            object-fit: contain !important;
-        }
-
-        .object-fit-md-cover {
-            object-fit: cover !important;
-        }
-
-        .object-fit-md-fill {
-            object-fit: fill !important;
-        }
-
-        .object-fit-md-scale {
-            object-fit: scale-down !important;
-        }
-
-        .object-fit-md-none {
-            object-fit: none !important;
-        }
-
-        .d-md-inline {
-            display: inline !important;
-        }
-
-        .d-md-inline-block {
-            display: inline-block !important;
-        }
-
-        .d-md-block {
-            display: block !important;
-        }
-
-        .d-md-grid {
-            display: grid !important;
-        }
-
-        .d-md-inline-grid {
-            display: inline-grid !important;
-        }
-
-        .d-md-table {
-            display: table !important;
-        }
-
-        .d-md-table-row {
-            display: table-row !important;
-        }
-
-        .d-md-table-cell {
-            display: table-cell !important;
-        }
-
-        .d-md-flex {
-            display: flex !important;
-        }
-
-        .d-md-inline-flex {
-            display: inline-flex !important;
-        }
-
-        .d-md-none {
-            display: none !important;
-        }
-
-        .flex-md-fill {
-            flex: 1 1 auto !important;
-        }
-
-        .flex-md-row {
-            flex-direction: row !important;
-        }
-
-        .flex-md-column {
-            flex-direction: column !important;
-        }
-
-        .flex-md-row-reverse {
-            flex-direction: row-reverse !important;
-        }
-
-        .flex-md-column-reverse {
-            flex-direction: column-reverse !important;
-        }
-
-        .flex-md-grow-0 {
-            flex-grow: 0 !important;
-        }
-
-        .flex-md-grow-1 {
-            flex-grow: 1 !important;
-        }
-
-        .flex-md-shrink-0 {
-            flex-shrink: 0 !important;
-        }
-
-        .flex-md-shrink-1 {
-            flex-shrink: 1 !important;
-        }
-
-        .flex-md-wrap {
-            flex-wrap: wrap !important;
-        }
-
-        .flex-md-nowrap {
-            flex-wrap: nowrap !important;
-        }
-
-        .flex-md-wrap-reverse {
-            flex-wrap: wrap-reverse !important;
-        }
-
-        .justify-content-md-start {
-            justify-content: flex-start !important;
-        }
-
-        .justify-content-md-end {
-            justify-content: flex-end !important;
-        }
-
-        .justify-content-md-center {
-            justify-content: center !important;
-        }
-
-        .justify-content-md-between {
-            justify-content: space-between !important;
-        }
-
-        .justify-content-md-around {
-            justify-content: space-around !important;
-        }
-
-        .justify-content-md-evenly {
-            justify-content: space-evenly !important;
-        }
-
-        .align-items-md-start {
-            align-items: flex-start !important;
-        }
-
-        .align-items-md-end {
-            align-items: flex-end !important;
-        }
-
-        .align-items-md-center {
-            align-items: center !important;
-        }
-
-        .align-items-md-baseline {
-            align-items: baseline !important;
-        }
-
-        .align-items-md-stretch {
-            align-items: stretch !important;
-        }
-
-        .align-content-md-start {
-            align-content: flex-start !important;
-        }
-
-        .align-content-md-end {
-            align-content: flex-end !important;
-        }
-
-        .align-content-md-center {
-            align-content: center !important;
-        }
-
-        .align-content-md-between {
-            align-content: space-between !important;
-        }
-
-        .align-content-md-around {
-            align-content: space-around !important;
-        }
-
-        .align-content-md-stretch {
-            align-content: stretch !important;
-        }
-
-        .align-self-md-auto {
-            align-self: auto !important;
-        }
-
-        .align-self-md-start {
-            align-self: flex-start !important;
-        }
-
-        .align-self-md-end {
-            align-self: flex-end !important;
-        }
-
-        .align-self-md-center {
-            align-self: center !important;
-        }
-
-        .align-self-md-baseline {
-            align-self: baseline !important;
-        }
-
-        .align-self-md-stretch {
-            align-self: stretch !important;
-        }
-
-        .order-md-first {
-            order: -1 !important;
-        }
-
-        .order-md-0 {
-            order: 0 !important;
-        }
-
-        .order-md-1 {
-            order: 1 !important;
-        }
-
-        .order-md-2 {
-            order: 2 !important;
-        }
-
-        .order-md-3 {
-            order: 3 !important;
-        }
-
-        .order-md-4 {
-            order: 4 !important;
-        }
-
-        .order-md-5 {
-            order: 5 !important;
-        }
-
-        .order-md-last {
-            order: 6 !important;
-        }
-
-        .m-md-0 {
-            margin: 0 !important;
-        }
-
-        .m-md-1 {
-            margin: 0.25rem !important;
-        }
-
-        .m-md-2 {
-            margin: 0.5rem !important;
-        }
-
-        .m-md-3 {
-            margin: 1rem !important;
-        }
-
-        .m-md-4 {
-            margin: 1.5rem !important;
-        }
-
-        .m-md-5 {
-            margin: 3rem !important;
-        }
-
-        .m-md-auto {
-            margin: auto !important;
-        }
-
-        .mx-md-0 {
-            margin-right: 0 !important;
-            margin-left: 0 !important;
-        }
-
-        .mx-md-1 {
-            margin-right: 0.25rem !important;
-            margin-left: 0.25rem !important;
-        }
-
-        .mx-md-2 {
-            margin-right: 0.5rem !important;
-            margin-left: 0.5rem !important;
-        }
-
-        .mx-md-3 {
-            margin-right: 1rem !important;
-            margin-left: 1rem !important;
-        }
-
-        .mx-md-4 {
-            margin-right: 1.5rem !important;
-            margin-left: 1.5rem !important;
-        }
-
-        .mx-md-5 {
-            margin-right: 3rem !important;
-            margin-left: 3rem !important;
-        }
-
-        .mx-md-auto {
-            margin-right: auto !important;
-            margin-left: auto !important;
-        }
-
-        .my-md-0 {
-            margin-top: 0 !important;
-            margin-bottom: 0 !important;
-        }
-
-        .my-md-1 {
-            margin-top: 0.25rem !important;
-            margin-bottom: 0.25rem !important;
-        }
-
-        .my-md-2 {
-            margin-top: 0.5rem !important;
-            margin-bottom: 0.5rem !important;
-        }
-
-        .my-md-3 {
-            margin-top: 1rem !important;
-            margin-bottom: 1rem !important;
-        }
-
-        .my-md-4 {
-            margin-top: 1.5rem !important;
-            margin-bottom: 1.5rem !important;
-        }
-
-        .my-md-5 {
-            margin-top: 3rem !important;
-            margin-bottom: 3rem !important;
-        }
-
-        .my-md-auto {
-            margin-top: auto !important;
-            margin-bottom: auto !important;
-        }
-
-        .mt-md-0 {
-            margin-top: 0 !important;
-        }
-
-        .mt-md-1 {
-            margin-top: 0.25rem !important;
-        }
-
-        .mt-md-2 {
-            margin-top: 0.5rem !important;
-        }
-
-        .mt-md-3 {
-            margin-top: 1rem !important;
-        }
-
-        .mt-md-4 {
-            margin-top: 1.5rem !important;
-        }
-
-        .mt-md-5 {
-            margin-top: 3rem !important;
-        }
-
-        .mt-md-auto {
-            margin-top: auto !important;
-        }
-
-        .me-md-0 {
-            margin-right: 0 !important;
-        }
-
-        .me-md-1 {
-            margin-right: 0.25rem !important;
-        }
-
-        .me-md-2 {
-            margin-right: 0.5rem !important;
-        }
-
-        .me-md-3 {
-            margin-right: 1rem !important;
-        }
-
-        .me-md-4 {
-            margin-right: 1.5rem !important;
-        }
-
-        .me-md-5 {
-            margin-right: 3rem !important;
-        }
-
-        .me-md-auto {
-            margin-right: auto !important;
-        }
-
-        .mb-md-0 {
-            margin-bottom: 0 !important;
-        }
-
-        .mb-md-1 {
-            margin-bottom: 0.25rem !important;
-        }
-
-        .mb-md-2 {
-            margin-bottom: 0.5rem !important;
-        }
-
-        .mb-md-3 {
-            margin-bottom: 1rem !important;
-        }
-
-        .mb-md-4 {
-            margin-bottom: 1.5rem !important;
-        }
-
-        .mb-md-5 {
-            margin-bottom: 3rem !important;
-        }
-
-        .mb-md-auto {
-            margin-bottom: auto !important;
-        }
-
-        .ms-md-0 {
-            margin-left: 0 !important;
-        }
-
-        .ms-md-1 {
-            margin-left: 0.25rem !important;
-        }
-
-        .ms-md-2 {
-            margin-left: 0.5rem !important;
-        }
-
-        .ms-md-3 {
-            margin-left: 1rem !important;
-        }
-
-        .ms-md-4 {
-            margin-left: 1.5rem !important;
-        }
-
-        .ms-md-5 {
-            margin-left: 3rem !important;
-        }
-
-        .ms-md-auto {
-            margin-left: auto !important;
-        }
-
-        .p-md-0 {
-            padding: 0 !important;
-        }
-
-        .p-md-1 {
-            padding: 0.25rem !important;
-        }
-
-        .p-md-2 {
-            padding: 0.5rem !important;
-        }
-
-        .p-md-3 {
-            padding: 1rem !important;
-        }
-
-        .p-md-4 {
-            padding: 1.5rem !important;
-        }
-
-        .p-md-5 {
-            padding: 3rem !important;
-        }
-
-        .px-md-0 {
-            padding-right: 0 !important;
-            padding-left: 0 !important;
-        }
-
-        .px-md-1 {
-            padding-right: 0.25rem !important;
-            padding-left: 0.25rem !important;
-        }
-
-        .px-md-2 {
-            padding-right: 0.5rem !important;
-            padding-left: 0.5rem !important;
-        }
-
-        .px-md-3 {
-            padding-right: 1rem !important;
-            padding-left: 1rem !important;
-        }
-
-        .px-md-4 {
-            padding-right: 1.5rem !important;
-            padding-left: 1.5rem !important;
-        }
-
-        .px-md-5 {
-            padding-right: 3rem !important;
-            padding-left: 3rem !important;
-        }
-
-        .py-md-0 {
-            padding-top: 0 !important;
-            padding-bottom: 0 !important;
-        }
-
-        .py-md-1 {
-            padding-top: 0.25rem !important;
-            padding-bottom: 0.25rem !important;
-        }
-
-        .py-md-2 {
-            padding-top: 0.5rem !important;
-            padding-bottom: 0.5rem !important;
-        }
-
-        .py-md-3 {
-            padding-top: 1rem !important;
-            padding-bottom: 1rem !important;
-        }
-
-        .py-md-4 {
-            padding-top: 1.5rem !important;
-            padding-bottom: 1.5rem !important;
-        }
-
-        .py-md-5 {
-            padding-top: 3rem !important;
-            padding-bottom: 3rem !important;
-        }
-
-        .pt-md-0 {
-            padding-top: 0 !important;
-        }
-
-        .pt-md-1 {
-            padding-top: 0.25rem !important;
-        }
-
-        .pt-md-2 {
-            padding-top: 0.5rem !important;
-        }
-
-        .pt-md-3 {
-            padding-top: 1rem !important;
-        }
-
-        .pt-md-4 {
-            padding-top: 1.5rem !important;
-        }
-
-        .pt-md-5 {
-            padding-top: 3rem !important;
-        }
-
-        .pe-md-0 {
-            padding-right: 0 !important;
-        }
-
-        .pe-md-1 {
-            padding-right: 0.25rem !important;
-        }
-
-        .pe-md-2 {
-            padding-right: 0.5rem !important;
-        }
-
-        .pe-md-3 {
-            padding-right: 1rem !important;
-        }
-
-        .pe-md-4 {
-            padding-right: 1.5rem !important;
-        }
-
-        .pe-md-5 {
-            padding-right: 3rem !important;
-        }
-
-        .pb-md-0 {
-            padding-bottom: 0 !important;
-        }
-
-        .pb-md-1 {
-            padding-bottom: 0.25rem !important;
-        }
-
-        .pb-md-2 {
-            padding-bottom: 0.5rem !important;
-        }
-
-        .pb-md-3 {
-            padding-bottom: 1rem !important;
-        }
-
-        .pb-md-4 {
-            padding-bottom: 1.5rem !important;
-        }
-
-        .pb-md-5 {
-            padding-bottom: 3rem !important;
-        }
-
-        .ps-md-0 {
-            padding-left: 0 !important;
-        }
-
-        .ps-md-1 {
-            padding-left: 0.25rem !important;
-        }
-
-        .ps-md-2 {
-            padding-left: 0.5rem !important;
-        }
-
-        .ps-md-3 {
-            padding-left: 1rem !important;
-        }
-
-        .ps-md-4 {
-            padding-left: 1.5rem !important;
-        }
-
-        .ps-md-5 {
-            padding-left: 3rem !important;
-        }
-
-        .gap-md-0 {
-            gap: 0 !important;
-        }
-
-        .gap-md-1 {
-            gap: 0.25rem !important;
-        }
-
-        .gap-md-2 {
-            gap: 0.5rem !important;
-        }
-
-        .gap-md-3 {
-            gap: 1rem !important;
-        }
-
-        .gap-md-4 {
-            gap: 1.5rem !important;
-        }
-
-        .gap-md-5 {
-            gap: 3rem !important;
-        }
-
-        .row-gap-md-0 {
-            row-gap: 0 !important;
-        }
-
-        .row-gap-md-1 {
-            row-gap: 0.25rem !important;
-        }
-
-        .row-gap-md-2 {
-            row-gap: 0.5rem !important;
-        }
-
-        .row-gap-md-3 {
-            row-gap: 1rem !important;
-        }
-
-        .row-gap-md-4 {
-            row-gap: 1.5rem !important;
-        }
-
-        .row-gap-md-5 {
-            row-gap: 3rem !important;
-        }
-
-        .column-gap-md-0 {
-            column-gap: 0 !important;
-        }
-
-        .column-gap-md-1 {
-            column-gap: 0.25rem !important;
-        }
-
-        .column-gap-md-2 {
-            column-gap: 0.5rem !important;
-        }
-
-        .column-gap-md-3 {
-            column-gap: 1rem !important;
-        }
-
-        .column-gap-md-4 {
-            column-gap: 1.5rem !important;
-        }
-
-        .column-gap-md-5 {
-            column-gap: 3rem !important;
-        }
-
-        .text-md-start {
-            text-align: left !important;
-        }
-
-        .text-md-end {
-            text-align: right !important;
-        }
-
-        .text-md-center {
-            text-align: center !important;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .float-lg-start {
-            float: left !important;
-        }
-
-        .float-lg-end {
-            float: right !important;
-        }
-
-        .float-lg-none {
-            float: none !important;
-        }
-
-        .object-fit-lg-contain {
-            object-fit: contain !important;
-        }
-
-        .object-fit-lg-cover {
-            object-fit: cover !important;
-        }
-
-        .object-fit-lg-fill {
-            object-fit: fill !important;
-        }
-
-        .object-fit-lg-scale {
-            object-fit: scale-down !important;
-        }
-
-        .object-fit-lg-none {
-            object-fit: none !important;
-        }
-
-        .d-lg-inline {
-            display: inline !important;
-        }
-
-        .d-lg-inline-block {
-            display: inline-block !important;
-        }
-
-        .d-lg-block {
-            display: block !important;
-        }
-
-        .d-lg-grid {
-            display: grid !important;
-        }
-
-        .d-lg-inline-grid {
-            display: inline-grid !important;
-        }
-
-        .d-lg-table {
-            display: table !important;
-        }
-
-        .d-lg-table-row {
-            display: table-row !important;
-        }
-
-        .d-lg-table-cell {
-            display: table-cell !important;
-        }
-
-        .d-lg-flex {
-            display: flex !important;
-        }
-
-        .d-lg-inline-flex {
-            display: inline-flex !important;
-        }
-
-        .d-lg-none {
-            display: none !important;
-        }
-
-        .flex-lg-fill {
-            flex: 1 1 auto !important;
-        }
-
-        .flex-lg-row {
-            flex-direction: row !important;
-        }
-
-        .flex-lg-column {
-            flex-direction: column !important;
-        }
-
-        .flex-lg-row-reverse {
-            flex-direction: row-reverse !important;
-        }
-
-        .flex-lg-column-reverse {
-            flex-direction: column-reverse !important;
-        }
-
-        .flex-lg-grow-0 {
-            flex-grow: 0 !important;
-        }
-
-        .flex-lg-grow-1 {
-            flex-grow: 1 !important;
-        }
-
-        .flex-lg-shrink-0 {
-            flex-shrink: 0 !important;
-        }
-
-        .flex-lg-shrink-1 {
-            flex-shrink: 1 !important;
-        }
-
-        .flex-lg-wrap {
-            flex-wrap: wrap !important;
-        }
-
-        .flex-lg-nowrap {
-            flex-wrap: nowrap !important;
-        }
-
-        .flex-lg-wrap-reverse {
-            flex-wrap: wrap-reverse !important;
-        }
-
-        .justify-content-lg-start {
-            justify-content: flex-start !important;
-        }
-
-        .justify-content-lg-end {
-            justify-content: flex-end !important;
-        }
-
-        .justify-content-lg-center {
-            justify-content: center !important;
-        }
-
-        .justify-content-lg-between {
-            justify-content: space-between !important;
-        }
-
-        .justify-content-lg-around {
-            justify-content: space-around !important;
-        }
-
-        .justify-content-lg-evenly {
-            justify-content: space-evenly !important;
-        }
-
-        .align-items-lg-start {
-            align-items: flex-start !important;
-        }
-
-        .align-items-lg-end {
-            align-items: flex-end !important;
-        }
-
-        .align-items-lg-center {
-            align-items: center !important;
-        }
-
-        .align-items-lg-baseline {
-            align-items: baseline !important;
-        }
-
-        .align-items-lg-stretch {
-            align-items: stretch !important;
-        }
-
-        .align-content-lg-start {
-            align-content: flex-start !important;
-        }
-
-        .align-content-lg-end {
-            align-content: flex-end !important;
-        }
-
-        .align-content-lg-center {
-            align-content: center !important;
-        }
-
-        .align-content-lg-between {
-            align-content: space-between !important;
-        }
-
-        .align-content-lg-around {
-            align-content: space-around !important;
-        }
-
-        .align-content-lg-stretch {
-            align-content: stretch !important;
-        }
-
-        .align-self-lg-auto {
-            align-self: auto !important;
-        }
-
-        .align-self-lg-start {
-            align-self: flex-start !important;
-        }
-
-        .align-self-lg-end {
-            align-self: flex-end !important;
-        }
-
-        .align-self-lg-center {
-            align-self: center !important;
-        }
-
-        .align-self-lg-baseline {
-            align-self: baseline !important;
-        }
-
-        .align-self-lg-stretch {
-            align-self: stretch !important;
-        }
-
-        .order-lg-first {
-            order: -1 !important;
-        }
-
-        .order-lg-0 {
-            order: 0 !important;
-        }
-
-        .order-lg-1 {
-            order: 1 !important;
-        }
-
-        .order-lg-2 {
-            order: 2 !important;
-        }
-
-        .order-lg-3 {
-            order: 3 !important;
-        }
-
-        .order-lg-4 {
-            order: 4 !important;
-        }
-
-        .order-lg-5 {
-            order: 5 !important;
-        }
-
-        .order-lg-last {
-            order: 6 !important;
-        }
-
-        .m-lg-0 {
-            margin: 0 !important;
-        }
-
-        .m-lg-1 {
-            margin: 0.25rem !important;
-        }
-
-        .m-lg-2 {
-            margin: 0.5rem !important;
-        }
-
-        .m-lg-3 {
-            margin: 1rem !important;
-        }
-
-        .m-lg-4 {
-            margin: 1.5rem !important;
-        }
-
-        .m-lg-5 {
-            margin: 3rem !important;
-        }
-
-        .m-lg-auto {
-            margin: auto !important;
-        }
-
-        .mx-lg-0 {
-            margin-right: 0 !important;
-            margin-left: 0 !important;
-        }
-
-        .mx-lg-1 {
-            margin-right: 0.25rem !important;
-            margin-left: 0.25rem !important;
-        }
-
-        .mx-lg-2 {
-            margin-right: 0.5rem !important;
-            margin-left: 0.5rem !important;
-        }
-
-        .mx-lg-3 {
-            margin-right: 1rem !important;
-            margin-left: 1rem !important;
-        }
-
-        .mx-lg-4 {
-            margin-right: 1.5rem !important;
-            margin-left: 1.5rem !important;
-        }
-
-        .mx-lg-5 {
-            margin-right: 3rem !important;
-            margin-left: 3rem !important;
-        }
-
-        .mx-lg-auto {
-            margin-right: auto !important;
-            margin-left: auto !important;
-        }
-
-        .my-lg-0 {
-            margin-top: 0 !important;
-            margin-bottom: 0 !important;
-        }
-
-        .my-lg-1 {
-            margin-top: 0.25rem !important;
-            margin-bottom: 0.25rem !important;
-        }
-
-        .my-lg-2 {
-            margin-top: 0.5rem !important;
-            margin-bottom: 0.5rem !important;
-        }
-
-        .my-lg-3 {
-            margin-top: 1rem !important;
-            margin-bottom: 1rem !important;
-        }
-
-        .my-lg-4 {
-            margin-top: 1.5rem !important;
-            margin-bottom: 1.5rem !important;
-        }
-
-        .my-lg-5 {
-            margin-top: 3rem !important;
-            margin-bottom: 3rem !important;
-        }
-
-        .my-lg-auto {
-            margin-top: auto !important;
-            margin-bottom: auto !important;
-        }
-
-        .mt-lg-0 {
-            margin-top: 0 !important;
-        }
-
-        .mt-lg-1 {
-            margin-top: 0.25rem !important;
-        }
-
-        .mt-lg-2 {
-            margin-top: 0.5rem !important;
-        }
-
-        .mt-lg-3 {
-            margin-top: 1rem !important;
-        }
-
-        .mt-lg-4 {
-            margin-top: 1.5rem !important;
-        }
-
-        .mt-lg-5 {
-            margin-top: 3rem !important;
-        }
-
-        .mt-lg-auto {
-            margin-top: auto !important;
-        }
-
-        .me-lg-0 {
-            margin-right: 0 !important;
-        }
-
-        .me-lg-1 {
-            margin-right: 0.25rem !important;
-        }
-
-        .me-lg-2 {
-            margin-right: 0.5rem !important;
-        }
-
-        .me-lg-3 {
-            margin-right: 1rem !important;
-        }
-
-        .me-lg-4 {
-            margin-right: 1.5rem !important;
-        }
-
-        .me-lg-5 {
-            margin-right: 3rem !important;
-        }
-
-        .me-lg-auto {
-            margin-right: auto !important;
-        }
-
-        .mb-lg-0 {
-            margin-bottom: 0 !important;
-        }
-
-        .mb-lg-1 {
-            margin-bottom: 0.25rem !important;
-        }
-
-        .mb-lg-2 {
-            margin-bottom: 0.5rem !important;
-        }
-
-        .mb-lg-3 {
-            margin-bottom: 1rem !important;
-        }
-
-        .mb-lg-4 {
-            margin-bottom: 1.5rem !important;
-        }
-
-        .mb-lg-5 {
-            margin-bottom: 3rem !important;
-        }
-
-        .mb-lg-auto {
-            margin-bottom: auto !important;
-        }
-
-        .ms-lg-0 {
-            margin-left: 0 !important;
-        }
-
-        .ms-lg-1 {
-            margin-left: 0.25rem !important;
-        }
-
-        .ms-lg-2 {
-            margin-left: 0.5rem !important;
-        }
-
-        .ms-lg-3 {
-            margin-left: 1rem !important;
-        }
-
-        .ms-lg-4 {
-            margin-left: 1.5rem !important;
-        }
-
-        .ms-lg-5 {
-            margin-left: 3rem !important;
-        }
-
-        .ms-lg-auto {
-            margin-left: auto !important;
-        }
-
-        .p-lg-0 {
-            padding: 0 !important;
-        }
-
-        .p-lg-1 {
-            padding: 0.25rem !important;
-        }
-
-        .p-lg-2 {
-            padding: 0.5rem !important;
-        }
-
-        .p-lg-3 {
-            padding: 1rem !important;
-        }
-
-        .p-lg-4 {
-            padding: 1.5rem !important;
-        }
-
-        .p-lg-5 {
-            padding: 3rem !important;
-        }
-
-        .px-lg-0 {
-            padding-right: 0 !important;
-            padding-left: 0 !important;
-        }
-
-        .px-lg-1 {
-            padding-right: 0.25rem !important;
-            padding-left: 0.25rem !important;
-        }
-
-        .px-lg-2 {
-            padding-right: 0.5rem !important;
-            padding-left: 0.5rem !important;
-        }
-
-        .px-lg-3 {
-            padding-right: 1rem !important;
-            padding-left: 1rem !important;
-        }
-
-        .px-lg-4 {
-            padding-right: 1.5rem !important;
-            padding-left: 1.5rem !important;
-        }
-
-        .px-lg-5 {
-            padding-right: 3rem !important;
-            padding-left: 3rem !important;
-        }
-
-        .py-lg-0 {
-            padding-top: 0 !important;
-            padding-bottom: 0 !important;
-        }
-
-        .py-lg-1 {
-            padding-top: 0.25rem !important;
-            padding-bottom: 0.25rem !important;
-        }
-
-        .py-lg-2 {
-            padding-top: 0.5rem !important;
-            padding-bottom: 0.5rem !important;
-        }
-
-        .py-lg-3 {
-            padding-top: 1rem !important;
-            padding-bottom: 1rem !important;
-        }
-
-        .py-lg-4 {
-            padding-top: 1.5rem !important;
-            padding-bottom: 1.5rem !important;
-        }
-
-        .py-lg-5 {
-            padding-top: 3rem !important;
-            padding-bottom: 3rem !important;
-        }
-
-        .pt-lg-0 {
-            padding-top: 0 !important;
-        }
-
-        .pt-lg-1 {
-            padding-top: 0.25rem !important;
-        }
-
-        .pt-lg-2 {
-            padding-top: 0.5rem !important;
-        }
-
-        .pt-lg-3 {
-            padding-top: 1rem !important;
-        }
-
-        .pt-lg-4 {
-            padding-top: 1.5rem !important;
-        }
-
-        .pt-lg-5 {
-            padding-top: 3rem !important;
-        }
-
-        .pe-lg-0 {
-            padding-right: 0 !important;
-        }
-
-        .pe-lg-1 {
-            padding-right: 0.25rem !important;
-        }
-
-        .pe-lg-2 {
-            padding-right: 0.5rem !important;
-        }
-
-        .pe-lg-3 {
-            padding-right: 1rem !important;
-        }
-
-        .pe-lg-4 {
-            padding-right: 1.5rem !important;
-        }
-
-        .pe-lg-5 {
-            padding-right: 3rem !important;
-        }
-
-        .pb-lg-0 {
-            padding-bottom: 0 !important;
-        }
-
-        .pb-lg-1 {
-            padding-bottom: 0.25rem !important;
-        }
-
-        .pb-lg-2 {
-            padding-bottom: 0.5rem !important;
-        }
-
-        .pb-lg-3 {
-            padding-bottom: 1rem !important;
-        }
-
-        .pb-lg-4 {
-            padding-bottom: 1.5rem !important;
-        }
-
-        .pb-lg-5 {
-            padding-bottom: 3rem !important;
-        }
-
-        .ps-lg-0 {
-            padding-left: 0 !important;
-        }
-
-        .ps-lg-1 {
-            padding-left: 0.25rem !important;
-        }
-
-        .ps-lg-2 {
-            padding-left: 0.5rem !important;
-        }
-
-        .ps-lg-3 {
-            padding-left: 1rem !important;
-        }
-
-        .ps-lg-4 {
-            padding-left: 1.5rem !important;
-        }
-
-        .ps-lg-5 {
-            padding-left: 3rem !important;
-        }
-
-        .gap-lg-0 {
-            gap: 0 !important;
-        }
-
-        .gap-lg-1 {
-            gap: 0.25rem !important;
-        }
-
-        .gap-lg-2 {
-            gap: 0.5rem !important;
-        }
-
-        .gap-lg-3 {
-            gap: 1rem !important;
-        }
-
-        .gap-lg-4 {
-            gap: 1.5rem !important;
-        }
-
-        .gap-lg-5 {
-            gap: 3rem !important;
-        }
-
-        .row-gap-lg-0 {
-            row-gap: 0 !important;
-        }
-
-        .row-gap-lg-1 {
-            row-gap: 0.25rem !important;
-        }
-
-        .row-gap-lg-2 {
-            row-gap: 0.5rem !important;
-        }
-
-        .row-gap-lg-3 {
-            row-gap: 1rem !important;
-        }
-
-        .row-gap-lg-4 {
-            row-gap: 1.5rem !important;
-        }
-
-        .row-gap-lg-5 {
-            row-gap: 3rem !important;
-        }
-
-        .column-gap-lg-0 {
-            column-gap: 0 !important;
-        }
-
-        .column-gap-lg-1 {
-            column-gap: 0.25rem !important;
-        }
-
-        .column-gap-lg-2 {
-            column-gap: 0.5rem !important;
-        }
-
-        .column-gap-lg-3 {
-            column-gap: 1rem !important;
-        }
-
-        .column-gap-lg-4 {
-            column-gap: 1.5rem !important;
-        }
-
-        .column-gap-lg-5 {
-            column-gap: 3rem !important;
-        }
-
-        .text-lg-start {
-            text-align: left !important;
-        }
-
-        .text-lg-end {
-            text-align: right !important;
-        }
-
-        .text-lg-center {
-            text-align: center !important;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .float-xl-start {
-            float: left !important;
-        }
-
-        .float-xl-end {
-            float: right !important;
-        }
-
-        .float-xl-none {
-            float: none !important;
-        }
-
-        .object-fit-xl-contain {
-            object-fit: contain !important;
-        }
-
-        .object-fit-xl-cover {
-            object-fit: cover !important;
-        }
-
-        .object-fit-xl-fill {
-            object-fit: fill !important;
-        }
-
-        .object-fit-xl-scale {
-            object-fit: scale-down !important;
-        }
-
-        .object-fit-xl-none {
-            object-fit: none !important;
-        }
-
-        .d-xl-inline {
-            display: inline !important;
-        }
-
-        .d-xl-inline-block {
-            display: inline-block !important;
-        }
-
-        .d-xl-block {
-            display: block !important;
-        }
-
-        .d-xl-grid {
-            display: grid !important;
-        }
-
-        .d-xl-inline-grid {
-            display: inline-grid !important;
-        }
-
-        .d-xl-table {
-            display: table !important;
-        }
-
-        .d-xl-table-row {
-            display: table-row !important;
-        }
-
-        .d-xl-table-cell {
-            display: table-cell !important;
-        }
-
-        .d-xl-flex {
-            display: flex !important;
-        }
-
-        .d-xl-inline-flex {
-            display: inline-flex !important;
-        }
-
-        .d-xl-none {
-            display: none !important;
-        }
-
-        .flex-xl-fill {
-            flex: 1 1 auto !important;
-        }
-
-        .flex-xl-row {
-            flex-direction: row !important;
-        }
-
-        .flex-xl-column {
-            flex-direction: column !important;
-        }
-
-        .flex-xl-row-reverse {
-            flex-direction: row-reverse !important;
-        }
-
-        .flex-xl-column-reverse {
-            flex-direction: column-reverse !important;
-        }
-
-        .flex-xl-grow-0 {
-            flex-grow: 0 !important;
-        }
-
-        .flex-xl-grow-1 {
-            flex-grow: 1 !important;
-        }
-
-        .flex-xl-shrink-0 {
-            flex-shrink: 0 !important;
-        }
-
-        .flex-xl-shrink-1 {
-            flex-shrink: 1 !important;
-        }
-
-        .flex-xl-wrap {
-            flex-wrap: wrap !important;
-        }
-
-        .flex-xl-nowrap {
-            flex-wrap: nowrap !important;
-        }
-
-        .flex-xl-wrap-reverse {
-            flex-wrap: wrap-reverse !important;
-        }
-
-        .justify-content-xl-start {
-            justify-content: flex-start !important;
-        }
-
-        .justify-content-xl-end {
-            justify-content: flex-end !important;
-        }
-
-        .justify-content-xl-center {
-            justify-content: center !important;
-        }
-
-        .justify-content-xl-between {
-            justify-content: space-between !important;
-        }
-
-        .justify-content-xl-around {
-            justify-content: space-around !important;
-        }
-
-        .justify-content-xl-evenly {
-            justify-content: space-evenly !important;
-        }
-
-        .align-items-xl-start {
-            align-items: flex-start !important;
-        }
-
-        .align-items-xl-end {
-            align-items: flex-end !important;
-        }
-
-        .align-items-xl-center {
-            align-items: center !important;
-        }
-
-        .align-items-xl-baseline {
-            align-items: baseline !important;
-        }
-
-        .align-items-xl-stretch {
-            align-items: stretch !important;
-        }
-
-        .align-content-xl-start {
-            align-content: flex-start !important;
-        }
-
-        .align-content-xl-end {
-            align-content: flex-end !important;
-        }
-
-        .align-content-xl-center {
-            align-content: center !important;
-        }
-
-        .align-content-xl-between {
-            align-content: space-between !important;
-        }
-
-        .align-content-xl-around {
-            align-content: space-around !important;
-        }
-
-        .align-content-xl-stretch {
-            align-content: stretch !important;
-        }
-
-        .align-self-xl-auto {
-            align-self: auto !important;
-        }
-
-        .align-self-xl-start {
-            align-self: flex-start !important;
-        }
-
-        .align-self-xl-end {
-            align-self: flex-end !important;
-        }
-
-        .align-self-xl-center {
-            align-self: center !important;
-        }
-
-        .align-self-xl-baseline {
-            align-self: baseline !important;
-        }
-
-        .align-self-xl-stretch {
-            align-self: stretch !important;
-        }
-
-        .order-xl-first {
-            order: -1 !important;
-        }
-
-        .order-xl-0 {
-            order: 0 !important;
-        }
-
-        .order-xl-1 {
-            order: 1 !important;
-        }
-
-        .order-xl-2 {
-            order: 2 !important;
-        }
-
-        .order-xl-3 {
-            order: 3 !important;
-        }
-
-        .order-xl-4 {
-            order: 4 !important;
-        }
-
-        .order-xl-5 {
-            order: 5 !important;
-        }
-
-        .order-xl-last {
-            order: 6 !important;
-        }
-
-        .m-xl-0 {
-            margin: 0 !important;
-        }
-
-        .m-xl-1 {
-            margin: 0.25rem !important;
-        }
-
-        .m-xl-2 {
-            margin: 0.5rem !important;
-        }
-
-        .m-xl-3 {
-            margin: 1rem !important;
-        }
-
-        .m-xl-4 {
-            margin: 1.5rem !important;
-        }
-
-        .m-xl-5 {
-            margin: 3rem !important;
-        }
-
-        .m-xl-auto {
-            margin: auto !important;
-        }
-
-        .mx-xl-0 {
-            margin-right: 0 !important;
-            margin-left: 0 !important;
-        }
-
-        .mx-xl-1 {
-            margin-right: 0.25rem !important;
-            margin-left: 0.25rem !important;
-        }
-
-        .mx-xl-2 {
-            margin-right: 0.5rem !important;
-            margin-left: 0.5rem !important;
-        }
-
-        .mx-xl-3 {
-            margin-right: 1rem !important;
-            margin-left: 1rem !important;
-        }
-
-        .mx-xl-4 {
-            margin-right: 1.5rem !important;
-            margin-left: 1.5rem !important;
-        }
-
-        .mx-xl-5 {
-            margin-right: 3rem !important;
-            margin-left: 3rem !important;
-        }
-
-        .mx-xl-auto {
-            margin-right: auto !important;
-            margin-left: auto !important;
-        }
-
-        .my-xl-0 {
-            margin-top: 0 !important;
-            margin-bottom: 0 !important;
-        }
-
-        .my-xl-1 {
-            margin-top: 0.25rem !important;
-            margin-bottom: 0.25rem !important;
-        }
-
-        .my-xl-2 {
-            margin-top: 0.5rem !important;
-            margin-bottom: 0.5rem !important;
-        }
-
-        .my-xl-3 {
-            margin-top: 1rem !important;
-            margin-bottom: 1rem !important;
-        }
-
-        .my-xl-4 {
-            margin-top: 1.5rem !important;
-            margin-bottom: 1.5rem !important;
-        }
-
-        .my-xl-5 {
-            margin-top: 3rem !important;
-            margin-bottom: 3rem !important;
-        }
-
-        .my-xl-auto {
-            margin-top: auto !important;
-            margin-bottom: auto !important;
-        }
-
-        .mt-xl-0 {
-            margin-top: 0 !important;
-        }
-
-        .mt-xl-1 {
-            margin-top: 0.25rem !important;
-        }
-
-        .mt-xl-2 {
-            margin-top: 0.5rem !important;
-        }
-
-        .mt-xl-3 {
-            margin-top: 1rem !important;
-        }
-
-        .mt-xl-4 {
-            margin-top: 1.5rem !important;
-        }
-
-        .mt-xl-5 {
-            margin-top: 3rem !important;
-        }
-
-        .mt-xl-auto {
-            margin-top: auto !important;
-        }
-
-        .me-xl-0 {
-            margin-right: 0 !important;
-        }
-
-        .me-xl-1 {
-            margin-right: 0.25rem !important;
-        }
-
-        .me-xl-2 {
-            margin-right: 0.5rem !important;
-        }
-
-        .me-xl-3 {
-            margin-right: 1rem !important;
-        }
-
-        .me-xl-4 {
-            margin-right: 1.5rem !important;
-        }
-
-        .me-xl-5 {
-            margin-right: 3rem !important;
-        }
-
-        .me-xl-auto {
-            margin-right: auto !important;
-        }
-
-        .mb-xl-0 {
-            margin-bottom: 0 !important;
-        }
-
-        .mb-xl-1 {
-            margin-bottom: 0.25rem !important;
-        }
-
-        .mb-xl-2 {
-            margin-bottom: 0.5rem !important;
-        }
-
-        .mb-xl-3 {
-            margin-bottom: 1rem !important;
-        }
-
-        .mb-xl-4 {
-            margin-bottom: 1.5rem !important;
-        }
-
-        .mb-xl-5 {
-            margin-bottom: 3rem !important;
-        }
-
-        .mb-xl-auto {
-            margin-bottom: auto !important;
-        }
-
-        .ms-xl-0 {
-            margin-left: 0 !important;
-        }
-
-        .ms-xl-1 {
-            margin-left: 0.25rem !important;
-        }
-
-        .ms-xl-2 {
-            margin-left: 0.5rem !important;
-        }
-
-        .ms-xl-3 {
-            margin-left: 1rem !important;
-        }
-
-        .ms-xl-4 {
-            margin-left: 1.5rem !important;
-        }
-
-        .ms-xl-5 {
-            margin-left: 3rem !important;
-        }
-
-        .ms-xl-auto {
-            margin-left: auto !important;
-        }
-
-        .p-xl-0 {
-            padding: 0 !important;
-        }
-
-        .p-xl-1 {
-            padding: 0.25rem !important;
-        }
-
-        .p-xl-2 {
-            padding: 0.5rem !important;
-        }
-
-        .p-xl-3 {
-            padding: 1rem !important;
-        }
-
-        .p-xl-4 {
-            padding: 1.5rem !important;
-        }
-
-        .p-xl-5 {
-            padding: 3rem !important;
-        }
-
-        .px-xl-0 {
-            padding-right: 0 !important;
-            padding-left: 0 !important;
-        }
-
-        .px-xl-1 {
-            padding-right: 0.25rem !important;
-            padding-left: 0.25rem !important;
-        }
-
-        .px-xl-2 {
-            padding-right: 0.5rem !important;
-            padding-left: 0.5rem !important;
-        }
-
-        .px-xl-3 {
-            padding-right: 1rem !important;
-            padding-left: 1rem !important;
-        }
-
-        .px-xl-4 {
-            padding-right: 1.5rem !important;
-            padding-left: 1.5rem !important;
-        }
-
-        .px-xl-5 {
-            padding-right: 3rem !important;
-            padding-left: 3rem !important;
-        }
-
-        .py-xl-0 {
-            padding-top: 0 !important;
-            padding-bottom: 0 !important;
-        }
-
-        .py-xl-1 {
-            padding-top: 0.25rem !important;
-            padding-bottom: 0.25rem !important;
-        }
-
-        .py-xl-2 {
-            padding-top: 0.5rem !important;
-            padding-bottom: 0.5rem !important;
-        }
-
-        .py-xl-3 {
-            padding-top: 1rem !important;
-            padding-bottom: 1rem !important;
-        }
-
-        .py-xl-4 {
-            padding-top: 1.5rem !important;
-            padding-bottom: 1.5rem !important;
-        }
-
-        .py-xl-5 {
-            padding-top: 3rem !important;
-            padding-bottom: 3rem !important;
-        }
-
-        .pt-xl-0 {
-            padding-top: 0 !important;
-        }
-
-        .pt-xl-1 {
-            padding-top: 0.25rem !important;
-        }
-
-        .pt-xl-2 {
-            padding-top: 0.5rem !important;
-        }
-
-        .pt-xl-3 {
-            padding-top: 1rem !important;
-        }
-
-        .pt-xl-4 {
-            padding-top: 1.5rem !important;
-        }
-
-        .pt-xl-5 {
-            padding-top: 3rem !important;
-        }
-
-        .pe-xl-0 {
-            padding-right: 0 !important;
-        }
-
-        .pe-xl-1 {
-            padding-right: 0.25rem !important;
-        }
-
-        .pe-xl-2 {
-            padding-right: 0.5rem !important;
-        }
-
-        .pe-xl-3 {
-            padding-right: 1rem !important;
-        }
-
-        .pe-xl-4 {
-            padding-right: 1.5rem !important;
-        }
-
-        .pe-xl-5 {
-            padding-right: 3rem !important;
-        }
-
-        .pb-xl-0 {
-            padding-bottom: 0 !important;
-        }
-
-        .pb-xl-1 {
-            padding-bottom: 0.25rem !important;
-        }
-
-        .pb-xl-2 {
-            padding-bottom: 0.5rem !important;
-        }
-
-        .pb-xl-3 {
-            padding-bottom: 1rem !important;
-        }
-
-        .pb-xl-4 {
-            padding-bottom: 1.5rem !important;
-        }
-
-        .pb-xl-5 {
-            padding-bottom: 3rem !important;
-        }
-
-        .ps-xl-0 {
-            padding-left: 0 !important;
-        }
-
-        .ps-xl-1 {
-            padding-left: 0.25rem !important;
-        }
-
-        .ps-xl-2 {
-            padding-left: 0.5rem !important;
-        }
-
-        .ps-xl-3 {
-            padding-left: 1rem !important;
-        }
-
-        .ps-xl-4 {
-            padding-left: 1.5rem !important;
-        }
-
-        .ps-xl-5 {
-            padding-left: 3rem !important;
-        }
-
-        .gap-xl-0 {
-            gap: 0 !important;
-        }
-
-        .gap-xl-1 {
-            gap: 0.25rem !important;
-        }
-
-        .gap-xl-2 {
-            gap: 0.5rem !important;
-        }
-
-        .gap-xl-3 {
-            gap: 1rem !important;
-        }
-
-        .gap-xl-4 {
-            gap: 1.5rem !important;
-        }
-
-        .gap-xl-5 {
-            gap: 3rem !important;
-        }
-
-        .row-gap-xl-0 {
-            row-gap: 0 !important;
-        }
-
-        .row-gap-xl-1 {
-            row-gap: 0.25rem !important;
-        }
-
-        .row-gap-xl-2 {
-            row-gap: 0.5rem !important;
-        }
-
-        .row-gap-xl-3 {
-            row-gap: 1rem !important;
-        }
-
-        .row-gap-xl-4 {
-            row-gap: 1.5rem !important;
-        }
-
-        .row-gap-xl-5 {
-            row-gap: 3rem !important;
-        }
-
-        .column-gap-xl-0 {
-            column-gap: 0 !important;
-        }
-
-        .column-gap-xl-1 {
-            column-gap: 0.25rem !important;
-        }
-
-        .column-gap-xl-2 {
-            column-gap: 0.5rem !important;
-        }
-
-        .column-gap-xl-3 {
-            column-gap: 1rem !important;
-        }
-
-        .column-gap-xl-4 {
-            column-gap: 1.5rem !important;
-        }
-
-        .column-gap-xl-5 {
-            column-gap: 3rem !important;
-        }
-
-        .text-xl-start {
-            text-align: left !important;
-        }
-
-        .text-xl-end {
-            text-align: right !important;
-        }
-
-        .text-xl-center {
-            text-align: center !important;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .float-xxl-start {
-            float: left !important;
-        }
-
-        .float-xxl-end {
-            float: right !important;
-        }
-
-        .float-xxl-none {
-            float: none !important;
-        }
-
-        .object-fit-xxl-contain {
-            object-fit: contain !important;
-        }
-
-        .object-fit-xxl-cover {
-            object-fit: cover !important;
-        }
-
-        .object-fit-xxl-fill {
-            object-fit: fill !important;
-        }
-
-        .object-fit-xxl-scale {
-            object-fit: scale-down !important;
-        }
-
-        .object-fit-xxl-none {
-            object-fit: none !important;
-        }
-
-        .d-xxl-inline {
-            display: inline !important;
-        }
-
-        .d-xxl-inline-block {
-            display: inline-block !important;
-        }
-
-        .d-xxl-block {
-            display: block !important;
-        }
-
-        .d-xxl-grid {
-            display: grid !important;
-        }
-
-        .d-xxl-inline-grid {
-            display: inline-grid !important;
-        }
-
-        .d-xxl-table {
-            display: table !important;
-        }
-
-        .d-xxl-table-row {
-            display: table-row !important;
-        }
-
-        .d-xxl-table-cell {
-            display: table-cell !important;
-        }
-
-        .d-xxl-flex {
-            display: flex !important;
-        }
-
-        .d-xxl-inline-flex {
-            display: inline-flex !important;
-        }
-
-        .d-xxl-none {
-            display: none !important;
-        }
-
-        .flex-xxl-fill {
-            flex: 1 1 auto !important;
-        }
-
-        .flex-xxl-row {
-            flex-direction: row !important;
-        }
-
-        .flex-xxl-column {
-            flex-direction: column !important;
-        }
-
-        .flex-xxl-row-reverse {
-            flex-direction: row-reverse !important;
-        }
-
-        .flex-xxl-column-reverse {
-            flex-direction: column-reverse !important;
-        }
-
-        .flex-xxl-grow-0 {
-            flex-grow: 0 !important;
-        }
-
-        .flex-xxl-grow-1 {
-            flex-grow: 1 !important;
-        }
-
-        .flex-xxl-shrink-0 {
-            flex-shrink: 0 !important;
-        }
-
-        .flex-xxl-shrink-1 {
-            flex-shrink: 1 !important;
-        }
-
-        .flex-xxl-wrap {
-            flex-wrap: wrap !important;
-        }
-
-        .flex-xxl-nowrap {
-            flex-wrap: nowrap !important;
-        }
-
-        .flex-xxl-wrap-reverse {
-            flex-wrap: wrap-reverse !important;
-        }
-
-        .justify-content-xxl-start {
-            justify-content: flex-start !important;
-        }
-
-        .justify-content-xxl-end {
-            justify-content: flex-end !important;
-        }
-
-        .justify-content-xxl-center {
-            justify-content: center !important;
-        }
-
-        .justify-content-xxl-between {
-            justify-content: space-between !important;
-        }
-
-        .justify-content-xxl-around {
-            justify-content: space-around !important;
-        }
-
-        .justify-content-xxl-evenly {
-            justify-content: space-evenly !important;
-        }
-
-        .align-items-xxl-start {
-            align-items: flex-start !important;
-        }
-
-        .align-items-xxl-end {
-            align-items: flex-end !important;
-        }
-
-        .align-items-xxl-center {
-            align-items: center !important;
-        }
-
-        .align-items-xxl-baseline {
-            align-items: baseline !important;
-        }
-
-        .align-items-xxl-stretch {
-            align-items: stretch !important;
-        }
-
-        .align-content-xxl-start {
-            align-content: flex-start !important;
-        }
-
-        .align-content-xxl-end {
-            align-content: flex-end !important;
-        }
-
-        .align-content-xxl-center {
-            align-content: center !important;
-        }
-
-        .align-content-xxl-between {
-            align-content: space-between !important;
-        }
-
-        .align-content-xxl-around {
-            align-content: space-around !important;
-        }
-
-        .align-content-xxl-stretch {
-            align-content: stretch !important;
-        }
-
-        .align-self-xxl-auto {
-            align-self: auto !important;
-        }
-
-        .align-self-xxl-start {
-            align-self: flex-start !important;
-        }
-
-        .align-self-xxl-end {
-            align-self: flex-end !important;
-        }
-
-        .align-self-xxl-center {
-            align-self: center !important;
-        }
-
-        .align-self-xxl-baseline {
-            align-self: baseline !important;
-        }
-
-        .align-self-xxl-stretch {
-            align-self: stretch !important;
-        }
-
-        .order-xxl-first {
-            order: -1 !important;
-        }
-
-        .order-xxl-0 {
-            order: 0 !important;
-        }
-
-        .order-xxl-1 {
-            order: 1 !important;
-        }
-
-        .order-xxl-2 {
-            order: 2 !important;
-        }
-
-        .order-xxl-3 {
-            order: 3 !important;
-        }
-
-        .order-xxl-4 {
-            order: 4 !important;
-        }
-
-        .order-xxl-5 {
-            order: 5 !important;
-        }
-
-        .order-xxl-last {
-            order: 6 !important;
-        }
-
-        .m-xxl-0 {
-            margin: 0 !important;
-        }
-
-        .m-xxl-1 {
-            margin: 0.25rem !important;
-        }
-
-        .m-xxl-2 {
-            margin: 0.5rem !important;
-        }
-
-        .m-xxl-3 {
-            margin: 1rem !important;
-        }
-
-        .m-xxl-4 {
-            margin: 1.5rem !important;
-        }
-
-        .m-xxl-5 {
-            margin: 3rem !important;
-        }
-
-        .m-xxl-auto {
-            margin: auto !important;
-        }
-
-        .mx-xxl-0 {
-            margin-right: 0 !important;
-            margin-left: 0 !important;
-        }
-
-        .mx-xxl-1 {
-            margin-right: 0.25rem !important;
-            margin-left: 0.25rem !important;
-        }
-
-        .mx-xxl-2 {
-            margin-right: 0.5rem !important;
-            margin-left: 0.5rem !important;
-        }
-
-        .mx-xxl-3 {
-            margin-right: 1rem !important;
-            margin-left: 1rem !important;
-        }
-
-        .mx-xxl-4 {
-            margin-right: 1.5rem !important;
-            margin-left: 1.5rem !important;
-        }
-
-        .mx-xxl-5 {
-            margin-right: 3rem !important;
-            margin-left: 3rem !important;
-        }
-
-        .mx-xxl-auto {
-            margin-right: auto !important;
-            margin-left: auto !important;
-        }
-
-        .my-xxl-0 {
-            margin-top: 0 !important;
-            margin-bottom: 0 !important;
-        }
-
-        .my-xxl-1 {
-            margin-top: 0.25rem !important;
-            margin-bottom: 0.25rem !important;
-        }
-
-        .my-xxl-2 {
-            margin-top: 0.5rem !important;
-            margin-bottom: 0.5rem !important;
-        }
-
-        .my-xxl-3 {
-            margin-top: 1rem !important;
-            margin-bottom: 1rem !important;
-        }
-
-        .my-xxl-4 {
-            margin-top: 1.5rem !important;
-            margin-bottom: 1.5rem !important;
-        }
-
-        .my-xxl-5 {
-            margin-top: 3rem !important;
-            margin-bottom: 3rem !important;
-        }
-
-        .my-xxl-auto {
-            margin-top: auto !important;
-            margin-bottom: auto !important;
-        }
-
-        .mt-xxl-0 {
-            margin-top: 0 !important;
-        }
-
-        .mt-xxl-1 {
-            margin-top: 0.25rem !important;
-        }
-
-        .mt-xxl-2 {
-            margin-top: 0.5rem !important;
-        }
-
-        .mt-xxl-3 {
-            margin-top: 1rem !important;
-        }
-
-        .mt-xxl-4 {
-            margin-top: 1.5rem !important;
-        }
-
-        .mt-xxl-5 {
-            margin-top: 3rem !important;
-        }
-
-        .mt-xxl-auto {
-            margin-top: auto !important;
-        }
-
-        .me-xxl-0 {
-            margin-right: 0 !important;
-        }
-
-        .me-xxl-1 {
-            margin-right: 0.25rem !important;
-        }
-
-        .me-xxl-2 {
-            margin-right: 0.5rem !important;
-        }
-
-        .me-xxl-3 {
-            margin-right: 1rem !important;
-        }
-
-        .me-xxl-4 {
-            margin-right: 1.5rem !important;
-        }
-
-        .me-xxl-5 {
-            margin-right: 3rem !important;
-        }
-
-        .me-xxl-auto {
-            margin-right: auto !important;
-        }
-
-        .mb-xxl-0 {
-            margin-bottom: 0 !important;
-        }
-
-        .mb-xxl-1 {
-            margin-bottom: 0.25rem !important;
-        }
-
-        .mb-xxl-2 {
-            margin-bottom: 0.5rem !important;
-        }
-
-        .mb-xxl-3 {
-            margin-bottom: 1rem !important;
-        }
-
-        .mb-xxl-4 {
-            margin-bottom: 1.5rem !important;
-        }
-
-        .mb-xxl-5 {
-            margin-bottom: 3rem !important;
-        }
-
-        .mb-xxl-auto {
-            margin-bottom: auto !important;
-        }
-
-        .ms-xxl-0 {
-            margin-left: 0 !important;
-        }
-
-        .ms-xxl-1 {
-            margin-left: 0.25rem !important;
-        }
-
-        .ms-xxl-2 {
-            margin-left: 0.5rem !important;
-        }
-
-        .ms-xxl-3 {
-            margin-left: 1rem !important;
-        }
-
-        .ms-xxl-4 {
-            margin-left: 1.5rem !important;
-        }
-
-        .ms-xxl-5 {
-            margin-left: 3rem !important;
-        }
-
-        .ms-xxl-auto {
-            margin-left: auto !important;
-        }
-
-        .p-xxl-0 {
-            padding: 0 !important;
-        }
-
-        .p-xxl-1 {
-            padding: 0.25rem !important;
-        }
-
-        .p-xxl-2 {
-            padding: 0.5rem !important;
-        }
-
-        .p-xxl-3 {
-            padding: 1rem !important;
-        }
-
-        .p-xxl-4 {
-            padding: 1.5rem !important;
-        }
-
-        .p-xxl-5 {
-            padding: 3rem !important;
-        }
-
-        .px-xxl-0 {
-            padding-right: 0 !important;
-            padding-left: 0 !important;
-        }
-
-        .px-xxl-1 {
-            padding-right: 0.25rem !important;
-            padding-left: 0.25rem !important;
-        }
-
-        .px-xxl-2 {
-            padding-right: 0.5rem !important;
-            padding-left: 0.5rem !important;
-        }
-
-        .px-xxl-3 {
-            padding-right: 1rem !important;
-            padding-left: 1rem !important;
-        }
-
-        .px-xxl-4 {
-            padding-right: 1.5rem !important;
-            padding-left: 1.5rem !important;
-        }
-
-        .px-xxl-5 {
-            padding-right: 3rem !important;
-            padding-left: 3rem !important;
-        }
-
-        .py-xxl-0 {
-            padding-top: 0 !important;
-            padding-bottom: 0 !important;
-        }
-
-        .py-xxl-1 {
-            padding-top: 0.25rem !important;
-            padding-bottom: 0.25rem !important;
-        }
-
-        .py-xxl-2 {
-            padding-top: 0.5rem !important;
-            padding-bottom: 0.5rem !important;
-        }
-
-        .py-xxl-3 {
-            padding-top: 1rem !important;
-            padding-bottom: 1rem !important;
-        }
-
-        .py-xxl-4 {
-            padding-top: 1.5rem !important;
-            padding-bottom: 1.5rem !important;
-        }
-
-        .py-xxl-5 {
-            padding-top: 3rem !important;
-            padding-bottom: 3rem !important;
-        }
-
-        .pt-xxl-0 {
-            padding-top: 0 !important;
-        }
-
-        .pt-xxl-1 {
-            padding-top: 0.25rem !important;
-        }
-
-        .pt-xxl-2 {
-            padding-top: 0.5rem !important;
-        }
-
-        .pt-xxl-3 {
-            padding-top: 1rem !important;
-        }
-
-        .pt-xxl-4 {
-            padding-top: 1.5rem !important;
-        }
-
-        .pt-xxl-5 {
-            padding-top: 3rem !important;
-        }
-
-        .pe-xxl-0 {
-            padding-right: 0 !important;
-        }
-
-        .pe-xxl-1 {
-            padding-right: 0.25rem !important;
-        }
-
-        .pe-xxl-2 {
-            padding-right: 0.5rem !important;
-        }
-
-        .pe-xxl-3 {
-            padding-right: 1rem !important;
-        }
-
-        .pe-xxl-4 {
-            padding-right: 1.5rem !important;
-        }
-
-        .pe-xxl-5 {
-            padding-right: 3rem !important;
-        }
-
-        .pb-xxl-0 {
-            padding-bottom: 0 !important;
-        }
-
-        .pb-xxl-1 {
-            padding-bottom: 0.25rem !important;
-        }
-
-        .pb-xxl-2 {
-            padding-bottom: 0.5rem !important;
-        }
-
-        .pb-xxl-3 {
-            padding-bottom: 1rem !important;
-        }
-
-        .pb-xxl-4 {
-            padding-bottom: 1.5rem !important;
-        }
-
-        .pb-xxl-5 {
-            padding-bottom: 3rem !important;
-        }
-
-        .ps-xxl-0 {
-            padding-left: 0 !important;
-        }
-
-        .ps-xxl-1 {
-            padding-left: 0.25rem !important;
-        }
-
-        .ps-xxl-2 {
-            padding-left: 0.5rem !important;
-        }
-
-        .ps-xxl-3 {
-            padding-left: 1rem !important;
-        }
-
-        .ps-xxl-4 {
-            padding-left: 1.5rem !important;
-        }
-
-        .ps-xxl-5 {
-            padding-left: 3rem !important;
-        }
-
-        .gap-xxl-0 {
-            gap: 0 !important;
-        }
-
-        .gap-xxl-1 {
-            gap: 0.25rem !important;
-        }
-
-        .gap-xxl-2 {
-            gap: 0.5rem !important;
-        }
-
-        .gap-xxl-3 {
-            gap: 1rem !important;
-        }
-
-        .gap-xxl-4 {
-            gap: 1.5rem !important;
-        }
-
-        .gap-xxl-5 {
-            gap: 3rem !important;
-        }
-
-        .row-gap-xxl-0 {
-            row-gap: 0 !important;
-        }
-
-        .row-gap-xxl-1 {
-            row-gap: 0.25rem !important;
-        }
-
-        .row-gap-xxl-2 {
-            row-gap: 0.5rem !important;
-        }
-
-        .row-gap-xxl-3 {
-            row-gap: 1rem !important;
-        }
-
-        .row-gap-xxl-4 {
-            row-gap: 1.5rem !important;
-        }
-
-        .row-gap-xxl-5 {
-            row-gap: 3rem !important;
-        }
-
-        .column-gap-xxl-0 {
-            column-gap: 0 !important;
-        }
-
-        .column-gap-xxl-1 {
-            column-gap: 0.25rem !important;
-        }
-
-        .column-gap-xxl-2 {
-            column-gap: 0.5rem !important;
-        }
-
-        .column-gap-xxl-3 {
-            column-gap: 1rem !important;
-        }
-
-        .column-gap-xxl-4 {
-            column-gap: 1.5rem !important;
-        }
-
-        .column-gap-xxl-5 {
-            column-gap: 3rem !important;
-        }
-
-        .text-xxl-start {
-            text-align: left !important;
-        }
-
-        .text-xxl-end {
-            text-align: right !important;
-        }
-
-        .text-xxl-center {
-            text-align: center !important;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .fs-1 {
-            font-size: 2.5rem !important;
-        }
-
-        .fs-2 {
-            font-size: 2rem !important;
-        }
-
-        .fs-3 {
-            font-size: 1.75rem !important;
-        }
-
-        .fs-4 {
-            font-size: 1.5rem !important;
-        }
-    }
-
-    @media print {
-        .d-print-inline {
-            display: inline !important;
-        }
-
-        .d-print-inline-block {
-            display: inline-block !important;
-        }
-
-        .d-print-block {
-            display: block !important;
-        }
-
-        .d-print-grid {
-            display: grid !important;
-        }
-
-        .d-print-inline-grid {
-            display: inline-grid !important;
-        }
-
-        .d-print-table {
-            display: table !important;
-        }
-
-        .d-print-table-row {
-            display: table-row !important;
-        }
-
-        .d-print-table-cell {
-            display: table-cell !important;
-        }
-
-        .d-print-flex {
-            display: flex !important;
-        }
-
-        .d-print-inline-flex {
-            display: inline-flex !important;
-        }
-
-        .d-print-none {
-            display: none !important;
-        }
-    }
-
-</style>
-</head>
-<body style="background-color: rgb(21, 152, 149); margin-top: auto; margin-bottom: auto;">
-<div id="root">
-    <div class="App" style="overflow: hidden;">
-        <div class="px-0 container-fluid">
-            <nav class="navbar navbar-expand-md navbar-white bg-white">
-                <div class="container"><a href="http://localhost:3000/home" class="navbar-brand"><span
-                        class="ikona"><img id="background-img" src="logo.png" width="60" height="60"
-                                           class=""></span><span class="mx-3 ikona"><span
-                        class="svetlo">Tour</span><span class="temno">Mate</span></span></a>
-                    <button aria-controls="navbarScroll" type="button" aria-label="Toggle navigation"
-                            class="navbar-toggler collapsed"><span class="navbar-toggler-icon"></span></button>
-                    <div class="navbar-collapse collapse" id="navbarScroll">
-                        <div class="ms-auto navbar-nav navbar-nav-scroll">
-                            <a href="http://localhost:3000/home"
-                                                                             data-rr-ui-event-key="/home"
-                                                                             class="m-2 nav-link">Home</a><a
-                                href="http://localhost:3000/login#features" data-rr-ui-event-key="#features"
-                                class="m-2 nav-link">Features</a><a href="http://localhost:3000/login#pricing"
-                                                                    data-rr-ui-event-key="#pricing"
-                                                                    class="m-2 nav-link">
-                            <button type="button" class="btn btn-primary"></button>
-                        </a>
-                            <button type="button" class="m-2 btn btn-primary btn-md"
-                                    style="background-color: rgb(21, 152, 149);">
-                                <svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 16 16"
-                                     height="1.5em" width="1.5em" xmlns="http://www.w3.org/2000/svg">
-                                    <path d="M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3Zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z"></path>
-                                </svg>
-                                Најави се
-                            </button>
-                        </div>
-                    </div>
-                </div>
-            </nav>
-            <br></div>
-        <div class="mt-5 container">
-            <div class="container" style="width: 40%;">
-                <div class="rounded-5 m-5 my-auto mx-auto py-5 px-5 container"
-                     style="background-color: rgb(255, 255, 255);">
-                    <form class="" action="/login" method="post">
-                        <div class="mb-3"><label class="form-label" for="formBasicEmail">Е-адреса</label><input
-                                placeholder="Enter email" name="email" type="email" id="formBasicEmail"
-                                class="form-control" value="darsov2@gmail.com"><small class="text-muted form-text">Вашите
-                            податоци никогаш нема да бидат споделени.</small></div>
-                        <div class="mb-3"><label class="form-label" for="formBasicPassword">Лозинка</label><input
-                                placeholder="Password" name="password" type="password" id="formBasicPassword"
-                                class="form-control" value="orelorel123"></div>
-                        <div class="mb-3">
-                            <div class="form-check"><input type="checkbox" id="formBasicCheckbox"
-                                                           class="form-check-input"><label title=""
-                                                                                           for="formBasicCheckbox"
-                                                                                           class="form-check-label">Check
-                                me out</label></div>
-                        </div>
-                        <a href="http://localhost:3000/register" style="text-decoration: none;"><small
-                                class="text-muted form-text">Регистритрај се</small></a>
-                        <div class="my-1">
-                            <button type="submit" class="btn btn-primary btn-md"
-                                    style="background-color: rgb(21, 152, 149);"><span class="ikona my-1"><svg
-                                    stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 1024 1024"
-                                    height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path
-                                    d="M832 464h-68V240c0-70.7-57.3-128-128-128H388c-70.7 0-128 57.3-128 128v224h-68c-17.7 0-32 14.3-32 32v384c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V496c0-17.7-14.3-32-32-32zM540 701v53c0 4.4-3.6 8-8 8h-40c-4.4 0-8-3.6-8-8v-53a48.01 48.01 0 1 1 56 0zm152-237H332V240c0-30.9 25.1-56 56-56h248c30.9 0 56 25.1 56 56v224z"></path></svg></span><span
-                                    class="ikona mx-3">Најави се</span></button>
-                        </div>
-                    </form>
-                </div>
-            </div>
-        </div>
-    </div>
-</div>
-</body>
-</html>
Index: c/main/resources/templates/login.html
===================================================================
--- src/main/resources/templates/login.html	(revision efaa05348a3e0dac884385ba4dd765baaeb47ec6)
+++ 	(revision )
@@ -1,13751 +1,0 @@
-<!DOCTYPE html>
-<!-- saved from url=(0027)http://localhost:3000/login -->
-<html lang="en">
-<head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-
-    <!-- <link rel="icon" href="http://localhost:3000/favicon.ico"> -->
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <meta name="theme-color" content="#000000">
-    <meta name="description" content="Web site created using create-react-app">
-    <!-- <link rel="apple-touch-icon" href="http://localhost:3000/logo192.png"> -->
-    <!--
-      manifest.json provides metadata used when your web app is installed on a
-      user's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/
-    -->
-    <link rel="manifest" href="http://localhost:3000/manifest.json">
-    <!--
-      Notice the use of  in the tags above.
-      It will be replaced with the URL of the `public` folder during the build.
-      Only files inside the `public` folder can be referenced from the HTML.
-
-      Unlike "/favicon.ico" or "favicon.ico", "/favicon.ico" will
-      work correctly both with client-side routing and a non-root public URL.
-      Learn how to configure a non-root public URL by running `npm run build`.
-    -->
-    <title>React App</title>
-    >
-    <style>body {
-        margin: 0;
-        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
-        'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
-        sans-serif;
-        -webkit-font-smoothing: antialiased;
-        -moz-osx-font-smoothing: grayscale;
-    }
-
-    code {
-        font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
-        monospace;
-    }
-
-    .backdrop {
-        position: fixed;
-        top: 0;
-        left: 0;
-        width: 100%;
-        height: 100vh;
-        z-index: -10;
-        background: rgba(0, 0, 0, 0.75);
-    }
-
-    .modal {
-        position: fixed;
-        top: 30vh;
-        left: 10%;
-        width: 80%;
-        z-index: 10000000;
-        overflow: hidden;
-    }
-
-    /*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8uL3NyYy9pbmRleC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxTQUFTO0VBQ1Q7O2NBRVk7RUFDWixtQ0FBbUM7RUFDbkMsa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0U7YUFDVztBQUNiOztBQUVBO0VBQ0UsZUFBZTtFQUNmLE1BQU07RUFDTixPQUFPO0VBQ1AsV0FBVztFQUNYLGFBQWE7RUFDYixZQUFZO0VBQ1osK0JBQStCO0FBQ2pDOztBQUVBO0VBQ0UsZUFBZTtFQUNmLFNBQVM7RUFDVCxTQUFTO0VBQ1QsVUFBVTtFQUNWLGlCQUFpQjtFQUNqQixnQkFBZ0I7QUFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnU2Vnb2UgVUknLCAnUm9ib3RvJywgJ094eWdlbicsXG4gICAgJ1VidW50dScsICdDYW50YXJlbGwnLCAnRmlyYSBTYW5zJywgJ0Ryb2lkIFNhbnMnLCAnSGVsdmV0aWNhIE5ldWUnLFxuICAgIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5jb2RlIHtcbiAgZm9udC1mYW1pbHk6IHNvdXJjZS1jb2RlLXBybywgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsICdDb3VyaWVyIE5ldycsXG4gICAgbW9ub3NwYWNlO1xufVxuXG4uYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7XG4gIHotaW5kZXg6IC0xMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbn1cblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDMwdmg7XG4gIGxlZnQ6IDEwJTtcbiAgd2lkdGg6IDgwJTtcbiAgei1pbmRleDogMTAwMDAwMDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4iXSwic291cmNlUm9vdCI6IiJ9 */</style>
-    <style>.App {
-        text-align: center;
-    }
-
-
-    .App-logo {
-        height: 40vmin;
-        pointer-events: none;
-    }
-
-    @media (prefers-reduced-motion: no-preference) {
-        .App-logo {
-            animation: App-logo-spin infinite 20s linear;
-        }
-    }
-
-    .App-header {
-        background-color: #282c34;
-        min-height: 100vh;
-        display: flex;
-        flex-direction: column;
-        align-items: center;
-        justify-content: center;
-        font-size: calc(10px + 2vmin);
-        color: white;
-    }
-
-    .App-link {
-        color: #61dafb;
-    }
-
-    .ikona {
-        vertical-align: middle;
-        display: inline-block;
-    }
-
-    .temno {
-        color: #1A5F7A;
-        font-weight: 800;
-        font-size: 1.5rem;
-    }
-
-    .svetlo {
-        color: #57C5B6;
-        font-weight: 500;
-        font-size: 1.5rem;
-    }
-
-    .tab-item {
-
-    }
-
-    .img-link {
-        text-decoration: none;
-    }
-
-    @keyframes App-logo-spin {
-        from {
-            transform: rotate(0deg);
-        }
-        to {
-            transform: rotate(360deg);
-        }
-    }
-
-    /*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8uL3NyYy9BcHAuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usa0JBQWtCO0FBQ3BCOzs7OztBQUtBO0VBQ0UsY0FBYztFQUNkLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFO0lBQ0UsNENBQTRDO0VBQzlDO0FBQ0Y7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsaUJBQWlCO0VBQ2pCLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLHVCQUF1QjtFQUN2Qiw2QkFBNkI7RUFDN0IsWUFBWTtBQUNkOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHNCQUFzQjtFQUN0QixxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsaUJBQWlCO0FBQ25COztBQUVBOztBQUVBOztBQUVBO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0U7SUFDRSx1QkFBdUI7RUFDekI7RUFDQTtJQUNFLHlCQUF5QjtFQUMzQjtBQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLkFwcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuXG5cblxuLkFwcC1sb2dvIHtcbiAgaGVpZ2h0OiA0MHZtaW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgLkFwcC1sb2dvIHtcbiAgICBhbmltYXRpb246IEFwcC1sb2dvLXNwaW4gaW5maW5pdGUgMjBzIGxpbmVhcjtcbiAgfVxufVxuXG4uQXBwLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyODJjMzQ7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1zaXplOiBjYWxjKDEwcHggKyAydm1pbik7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLkFwcC1saW5rIHtcbiAgY29sb3I6ICM2MWRhZmI7XG59XG5cbi5pa29uYSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnRlbW5vIHtcbiAgY29sb3I6ICMxQTVGN0E7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG4uc3ZldGxvIHtcbiAgY29sb3I6ICM1N0M1QjY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG4udGFiLWl0ZW0ge1xuXG59XG5cbi5pbWctbGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuQGtleWZyYW1lcyBBcHAtbG9nby1zcGluIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbiJdLCJzb3VyY2VSb290IjoiIn0= */</style>
-    <style>@charset "UTF-8";
-    /*!
- * Bootstrap  v5.3.0 (https://getbootstrap.com/)
- * Copyright 2011-2023 The Bootstrap Authors
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
- */
-    :root,
-    [data-bs-theme=light] {
-        --bs-blue: #0d6efd;
-        --bs-indigo: #6610f2;
-        --bs-purple: #6f42c1;
-        --bs-pink: #d63384;
-        --bs-red: #dc3545;
-        --bs-orange: #fd7e14;
-        --bs-yellow: #ffc107;
-        --bs-green: #198754;
-        --bs-teal: #20c997;
-        --bs-cyan: #0dcaf0;
-        --bs-black: #000;
-        --bs-white: #fff;
-        --bs-gray: #6c757d;
-        --bs-gray-dark: #343a40;
-        --bs-gray-100: #f8f9fa;
-        --bs-gray-200: #e9ecef;
-        --bs-gray-300: #dee2e6;
-        --bs-gray-400: #ced4da;
-        --bs-gray-500: #adb5bd;
-        --bs-gray-600: #6c757d;
-        --bs-gray-700: #495057;
-        --bs-gray-800: #343a40;
-        --bs-gray-900: #212529;
-        --bs-primary: #0d6efd;
-        --bs-secondary: #6c757d;
-        --bs-success: #198754;
-        --bs-info: #0dcaf0;
-        --bs-warning: #ffc107;
-        --bs-danger: #dc3545;
-        --bs-light: #f8f9fa;
-        --bs-dark: #212529;
-        --bs-primary-rgb: 13, 110, 253;
-        --bs-secondary-rgb: 108, 117, 125;
-        --bs-success-rgb: 25, 135, 84;
-        --bs-info-rgb: 13, 202, 240;
-        --bs-warning-rgb: 255, 193, 7;
-        --bs-danger-rgb: 220, 53, 69;
-        --bs-light-rgb: 248, 249, 250;
-        --bs-dark-rgb: 33, 37, 41;
-        --bs-primary-text-emphasis: #052c65;
-        --bs-secondary-text-emphasis: #2b2f32;
-        --bs-success-text-emphasis: #0a3622;
-        --bs-info-text-emphasis: #055160;
-        --bs-warning-text-emphasis: #664d03;
-        --bs-danger-text-emphasis: #58151c;
-        --bs-light-text-emphasis: #495057;
-        --bs-dark-text-emphasis: #495057;
-        --bs-primary-bg-subtle: #cfe2ff;
-        --bs-secondary-bg-subtle: #e2e3e5;
-        --bs-success-bg-subtle: #d1e7dd;
-        --bs-info-bg-subtle: #cff4fc;
-        --bs-warning-bg-subtle: #fff3cd;
-        --bs-danger-bg-subtle: #f8d7da;
-        --bs-light-bg-subtle: #fcfcfd;
-        --bs-dark-bg-subtle: #ced4da;
-        --bs-primary-border-subtle: #9ec5fe;
-        --bs-secondary-border-subtle: #c4c8cb;
-        --bs-success-border-subtle: #a3cfbb;
-        --bs-info-border-subtle: #9eeaf9;
-        --bs-warning-border-subtle: #ffe69c;
-        --bs-danger-border-subtle: #f1aeb5;
-        --bs-light-border-subtle: #e9ecef;
-        --bs-dark-border-subtle: #adb5bd;
-        --bs-white-rgb: 255, 255, 255;
-        --bs-black-rgb: 0, 0, 0;
-        --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
-        --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
-        --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
-        --bs-body-font-family: var(--bs-font-sans-serif);
-        --bs-body-font-size: 1rem;
-        --bs-body-font-weight: 400;
-        --bs-body-line-height: 1.5;
-        --bs-body-color: #212529;
-        --bs-body-color-rgb: 33, 37, 41;
-        --bs-body-bg: #fff;
-        --bs-body-bg-rgb: 255, 255, 255;
-        --bs-emphasis-color: #000;
-        --bs-emphasis-color-rgb: 0, 0, 0;
-        --bs-secondary-color: rgba(33, 37, 41, 0.75);
-        --bs-secondary-color-rgb: 33, 37, 41;
-        --bs-secondary-bg: #e9ecef;
-        --bs-secondary-bg-rgb: 233, 236, 239;
-        --bs-tertiary-color: rgba(33, 37, 41, 0.5);
-        --bs-tertiary-color-rgb: 33, 37, 41;
-        --bs-tertiary-bg: #f8f9fa;
-        --bs-tertiary-bg-rgb: 248, 249, 250;
-        --bs-heading-color: inherit;
-        --bs-link-color: #0d6efd;
-        --bs-link-color-rgb: 13, 110, 253;
-        --bs-link-decoration: underline;
-        --bs-link-hover-color: #0a58ca;
-        --bs-link-hover-color-rgb: 10, 88, 202;
-        --bs-code-color: #d63384;
-        --bs-highlight-bg: #fff3cd;
-        --bs-border-width: 1px;
-        --bs-border-style: solid;
-        --bs-border-color: #dee2e6;
-        --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
-        --bs-border-radius: 0.375rem;
-        --bs-border-radius-sm: 0.25rem;
-        --bs-border-radius-lg: 0.5rem;
-        --bs-border-radius-xl: 1rem;
-        --bs-border-radius-xxl: 2rem;
-        --bs-border-radius-2xl: var(--bs-border-radius-xxl);
-        --bs-border-radius-pill: 50rem;
-        --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
-        --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
-        --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
-        --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
-        --bs-focus-ring-width: 0.25rem;
-        --bs-focus-ring-opacity: 0.25;
-        --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
-        --bs-form-valid-color: #198754;
-        --bs-form-valid-border-color: #198754;
-        --bs-form-invalid-color: #dc3545;
-        --bs-form-invalid-border-color: #dc3545;
-    }
-
-    [data-bs-theme=dark] {
-        color-scheme: dark;
-        --bs-body-color: #adb5bd;
-        --bs-body-color-rgb: 173, 181, 189;
-        --bs-body-bg: #212529;
-        --bs-body-bg-rgb: 33, 37, 41;
-        --bs-emphasis-color: #fff;
-        --bs-emphasis-color-rgb: 255, 255, 255;
-        --bs-secondary-color: rgba(173, 181, 189, 0.75);
-        --bs-secondary-color-rgb: 173, 181, 189;
-        --bs-secondary-bg: #343a40;
-        --bs-secondary-bg-rgb: 52, 58, 64;
-        --bs-tertiary-color: rgba(173, 181, 189, 0.5);
-        --bs-tertiary-color-rgb: 173, 181, 189;
-        --bs-tertiary-bg: #2b3035;
-        --bs-tertiary-bg-rgb: 43, 48, 53;
-        --bs-primary-text-emphasis: #6ea8fe;
-        --bs-secondary-text-emphasis: #a7acb1;
-        --bs-success-text-emphasis: #75b798;
-        --bs-info-text-emphasis: #6edff6;
-        --bs-warning-text-emphasis: #ffda6a;
-        --bs-danger-text-emphasis: #ea868f;
-        --bs-light-text-emphasis: #f8f9fa;
-        --bs-dark-text-emphasis: #dee2e6;
-        --bs-primary-bg-subtle: #031633;
-        --bs-secondary-bg-subtle: #161719;
-        --bs-success-bg-subtle: #051b11;
-        --bs-info-bg-subtle: #032830;
-        --bs-warning-bg-subtle: #332701;
-        --bs-danger-bg-subtle: #2c0b0e;
-        --bs-light-bg-subtle: #343a40;
-        --bs-dark-bg-subtle: #1a1d20;
-        --bs-primary-border-subtle: #084298;
-        --bs-secondary-border-subtle: #41464b;
-        --bs-success-border-subtle: #0f5132;
-        --bs-info-border-subtle: #087990;
-        --bs-warning-border-subtle: #997404;
-        --bs-danger-border-subtle: #842029;
-        --bs-light-border-subtle: #495057;
-        --bs-dark-border-subtle: #343a40;
-        --bs-heading-color: inherit;
-        --bs-link-color: #6ea8fe;
-        --bs-link-hover-color: #8bb9fe;
-        --bs-link-color-rgb: 110, 168, 254;
-        --bs-link-hover-color-rgb: 139, 185, 254;
-        --bs-code-color: #e685b5;
-        --bs-border-color: #495057;
-        --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
-        --bs-form-valid-color: #75b798;
-        --bs-form-valid-border-color: #75b798;
-        --bs-form-invalid-color: #ea868f;
-        --bs-form-invalid-border-color: #ea868f;
-    }
-
-    *,
-    *::before,
-    *::after {
-        box-sizing: border-box;
-    }
-
-    @media (prefers-reduced-motion: no-preference) {
-        :root {
-            scroll-behavior: smooth;
-        }
-    }
-
-    body {
-        margin: 0;
-        font-family: var(--bs-body-font-family);
-        font-size: var(--bs-body-font-size);
-        font-weight: var(--bs-body-font-weight);
-        line-height: var(--bs-body-line-height);
-        color: var(--bs-body-color);
-        text-align: var(--bs-body-text-align);
-        background-color: var(--bs-body-bg);
-        -webkit-text-size-adjust: 100%;
-        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
-    }
-
-    hr {
-        margin: 1rem 0;
-        color: inherit;
-        border: 0;
-        border-top: var(--bs-border-width) solid;
-        opacity: 0.25;
-    }
-
-    h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
-        margin-top: 0;
-        margin-bottom: 0.5rem;
-        font-weight: 500;
-        line-height: 1.2;
-        color: var(--bs-heading-color);
-    }
-
-    h1, .h1 {
-        font-size: calc(1.375rem + 1.5vw);
-    }
-
-    @media (min-width: 1200px) {
-        h1, .h1 {
-            font-size: 2.5rem;
-        }
-    }
-
-    h2, .h2 {
-        font-size: calc(1.325rem + 0.9vw);
-    }
-
-    @media (min-width: 1200px) {
-        h2, .h2 {
-            font-size: 2rem;
-        }
-    }
-
-    h3, .h3 {
-        font-size: calc(1.3rem + 0.6vw);
-    }
-
-    @media (min-width: 1200px) {
-        h3, .h3 {
-            font-size: 1.75rem;
-        }
-    }
-
-    h4, .h4 {
-        font-size: calc(1.275rem + 0.3vw);
-    }
-
-    @media (min-width: 1200px) {
-        h4, .h4 {
-            font-size: 1.5rem;
-        }
-    }
-
-    h5, .h5 {
-        font-size: 1.25rem;
-    }
-
-    h6, .h6 {
-        font-size: 1rem;
-    }
-
-    p {
-        margin-top: 0;
-        margin-bottom: 1rem;
-    }
-
-    abbr[title] {
-        -webkit-text-decoration: underline dotted;
-        text-decoration: underline dotted;
-        cursor: help;
-        text-decoration-skip-ink: none;
-    }
-
-    address {
-        margin-bottom: 1rem;
-        font-style: normal;
-        line-height: inherit;
-    }
-
-    ol,
-    ul {
-        padding-left: 2rem;
-    }
-
-    ol,
-    ul,
-    dl {
-        margin-top: 0;
-        margin-bottom: 1rem;
-    }
-
-    ol ol,
-    ul ul,
-    ol ul,
-    ul ol {
-        margin-bottom: 0;
-    }
-
-    dt {
-        font-weight: 700;
-    }
-
-    dd {
-        margin-bottom: 0.5rem;
-        margin-left: 0;
-    }
-
-    blockquote {
-        margin: 0 0 1rem;
-    }
-
-    b,
-    strong {
-        font-weight: bolder;
-    }
-
-    small, .small {
-        font-size: 0.875em;
-    }
-
-    mark, .mark {
-        padding: 0.1875em;
-        background-color: var(--bs-highlight-bg);
-    }
-
-    sub,
-    sup {
-        position: relative;
-        font-size: 0.75em;
-        line-height: 0;
-        vertical-align: baseline;
-    }
-
-    sub {
-        bottom: -0.25em;
-    }
-
-    sup {
-        top: -0.5em;
-    }
-
-    a {
-        color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
-        text-decoration: underline;
-    }
-
-    a:hover {
-        --bs-link-color-rgb: var(--bs-link-hover-color-rgb);
-    }
-
-    a:not([href]):not([class]), a:not([href]):not([class]):hover {
-        color: inherit;
-        text-decoration: none;
-    }
-
-    pre,
-    code,
-    kbd,
-    samp {
-        font-family: var(--bs-font-monospace);
-        font-size: 1em;
-    }
-
-    pre {
-        display: block;
-        margin-top: 0;
-        margin-bottom: 1rem;
-        overflow: auto;
-        font-size: 0.875em;
-    }
-
-    pre code {
-        font-size: inherit;
-        color: inherit;
-        word-break: normal;
-    }
-
-    code {
-        font-size: 0.875em;
-        color: var(--bs-code-color);
-        word-wrap: break-word;
-    }
-
-    a > code {
-        color: inherit;
-    }
-
-    kbd {
-        padding: 0.1875rem 0.375rem;
-        font-size: 0.875em;
-        color: var(--bs-body-bg);
-        background-color: var(--bs-body-color);
-        border-radius: 0.25rem;
-    }
-
-    kbd kbd {
-        padding: 0;
-        font-size: 1em;
-    }
-
-    figure {
-        margin: 0 0 1rem;
-    }
-
-    img,
-    svg {
-        vertical-align: middle;
-    }
-
-    table {
-        caption-side: bottom;
-        border-collapse: collapse;
-    }
-
-    caption {
-        padding-top: 0.5rem;
-        padding-bottom: 0.5rem;
-        color: var(--bs-secondary-color);
-        text-align: left;
-    }
-
-    th {
-        text-align: inherit;
-        text-align: -webkit-match-parent;
-    }
-
-    thead,
-    tbody,
-    tfoot,
-    tr,
-    td,
-    th {
-        border-color: inherit;
-        border-style: solid;
-        border-width: 0;
-    }
-
-    label {
-        display: inline-block;
-    }
-
-    button {
-        border-radius: 0;
-    }
-
-    button:focus:not(:focus-visible) {
-        outline: 0;
-    }
-
-    input,
-    button,
-    select,
-    optgroup,
-    textarea {
-        margin: 0;
-        font-family: inherit;
-        font-size: inherit;
-        line-height: inherit;
-    }
-
-    button,
-    select {
-        text-transform: none;
-    }
-
-    [role=button] {
-        cursor: pointer;
-    }
-
-    select {
-        word-wrap: normal;
-    }
-
-    select:disabled {
-        opacity: 1;
-    }
-
-    [list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
-        display: none !important;
-    }
-
-    button,
-    [type=button],
-    [type=reset],
-    [type=submit] {
-        -webkit-appearance: button;
-    }
-
-    button:not(:disabled),
-    [type=button]:not(:disabled),
-    [type=reset]:not(:disabled),
-    [type=submit]:not(:disabled) {
-        cursor: pointer;
-    }
-
-    ::-moz-focus-inner {
-        padding: 0;
-        border-style: none;
-    }
-
-    textarea {
-        resize: vertical;
-    }
-
-    fieldset {
-        min-width: 0;
-        padding: 0;
-        margin: 0;
-        border: 0;
-    }
-
-    legend {
-        float: left;
-        width: 100%;
-        padding: 0;
-        margin-bottom: 0.5rem;
-        font-size: calc(1.275rem + 0.3vw);
-        line-height: inherit;
-    }
-
-    @media (min-width: 1200px) {
-        legend {
-            font-size: 1.5rem;
-        }
-    }
-
-    legend + * {
-        clear: left;
-    }
-
-    ::-webkit-datetime-edit-fields-wrapper,
-    ::-webkit-datetime-edit-text,
-    ::-webkit-datetime-edit-minute,
-    ::-webkit-datetime-edit-hour-field,
-    ::-webkit-datetime-edit-day-field,
-    ::-webkit-datetime-edit-month-field,
-    ::-webkit-datetime-edit-year-field {
-        padding: 0;
-    }
-
-    ::-webkit-inner-spin-button {
-        height: auto;
-    }
-
-    [type=search] {
-        outline-offset: -2px;
-        -webkit-appearance: textfield;
-    }
-
-    /* rtl:raw:
-[type="tel"],
-[type="url"],
-[type="email"],
-[type="number"] {
-  direction: ltr;
-}
-*/
-    ::-webkit-search-decoration {
-        -webkit-appearance: none;
-    }
-
-    ::-webkit-color-swatch-wrapper {
-        padding: 0;
-    }
-
-    ::file-selector-button {
-        font: inherit;
-        -webkit-appearance: button;
-    }
-
-    output {
-        display: inline-block;
-    }
-
-    iframe {
-        border: 0;
-    }
-
-    summary {
-        display: list-item;
-        cursor: pointer;
-    }
-
-    progress {
-        vertical-align: baseline;
-    }
-
-    [hidden] {
-        display: none !important;
-    }
-
-    .lead {
-        font-size: 1.25rem;
-        font-weight: 300;
-    }
-
-    .display-1 {
-        font-size: calc(1.625rem + 4.5vw);
-        font-weight: 300;
-        line-height: 1.2;
-    }
-
-    @media (min-width: 1200px) {
-        .display-1 {
-            font-size: 5rem;
-        }
-    }
-
-    .display-2 {
-        font-size: calc(1.575rem + 3.9vw);
-        font-weight: 300;
-        line-height: 1.2;
-    }
-
-    @media (min-width: 1200px) {
-        .display-2 {
-            font-size: 4.5rem;
-        }
-    }
-
-    .display-3 {
-        font-size: calc(1.525rem + 3.3vw);
-        font-weight: 300;
-        line-height: 1.2;
-    }
-
-    @media (min-width: 1200px) {
-        .display-3 {
-            font-size: 4rem;
-        }
-    }
-
-    .display-4 {
-        font-size: calc(1.475rem + 2.7vw);
-        font-weight: 300;
-        line-height: 1.2;
-    }
-
-    @media (min-width: 1200px) {
-        .display-4 {
-            font-size: 3.5rem;
-        }
-    }
-
-    .display-5 {
-        font-size: calc(1.425rem + 2.1vw);
-        font-weight: 300;
-        line-height: 1.2;
-    }
-
-    @media (min-width: 1200px) {
-        .display-5 {
-            font-size: 3rem;
-        }
-    }
-
-    .display-6 {
-        font-size: calc(1.375rem + 1.5vw);
-        font-weight: 300;
-        line-height: 1.2;
-    }
-
-    @media (min-width: 1200px) {
-        .display-6 {
-            font-size: 2.5rem;
-        }
-    }
-
-    .list-unstyled {
-        padding-left: 0;
-        list-style: none;
-    }
-
-    .list-inline {
-        padding-left: 0;
-        list-style: none;
-    }
-
-    .list-inline-item {
-        display: inline-block;
-    }
-
-    .list-inline-item:not(:last-child) {
-        margin-right: 0.5rem;
-    }
-
-    .initialism {
-        font-size: 0.875em;
-        text-transform: uppercase;
-    }
-
-    .blockquote {
-        margin-bottom: 1rem;
-        font-size: 1.25rem;
-    }
-
-    .blockquote > :last-child {
-        margin-bottom: 0;
-    }
-
-    .blockquote-footer {
-        margin-top: -1rem;
-        margin-bottom: 1rem;
-        font-size: 0.875em;
-        color: #6c757d;
-    }
-
-    .blockquote-footer::before {
-        content: "— ";
-    }
-
-    .img-fluid {
-        max-width: 100%;
-        height: auto;
-    }
-
-    .img-thumbnail {
-        padding: 0.25rem;
-        background-color: var(--bs-body-bg);
-        border: var(--bs-border-width) solid var(--bs-border-color);
-        border-radius: var(--bs-border-radius);
-        max-width: 100%;
-        height: auto;
-    }
-
-    .figure {
-        display: inline-block;
-    }
-
-    .figure-img {
-        margin-bottom: 0.5rem;
-        line-height: 1;
-    }
-
-    .figure-caption {
-        font-size: 0.875em;
-        color: var(--bs-secondary-color);
-    }
-
-    .container,
-    .container-fluid,
-    .container-xxl,
-    .container-xl,
-    .container-lg,
-    .container-md,
-    .container-sm {
-        --bs-gutter-x: 1.5rem;
-        --bs-gutter-y: 0;
-        width: 100%;
-        padding-right: calc(var(--bs-gutter-x) * 0.5);
-        padding-left: calc(var(--bs-gutter-x) * 0.5);
-        margin-right: auto;
-        margin-left: auto;
-    }
-
-    @media (min-width: 576px) {
-        .container-sm, .container {
-            max-width: 540px;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .container-md, .container-sm, .container {
-            max-width: 720px;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .container-lg, .container-md, .container-sm, .container {
-            max-width: 960px;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .container-xl, .container-lg, .container-md, .container-sm, .container {
-            max-width: 1140px;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
-            max-width: 1320px;
-        }
-    }
-
-    :root {
-        --bs-breakpoint-xs: 0;
-        --bs-breakpoint-sm: 576px;
-        --bs-breakpoint-md: 768px;
-        --bs-breakpoint-lg: 992px;
-        --bs-breakpoint-xl: 1200px;
-        --bs-breakpoint-xxl: 1400px;
-    }
-
-    .row {
-        --bs-gutter-x: 1.5rem;
-        --bs-gutter-y: 0;
-        display: flex;
-        flex-wrap: wrap;
-        margin-top: calc(-1 * var(--bs-gutter-y));
-        margin-right: calc(-0.5 * var(--bs-gutter-x));
-        margin-left: calc(-0.5 * var(--bs-gutter-x));
-    }
-
-    .row > * {
-        flex-shrink: 0;
-        width: 100%;
-        max-width: 100%;
-        padding-right: calc(var(--bs-gutter-x) * 0.5);
-        padding-left: calc(var(--bs-gutter-x) * 0.5);
-        margin-top: var(--bs-gutter-y);
-    }
-
-    .col {
-        flex: 1 0;
-    }
-
-    .row-cols-auto > * {
-        flex: 0 0 auto;
-        width: auto;
-    }
-
-    .row-cols-1 > * {
-        flex: 0 0 auto;
-        width: 100%;
-    }
-
-    .row-cols-2 > * {
-        flex: 0 0 auto;
-        width: 50%;
-    }
-
-    .row-cols-3 > * {
-        flex: 0 0 auto;
-        width: 33.3333333333%;
-    }
-
-    .row-cols-4 > * {
-        flex: 0 0 auto;
-        width: 25%;
-    }
-
-    .row-cols-5 > * {
-        flex: 0 0 auto;
-        width: 20%;
-    }
-
-    .row-cols-6 > * {
-        flex: 0 0 auto;
-        width: 16.6666666667%;
-    }
-
-    .col-auto {
-        flex: 0 0 auto;
-        width: auto;
-    }
-
-    .col-1 {
-        flex: 0 0 auto;
-        width: 8.33333333%;
-    }
-
-    .col-2 {
-        flex: 0 0 auto;
-        width: 16.66666667%;
-    }
-
-    .col-3 {
-        flex: 0 0 auto;
-        width: 25%;
-    }
-
-    .col-4 {
-        flex: 0 0 auto;
-        width: 33.33333333%;
-    }
-
-    .col-5 {
-        flex: 0 0 auto;
-        width: 41.66666667%;
-    }
-
-    .col-6 {
-        flex: 0 0 auto;
-        width: 50%;
-    }
-
-    .col-7 {
-        flex: 0 0 auto;
-        width: 58.33333333%;
-    }
-
-    .col-8 {
-        flex: 0 0 auto;
-        width: 66.66666667%;
-    }
-
-    .col-9 {
-        flex: 0 0 auto;
-        width: 75%;
-    }
-
-    .col-10 {
-        flex: 0 0 auto;
-        width: 83.33333333%;
-    }
-
-    .col-11 {
-        flex: 0 0 auto;
-        width: 91.66666667%;
-    }
-
-    .col-12 {
-        flex: 0 0 auto;
-        width: 100%;
-    }
-
-    .offset-1 {
-        margin-left: 8.33333333%;
-    }
-
-    .offset-2 {
-        margin-left: 16.66666667%;
-    }
-
-    .offset-3 {
-        margin-left: 25%;
-    }
-
-    .offset-4 {
-        margin-left: 33.33333333%;
-    }
-
-    .offset-5 {
-        margin-left: 41.66666667%;
-    }
-
-    .offset-6 {
-        margin-left: 50%;
-    }
-
-    .offset-7 {
-        margin-left: 58.33333333%;
-    }
-
-    .offset-8 {
-        margin-left: 66.66666667%;
-    }
-
-    .offset-9 {
-        margin-left: 75%;
-    }
-
-    .offset-10 {
-        margin-left: 83.33333333%;
-    }
-
-    .offset-11 {
-        margin-left: 91.66666667%;
-    }
-
-    .g-0,
-    .gx-0 {
-        --bs-gutter-x: 0;
-    }
-
-    .g-0,
-    .gy-0 {
-        --bs-gutter-y: 0;
-    }
-
-    .g-1,
-    .gx-1 {
-        --bs-gutter-x: 0.25rem;
-    }
-
-    .g-1,
-    .gy-1 {
-        --bs-gutter-y: 0.25rem;
-    }
-
-    .g-2,
-    .gx-2 {
-        --bs-gutter-x: 0.5rem;
-    }
-
-    .g-2,
-    .gy-2 {
-        --bs-gutter-y: 0.5rem;
-    }
-
-    .g-3,
-    .gx-3 {
-        --bs-gutter-x: 1rem;
-    }
-
-    .g-3,
-    .gy-3 {
-        --bs-gutter-y: 1rem;
-    }
-
-    .g-4,
-    .gx-4 {
-        --bs-gutter-x: 1.5rem;
-    }
-
-    .g-4,
-    .gy-4 {
-        --bs-gutter-y: 1.5rem;
-    }
-
-    .g-5,
-    .gx-5 {
-        --bs-gutter-x: 3rem;
-    }
-
-    .g-5,
-    .gy-5 {
-        --bs-gutter-y: 3rem;
-    }
-
-    @media (min-width: 576px) {
-        .col-sm {
-            flex: 1 0;
-        }
-
-        .row-cols-sm-auto > * {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .row-cols-sm-1 > * {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .row-cols-sm-2 > * {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .row-cols-sm-3 > * {
-            flex: 0 0 auto;
-            width: 33.3333333333%;
-        }
-
-        .row-cols-sm-4 > * {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .row-cols-sm-5 > * {
-            flex: 0 0 auto;
-            width: 20%;
-        }
-
-        .row-cols-sm-6 > * {
-            flex: 0 0 auto;
-            width: 16.6666666667%;
-        }
-
-        .col-sm-auto {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .col-sm-1 {
-            flex: 0 0 auto;
-            width: 8.33333333%;
-        }
-
-        .col-sm-2 {
-            flex: 0 0 auto;
-            width: 16.66666667%;
-        }
-
-        .col-sm-3 {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .col-sm-4 {
-            flex: 0 0 auto;
-            width: 33.33333333%;
-        }
-
-        .col-sm-5 {
-            flex: 0 0 auto;
-            width: 41.66666667%;
-        }
-
-        .col-sm-6 {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .col-sm-7 {
-            flex: 0 0 auto;
-            width: 58.33333333%;
-        }
-
-        .col-sm-8 {
-            flex: 0 0 auto;
-            width: 66.66666667%;
-        }
-
-        .col-sm-9 {
-            flex: 0 0 auto;
-            width: 75%;
-        }
-
-        .col-sm-10 {
-            flex: 0 0 auto;
-            width: 83.33333333%;
-        }
-
-        .col-sm-11 {
-            flex: 0 0 auto;
-            width: 91.66666667%;
-        }
-
-        .col-sm-12 {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .offset-sm-0 {
-            margin-left: 0;
-        }
-
-        .offset-sm-1 {
-            margin-left: 8.33333333%;
-        }
-
-        .offset-sm-2 {
-            margin-left: 16.66666667%;
-        }
-
-        .offset-sm-3 {
-            margin-left: 25%;
-        }
-
-        .offset-sm-4 {
-            margin-left: 33.33333333%;
-        }
-
-        .offset-sm-5 {
-            margin-left: 41.66666667%;
-        }
-
-        .offset-sm-6 {
-            margin-left: 50%;
-        }
-
-        .offset-sm-7 {
-            margin-left: 58.33333333%;
-        }
-
-        .offset-sm-8 {
-            margin-left: 66.66666667%;
-        }
-
-        .offset-sm-9 {
-            margin-left: 75%;
-        }
-
-        .offset-sm-10 {
-            margin-left: 83.33333333%;
-        }
-
-        .offset-sm-11 {
-            margin-left: 91.66666667%;
-        }
-
-        .g-sm-0,
-        .gx-sm-0 {
-            --bs-gutter-x: 0;
-        }
-
-        .g-sm-0,
-        .gy-sm-0 {
-            --bs-gutter-y: 0;
-        }
-
-        .g-sm-1,
-        .gx-sm-1 {
-            --bs-gutter-x: 0.25rem;
-        }
-
-        .g-sm-1,
-        .gy-sm-1 {
-            --bs-gutter-y: 0.25rem;
-        }
-
-        .g-sm-2,
-        .gx-sm-2 {
-            --bs-gutter-x: 0.5rem;
-        }
-
-        .g-sm-2,
-        .gy-sm-2 {
-            --bs-gutter-y: 0.5rem;
-        }
-
-        .g-sm-3,
-        .gx-sm-3 {
-            --bs-gutter-x: 1rem;
-        }
-
-        .g-sm-3,
-        .gy-sm-3 {
-            --bs-gutter-y: 1rem;
-        }
-
-        .g-sm-4,
-        .gx-sm-4 {
-            --bs-gutter-x: 1.5rem;
-        }
-
-        .g-sm-4,
-        .gy-sm-4 {
-            --bs-gutter-y: 1.5rem;
-        }
-
-        .g-sm-5,
-        .gx-sm-5 {
-            --bs-gutter-x: 3rem;
-        }
-
-        .g-sm-5,
-        .gy-sm-5 {
-            --bs-gutter-y: 3rem;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .col-md {
-            flex: 1 0;
-        }
-
-        .row-cols-md-auto > * {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .row-cols-md-1 > * {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .row-cols-md-2 > * {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .row-cols-md-3 > * {
-            flex: 0 0 auto;
-            width: 33.3333333333%;
-        }
-
-        .row-cols-md-4 > * {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .row-cols-md-5 > * {
-            flex: 0 0 auto;
-            width: 20%;
-        }
-
-        .row-cols-md-6 > * {
-            flex: 0 0 auto;
-            width: 16.6666666667%;
-        }
-
-        .col-md-auto {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .col-md-1 {
-            flex: 0 0 auto;
-            width: 8.33333333%;
-        }
-
-        .col-md-2 {
-            flex: 0 0 auto;
-            width: 16.66666667%;
-        }
-
-        .col-md-3 {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .col-md-4 {
-            flex: 0 0 auto;
-            width: 33.33333333%;
-        }
-
-        .col-md-5 {
-            flex: 0 0 auto;
-            width: 41.66666667%;
-        }
-
-        .col-md-6 {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .col-md-7 {
-            flex: 0 0 auto;
-            width: 58.33333333%;
-        }
-
-        .col-md-8 {
-            flex: 0 0 auto;
-            width: 66.66666667%;
-        }
-
-        .col-md-9 {
-            flex: 0 0 auto;
-            width: 75%;
-        }
-
-        .col-md-10 {
-            flex: 0 0 auto;
-            width: 83.33333333%;
-        }
-
-        .col-md-11 {
-            flex: 0 0 auto;
-            width: 91.66666667%;
-        }
-
-        .col-md-12 {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .offset-md-0 {
-            margin-left: 0;
-        }
-
-        .offset-md-1 {
-            margin-left: 8.33333333%;
-        }
-
-        .offset-md-2 {
-            margin-left: 16.66666667%;
-        }
-
-        .offset-md-3 {
-            margin-left: 25%;
-        }
-
-        .offset-md-4 {
-            margin-left: 33.33333333%;
-        }
-
-        .offset-md-5 {
-            margin-left: 41.66666667%;
-        }
-
-        .offset-md-6 {
-            margin-left: 50%;
-        }
-
-        .offset-md-7 {
-            margin-left: 58.33333333%;
-        }
-
-        .offset-md-8 {
-            margin-left: 66.66666667%;
-        }
-
-        .offset-md-9 {
-            margin-left: 75%;
-        }
-
-        .offset-md-10 {
-            margin-left: 83.33333333%;
-        }
-
-        .offset-md-11 {
-            margin-left: 91.66666667%;
-        }
-
-        .g-md-0,
-        .gx-md-0 {
-            --bs-gutter-x: 0;
-        }
-
-        .g-md-0,
-        .gy-md-0 {
-            --bs-gutter-y: 0;
-        }
-
-        .g-md-1,
-        .gx-md-1 {
-            --bs-gutter-x: 0.25rem;
-        }
-
-        .g-md-1,
-        .gy-md-1 {
-            --bs-gutter-y: 0.25rem;
-        }
-
-        .g-md-2,
-        .gx-md-2 {
-            --bs-gutter-x: 0.5rem;
-        }
-
-        .g-md-2,
-        .gy-md-2 {
-            --bs-gutter-y: 0.5rem;
-        }
-
-        .g-md-3,
-        .gx-md-3 {
-            --bs-gutter-x: 1rem;
-        }
-
-        .g-md-3,
-        .gy-md-3 {
-            --bs-gutter-y: 1rem;
-        }
-
-        .g-md-4,
-        .gx-md-4 {
-            --bs-gutter-x: 1.5rem;
-        }
-
-        .g-md-4,
-        .gy-md-4 {
-            --bs-gutter-y: 1.5rem;
-        }
-
-        .g-md-5,
-        .gx-md-5 {
-            --bs-gutter-x: 3rem;
-        }
-
-        .g-md-5,
-        .gy-md-5 {
-            --bs-gutter-y: 3rem;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .col-lg {
-            flex: 1 0;
-        }
-
-        .row-cols-lg-auto > * {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .row-cols-lg-1 > * {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .row-cols-lg-2 > * {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .row-cols-lg-3 > * {
-            flex: 0 0 auto;
-            width: 33.3333333333%;
-        }
-
-        .row-cols-lg-4 > * {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .row-cols-lg-5 > * {
-            flex: 0 0 auto;
-            width: 20%;
-        }
-
-        .row-cols-lg-6 > * {
-            flex: 0 0 auto;
-            width: 16.6666666667%;
-        }
-
-        .col-lg-auto {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .col-lg-1 {
-            flex: 0 0 auto;
-            width: 8.33333333%;
-        }
-
-        .col-lg-2 {
-            flex: 0 0 auto;
-            width: 16.66666667%;
-        }
-
-        .col-lg-3 {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .col-lg-4 {
-            flex: 0 0 auto;
-            width: 33.33333333%;
-        }
-
-        .col-lg-5 {
-            flex: 0 0 auto;
-            width: 41.66666667%;
-        }
-
-        .col-lg-6 {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .col-lg-7 {
-            flex: 0 0 auto;
-            width: 58.33333333%;
-        }
-
-        .col-lg-8 {
-            flex: 0 0 auto;
-            width: 66.66666667%;
-        }
-
-        .col-lg-9 {
-            flex: 0 0 auto;
-            width: 75%;
-        }
-
-        .col-lg-10 {
-            flex: 0 0 auto;
-            width: 83.33333333%;
-        }
-
-        .col-lg-11 {
-            flex: 0 0 auto;
-            width: 91.66666667%;
-        }
-
-        .col-lg-12 {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .offset-lg-0 {
-            margin-left: 0;
-        }
-
-        .offset-lg-1 {
-            margin-left: 8.33333333%;
-        }
-
-        .offset-lg-2 {
-            margin-left: 16.66666667%;
-        }
-
-        .offset-lg-3 {
-            margin-left: 25%;
-        }
-
-        .offset-lg-4 {
-            margin-left: 33.33333333%;
-        }
-
-        .offset-lg-5 {
-            margin-left: 41.66666667%;
-        }
-
-        .offset-lg-6 {
-            margin-left: 50%;
-        }
-
-        .offset-lg-7 {
-            margin-left: 58.33333333%;
-        }
-
-        .offset-lg-8 {
-            margin-left: 66.66666667%;
-        }
-
-        .offset-lg-9 {
-            margin-left: 75%;
-        }
-
-        .offset-lg-10 {
-            margin-left: 83.33333333%;
-        }
-
-        .offset-lg-11 {
-            margin-left: 91.66666667%;
-        }
-
-        .g-lg-0,
-        .gx-lg-0 {
-            --bs-gutter-x: 0;
-        }
-
-        .g-lg-0,
-        .gy-lg-0 {
-            --bs-gutter-y: 0;
-        }
-
-        .g-lg-1,
-        .gx-lg-1 {
-            --bs-gutter-x: 0.25rem;
-        }
-
-        .g-lg-1,
-        .gy-lg-1 {
-            --bs-gutter-y: 0.25rem;
-        }
-
-        .g-lg-2,
-        .gx-lg-2 {
-            --bs-gutter-x: 0.5rem;
-        }
-
-        .g-lg-2,
-        .gy-lg-2 {
-            --bs-gutter-y: 0.5rem;
-        }
-
-        .g-lg-3,
-        .gx-lg-3 {
-            --bs-gutter-x: 1rem;
-        }
-
-        .g-lg-3,
-        .gy-lg-3 {
-            --bs-gutter-y: 1rem;
-        }
-
-        .g-lg-4,
-        .gx-lg-4 {
-            --bs-gutter-x: 1.5rem;
-        }
-
-        .g-lg-4,
-        .gy-lg-4 {
-            --bs-gutter-y: 1.5rem;
-        }
-
-        .g-lg-5,
-        .gx-lg-5 {
-            --bs-gutter-x: 3rem;
-        }
-
-        .g-lg-5,
-        .gy-lg-5 {
-            --bs-gutter-y: 3rem;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .col-xl {
-            flex: 1 0;
-        }
-
-        .row-cols-xl-auto > * {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .row-cols-xl-1 > * {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .row-cols-xl-2 > * {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .row-cols-xl-3 > * {
-            flex: 0 0 auto;
-            width: 33.3333333333%;
-        }
-
-        .row-cols-xl-4 > * {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .row-cols-xl-5 > * {
-            flex: 0 0 auto;
-            width: 20%;
-        }
-
-        .row-cols-xl-6 > * {
-            flex: 0 0 auto;
-            width: 16.6666666667%;
-        }
-
-        .col-xl-auto {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .col-xl-1 {
-            flex: 0 0 auto;
-            width: 8.33333333%;
-        }
-
-        .col-xl-2 {
-            flex: 0 0 auto;
-            width: 16.66666667%;
-        }
-
-        .col-xl-3 {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .col-xl-4 {
-            flex: 0 0 auto;
-            width: 33.33333333%;
-        }
-
-        .col-xl-5 {
-            flex: 0 0 auto;
-            width: 41.66666667%;
-        }
-
-        .col-xl-6 {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .col-xl-7 {
-            flex: 0 0 auto;
-            width: 58.33333333%;
-        }
-
-        .col-xl-8 {
-            flex: 0 0 auto;
-            width: 66.66666667%;
-        }
-
-        .col-xl-9 {
-            flex: 0 0 auto;
-            width: 75%;
-        }
-
-        .col-xl-10 {
-            flex: 0 0 auto;
-            width: 83.33333333%;
-        }
-
-        .col-xl-11 {
-            flex: 0 0 auto;
-            width: 91.66666667%;
-        }
-
-        .col-xl-12 {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .offset-xl-0 {
-            margin-left: 0;
-        }
-
-        .offset-xl-1 {
-            margin-left: 8.33333333%;
-        }
-
-        .offset-xl-2 {
-            margin-left: 16.66666667%;
-        }
-
-        .offset-xl-3 {
-            margin-left: 25%;
-        }
-
-        .offset-xl-4 {
-            margin-left: 33.33333333%;
-        }
-
-        .offset-xl-5 {
-            margin-left: 41.66666667%;
-        }
-
-        .offset-xl-6 {
-            margin-left: 50%;
-        }
-
-        .offset-xl-7 {
-            margin-left: 58.33333333%;
-        }
-
-        .offset-xl-8 {
-            margin-left: 66.66666667%;
-        }
-
-        .offset-xl-9 {
-            margin-left: 75%;
-        }
-
-        .offset-xl-10 {
-            margin-left: 83.33333333%;
-        }
-
-        .offset-xl-11 {
-            margin-left: 91.66666667%;
-        }
-
-        .g-xl-0,
-        .gx-xl-0 {
-            --bs-gutter-x: 0;
-        }
-
-        .g-xl-0,
-        .gy-xl-0 {
-            --bs-gutter-y: 0;
-        }
-
-        .g-xl-1,
-        .gx-xl-1 {
-            --bs-gutter-x: 0.25rem;
-        }
-
-        .g-xl-1,
-        .gy-xl-1 {
-            --bs-gutter-y: 0.25rem;
-        }
-
-        .g-xl-2,
-        .gx-xl-2 {
-            --bs-gutter-x: 0.5rem;
-        }
-
-        .g-xl-2,
-        .gy-xl-2 {
-            --bs-gutter-y: 0.5rem;
-        }
-
-        .g-xl-3,
-        .gx-xl-3 {
-            --bs-gutter-x: 1rem;
-        }
-
-        .g-xl-3,
-        .gy-xl-3 {
-            --bs-gutter-y: 1rem;
-        }
-
-        .g-xl-4,
-        .gx-xl-4 {
-            --bs-gutter-x: 1.5rem;
-        }
-
-        .g-xl-4,
-        .gy-xl-4 {
-            --bs-gutter-y: 1.5rem;
-        }
-
-        .g-xl-5,
-        .gx-xl-5 {
-            --bs-gutter-x: 3rem;
-        }
-
-        .g-xl-5,
-        .gy-xl-5 {
-            --bs-gutter-y: 3rem;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .col-xxl {
-            flex: 1 0;
-        }
-
-        .row-cols-xxl-auto > * {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .row-cols-xxl-1 > * {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .row-cols-xxl-2 > * {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .row-cols-xxl-3 > * {
-            flex: 0 0 auto;
-            width: 33.3333333333%;
-        }
-
-        .row-cols-xxl-4 > * {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .row-cols-xxl-5 > * {
-            flex: 0 0 auto;
-            width: 20%;
-        }
-
-        .row-cols-xxl-6 > * {
-            flex: 0 0 auto;
-            width: 16.6666666667%;
-        }
-
-        .col-xxl-auto {
-            flex: 0 0 auto;
-            width: auto;
-        }
-
-        .col-xxl-1 {
-            flex: 0 0 auto;
-            width: 8.33333333%;
-        }
-
-        .col-xxl-2 {
-            flex: 0 0 auto;
-            width: 16.66666667%;
-        }
-
-        .col-xxl-3 {
-            flex: 0 0 auto;
-            width: 25%;
-        }
-
-        .col-xxl-4 {
-            flex: 0 0 auto;
-            width: 33.33333333%;
-        }
-
-        .col-xxl-5 {
-            flex: 0 0 auto;
-            width: 41.66666667%;
-        }
-
-        .col-xxl-6 {
-            flex: 0 0 auto;
-            width: 50%;
-        }
-
-        .col-xxl-7 {
-            flex: 0 0 auto;
-            width: 58.33333333%;
-        }
-
-        .col-xxl-8 {
-            flex: 0 0 auto;
-            width: 66.66666667%;
-        }
-
-        .col-xxl-9 {
-            flex: 0 0 auto;
-            width: 75%;
-        }
-
-        .col-xxl-10 {
-            flex: 0 0 auto;
-            width: 83.33333333%;
-        }
-
-        .col-xxl-11 {
-            flex: 0 0 auto;
-            width: 91.66666667%;
-        }
-
-        .col-xxl-12 {
-            flex: 0 0 auto;
-            width: 100%;
-        }
-
-        .offset-xxl-0 {
-            margin-left: 0;
-        }
-
-        .offset-xxl-1 {
-            margin-left: 8.33333333%;
-        }
-
-        .offset-xxl-2 {
-            margin-left: 16.66666667%;
-        }
-
-        .offset-xxl-3 {
-            margin-left: 25%;
-        }
-
-        .offset-xxl-4 {
-            margin-left: 33.33333333%;
-        }
-
-        .offset-xxl-5 {
-            margin-left: 41.66666667%;
-        }
-
-        .offset-xxl-6 {
-            margin-left: 50%;
-        }
-
-        .offset-xxl-7 {
-            margin-left: 58.33333333%;
-        }
-
-        .offset-xxl-8 {
-            margin-left: 66.66666667%;
-        }
-
-        .offset-xxl-9 {
-            margin-left: 75%;
-        }
-
-        .offset-xxl-10 {
-            margin-left: 83.33333333%;
-        }
-
-        .offset-xxl-11 {
-            margin-left: 91.66666667%;
-        }
-
-        .g-xxl-0,
-        .gx-xxl-0 {
-            --bs-gutter-x: 0;
-        }
-
-        .g-xxl-0,
-        .gy-xxl-0 {
-            --bs-gutter-y: 0;
-        }
-
-        .g-xxl-1,
-        .gx-xxl-1 {
-            --bs-gutter-x: 0.25rem;
-        }
-
-        .g-xxl-1,
-        .gy-xxl-1 {
-            --bs-gutter-y: 0.25rem;
-        }
-
-        .g-xxl-2,
-        .gx-xxl-2 {
-            --bs-gutter-x: 0.5rem;
-        }
-
-        .g-xxl-2,
-        .gy-xxl-2 {
-            --bs-gutter-y: 0.5rem;
-        }
-
-        .g-xxl-3,
-        .gx-xxl-3 {
-            --bs-gutter-x: 1rem;
-        }
-
-        .g-xxl-3,
-        .gy-xxl-3 {
-            --bs-gutter-y: 1rem;
-        }
-
-        .g-xxl-4,
-        .gx-xxl-4 {
-            --bs-gutter-x: 1.5rem;
-        }
-
-        .g-xxl-4,
-        .gy-xxl-4 {
-            --bs-gutter-y: 1.5rem;
-        }
-
-        .g-xxl-5,
-        .gx-xxl-5 {
-            --bs-gutter-x: 3rem;
-        }
-
-        .g-xxl-5,
-        .gy-xxl-5 {
-            --bs-gutter-y: 3rem;
-        }
-    }
-
-    .table {
-        --bs-table-color-type: initial;
-        --bs-table-bg-type: initial;
-        --bs-table-color-state: initial;
-        --bs-table-bg-state: initial;
-        --bs-table-color: var(--bs-body-color);
-        --bs-table-bg: var(--bs-body-bg);
-        --bs-table-border-color: var(--bs-border-color);
-        --bs-table-accent-bg: transparent;
-        --bs-table-striped-color: var(--bs-body-color);
-        --bs-table-striped-bg: rgba(0, 0, 0, 0.05);
-        --bs-table-active-color: var(--bs-body-color);
-        --bs-table-active-bg: rgba(0, 0, 0, 0.1);
-        --bs-table-hover-color: var(--bs-body-color);
-        --bs-table-hover-bg: rgba(0, 0, 0, 0.075);
-        width: 100%;
-        margin-bottom: 1rem;
-        vertical-align: top;
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table > :not(caption) > * > * {
-        padding: 0.5rem 0.5rem;
-        color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));
-        background-color: var(--bs-table-bg);
-        border-bottom-width: var(--bs-border-width);
-        box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));
-    }
-
-    .table > tbody {
-        vertical-align: inherit;
-    }
-
-    .table > thead {
-        vertical-align: bottom;
-    }
-
-    .table-group-divider {
-        border-top: calc(var(--bs-border-width) * 2) solid currentcolor;
-    }
-
-    .caption-top {
-        caption-side: top;
-    }
-
-    .table-sm > :not(caption) > * > * {
-        padding: 0.25rem 0.25rem;
-    }
-
-    .table-bordered > :not(caption) > * {
-        border-width: var(--bs-border-width) 0;
-    }
-
-    .table-bordered > :not(caption) > * > * {
-        border-width: 0 var(--bs-border-width);
-    }
-
-    .table-borderless > :not(caption) > * > * {
-        border-bottom-width: 0;
-    }
-
-    .table-borderless > :not(:first-child) {
-        border-top-width: 0;
-    }
-
-    .table-striped > tbody > tr:nth-of-type(odd) > * {
-        --bs-table-color-type: var(--bs-table-striped-color);
-        --bs-table-bg-type: var(--bs-table-striped-bg);
-    }
-
-    .table-striped-columns > :not(caption) > tr > :nth-child(even) {
-        --bs-table-color-type: var(--bs-table-striped-color);
-        --bs-table-bg-type: var(--bs-table-striped-bg);
-    }
-
-    .table-active {
-        --bs-table-color-state: var(--bs-table-active-color);
-        --bs-table-bg-state: var(--bs-table-active-bg);
-    }
-
-    .table-hover > tbody > tr:hover > * {
-        --bs-table-color-state: var(--bs-table-hover-color);
-        --bs-table-bg-state: var(--bs-table-hover-bg);
-    }
-
-    .table-primary {
-        --bs-table-color: #000;
-        --bs-table-bg: #cfe2ff;
-        --bs-table-border-color: #bacbe6;
-        --bs-table-striped-bg: #c5d7f2;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #bacbe6;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #bfd1ec;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-secondary {
-        --bs-table-color: #000;
-        --bs-table-bg: #e2e3e5;
-        --bs-table-border-color: #cbccce;
-        --bs-table-striped-bg: #d7d8da;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #cbccce;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #d1d2d4;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-success {
-        --bs-table-color: #000;
-        --bs-table-bg: #d1e7dd;
-        --bs-table-border-color: #bcd0c7;
-        --bs-table-striped-bg: #c7dbd2;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #bcd0c7;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #c1d6cc;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-info {
-        --bs-table-color: #000;
-        --bs-table-bg: #cff4fc;
-        --bs-table-border-color: #badce3;
-        --bs-table-striped-bg: #c5e8ef;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #badce3;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #bfe2e9;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-warning {
-        --bs-table-color: #000;
-        --bs-table-bg: #fff3cd;
-        --bs-table-border-color: #e6dbb9;
-        --bs-table-striped-bg: #f2e7c3;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #e6dbb9;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #ece1be;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-danger {
-        --bs-table-color: #000;
-        --bs-table-bg: #f8d7da;
-        --bs-table-border-color: #dfc2c4;
-        --bs-table-striped-bg: #eccccf;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #dfc2c4;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #e5c7ca;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-light {
-        --bs-table-color: #000;
-        --bs-table-bg: #f8f9fa;
-        --bs-table-border-color: #dfe0e1;
-        --bs-table-striped-bg: #ecedee;
-        --bs-table-striped-color: #000;
-        --bs-table-active-bg: #dfe0e1;
-        --bs-table-active-color: #000;
-        --bs-table-hover-bg: #e5e6e7;
-        --bs-table-hover-color: #000;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-dark {
-        --bs-table-color: #fff;
-        --bs-table-bg: #212529;
-        --bs-table-border-color: #373b3e;
-        --bs-table-striped-bg: #2c3034;
-        --bs-table-striped-color: #fff;
-        --bs-table-active-bg: #373b3e;
-        --bs-table-active-color: #fff;
-        --bs-table-hover-bg: #323539;
-        --bs-table-hover-color: #fff;
-        color: var(--bs-table-color);
-        border-color: var(--bs-table-border-color);
-    }
-
-    .table-responsive {
-        overflow-x: auto;
-        -webkit-overflow-scrolling: touch;
-    }
-
-    @media (max-width: 575.98px) {
-        .table-responsive-sm {
-            overflow-x: auto;
-            -webkit-overflow-scrolling: touch;
-        }
-    }
-
-    @media (max-width: 767.98px) {
-        .table-responsive-md {
-            overflow-x: auto;
-            -webkit-overflow-scrolling: touch;
-        }
-    }
-
-    @media (max-width: 991.98px) {
-        .table-responsive-lg {
-            overflow-x: auto;
-            -webkit-overflow-scrolling: touch;
-        }
-    }
-
-    @media (max-width: 1199.98px) {
-        .table-responsive-xl {
-            overflow-x: auto;
-            -webkit-overflow-scrolling: touch;
-        }
-    }
-
-    @media (max-width: 1399.98px) {
-        .table-responsive-xxl {
-            overflow-x: auto;
-            -webkit-overflow-scrolling: touch;
-        }
-    }
-
-    .form-label {
-        margin-bottom: 0.5rem;
-    }
-
-    .col-form-label {
-        padding-top: calc(0.375rem + var(--bs-border-width));
-        padding-bottom: calc(0.375rem + var(--bs-border-width));
-        margin-bottom: 0;
-        font-size: inherit;
-        line-height: 1.5;
-    }
-
-    .col-form-label-lg {
-        padding-top: calc(0.5rem + var(--bs-border-width));
-        padding-bottom: calc(0.5rem + var(--bs-border-width));
-        font-size: 1.25rem;
-    }
-
-    .col-form-label-sm {
-        padding-top: calc(0.25rem + var(--bs-border-width));
-        padding-bottom: calc(0.25rem + var(--bs-border-width));
-        font-size: 0.875rem;
-    }
-
-    .form-text {
-        margin-top: 0.25rem;
-        font-size: 0.875em;
-        color: var(--bs-secondary-color);
-    }
-
-    .form-control {
-        display: block;
-        width: 100%;
-        padding: 0.375rem 0.75rem;
-        font-size: 1rem;
-        font-weight: 400;
-        line-height: 1.5;
-        color: var(--bs-body-color);
-        background-color: var(--bs-body-bg);
-        background-clip: padding-box;
-        border: var(--bs-border-width) solid var(--bs-border-color);
-        appearance: none;
-        border-radius: var(--bs-border-radius);
-        transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-control {
-            transition: none;
-        }
-    }
-
-    .form-control[type=file] {
-        overflow: hidden;
-    }
-
-    .form-control[type=file]:not(:disabled):not([readonly]) {
-        cursor: pointer;
-    }
-
-    .form-control:focus {
-        color: var(--bs-body-color);
-        background-color: var(--bs-body-bg);
-        border-color: #86b7fe;
-        outline: 0;
-        box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-    }
-
-    .form-control::-webkit-date-and-time-value {
-        min-width: 85px;
-        height: 1.5em;
-        margin: 0;
-    }
-
-    .form-control::-webkit-datetime-edit {
-        display: block;
-        padding: 0;
-    }
-
-    .form-control::placeholder {
-        color: var(--bs-secondary-color);
-        opacity: 1;
-    }
-
-    .form-control:disabled {
-        background-color: var(--bs-secondary-bg);
-        opacity: 1;
-    }
-
-    .form-control::file-selector-button {
-        padding: 0.375rem 0.75rem;
-        margin: -0.375rem -0.75rem;
-        margin-inline-end: 0.75rem;
-        color: var(--bs-body-color);
-        background-color: var(--bs-tertiary-bg);
-        pointer-events: none;
-        border-color: inherit;
-        border-style: solid;
-        border-width: 0;
-        border-inline-end-width: var(--bs-border-width);
-        border-radius: 0;
-        transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-control::file-selector-button {
-            transition: none;
-        }
-    }
-
-    .form-control:hover:not(:disabled):not([readonly])::file-selector-button {
-        background-color: var(--bs-secondary-bg);
-    }
-
-    .form-control-plaintext {
-        display: block;
-        width: 100%;
-        padding: 0.375rem 0;
-        margin-bottom: 0;
-        line-height: 1.5;
-        color: var(--bs-body-color);
-        background-color: transparent;
-        border: solid transparent;
-        border-width: var(--bs-border-width) 0;
-    }
-
-    .form-control-plaintext:focus {
-        outline: 0;
-    }
-
-    .form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
-        padding-right: 0;
-        padding-left: 0;
-    }
-
-    .form-control-sm {
-        min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
-        padding: 0.25rem 0.5rem;
-        font-size: 0.875rem;
-        border-radius: var(--bs-border-radius-sm);
-    }
-
-    .form-control-sm::file-selector-button {
-        padding: 0.25rem 0.5rem;
-        margin: -0.25rem -0.5rem;
-        margin-inline-end: 0.5rem;
-    }
-
-    .form-control-lg {
-        min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
-        padding: 0.5rem 1rem;
-        font-size: 1.25rem;
-        border-radius: var(--bs-border-radius-lg);
-    }
-
-    .form-control-lg::file-selector-button {
-        padding: 0.5rem 1rem;
-        margin: -0.5rem -1rem;
-        margin-inline-end: 1rem;
-    }
-
-    textarea.form-control {
-        min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
-    }
-
-    textarea.form-control-sm {
-        min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
-    }
-
-    textarea.form-control-lg {
-        min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
-    }
-
-    .form-control-color {
-        width: 3rem;
-        height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
-        padding: 0.375rem;
-    }
-
-    .form-control-color:not(:disabled):not([readonly]) {
-        cursor: pointer;
-    }
-
-    .form-control-color::-moz-color-swatch {
-        border: 0 !important;
-        border-radius: var(--bs-border-radius);
-    }
-
-    .form-control-color::-webkit-color-swatch {
-        border: 0 !important;
-        border-radius: var(--bs-border-radius);
-    }
-
-    .form-control-color.form-control-sm {
-        height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
-    }
-
-    .form-control-color.form-control-lg {
-        height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
-    }
-
-    .form-select {
-        --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23343a40%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3e%3c/svg%3e");
-        display: block;
-        width: 100%;
-        padding: 0.375rem 2.25rem 0.375rem 0.75rem;
-        font-size: 1rem;
-        font-weight: 400;
-        line-height: 1.5;
-        color: var(--bs-body-color);
-        background-color: var(--bs-body-bg);
-        background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);
-        background-repeat: no-repeat;
-        background-position: right 0.75rem center;
-        background-size: 16px 12px;
-        border: var(--bs-border-width) solid var(--bs-border-color);
-        border-radius: var(--bs-border-radius);
-        transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-        appearance: none;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-select {
-            transition: none;
-        }
-    }
-
-    .form-select:focus {
-        border-color: #86b7fe;
-        outline: 0;
-        box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-    }
-
-    .form-select[multiple], .form-select[size]:not([size="1"]) {
-        padding-right: 0.75rem;
-        background-image: none;
-    }
-
-    .form-select:disabled {
-        background-color: var(--bs-secondary-bg);
-    }
-
-    .form-select:-moz-focusring {
-        color: transparent;
-        text-shadow: 0 0 0 var(--bs-body-color);
-    }
-
-    .form-select-sm {
-        padding-top: 0.25rem;
-        padding-bottom: 0.25rem;
-        padding-left: 0.5rem;
-        font-size: 0.875rem;
-        border-radius: var(--bs-border-radius-sm);
-    }
-
-    .form-select-lg {
-        padding-top: 0.5rem;
-        padding-bottom: 0.5rem;
-        padding-left: 1rem;
-        font-size: 1.25rem;
-        border-radius: var(--bs-border-radius-lg);
-    }
-
-    [data-bs-theme=dark] .form-select {
-        --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23adb5bd%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3e%3c/svg%3e");
-    }
-
-    .form-check {
-        display: block;
-        min-height: 1.5rem;
-        padding-left: 1.5em;
-        margin-bottom: 0.125rem;
-    }
-
-    .form-check .form-check-input {
-        float: left;
-        margin-left: -1.5em;
-    }
-
-    .form-check-reverse {
-        padding-right: 1.5em;
-        padding-left: 0;
-        text-align: right;
-    }
-
-    .form-check-reverse .form-check-input {
-        float: right;
-        margin-right: -1.5em;
-        margin-left: 0;
-    }
-
-    .form-check-input {
-        --bs-form-check-bg: var(--bs-body-bg);
-        width: 1em;
-        height: 1em;
-        margin-top: 0.25em;
-        vertical-align: top;
-        background-color: var(--bs-form-check-bg);
-        background-image: var(--bs-form-check-bg-image);
-        background-repeat: no-repeat;
-        background-position: center;
-        background-size: contain;
-        border: var(--bs-border-width) solid var(--bs-border-color);
-        appearance: none;
-        -webkit-print-color-adjust: exact;
-        print-color-adjust: exact;
-    }
-
-    .form-check-input[type=checkbox] {
-        border-radius: 0.25em;
-    }
-
-    .form-check-input[type=radio] {
-        border-radius: 50%;
-    }
-
-    .form-check-input:active {
-        filter: brightness(90%);
-    }
-
-    .form-check-input:focus {
-        border-color: #86b7fe;
-        outline: 0;
-        box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-    }
-
-    .form-check-input:checked {
-        background-color: #0d6efd;
-        border-color: #0d6efd;
-    }
-
-    .form-check-input:checked[type=checkbox] {
-        --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27m6 10 3 3 6-6%27/%3e%3c/svg%3e");
-    }
-
-    .form-check-input:checked[type=radio] {
-        --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%272%27 fill=%27%23fff%27/%3e%3c/svg%3e");
-    }
-
-    .form-check-input[type=checkbox]:indeterminate {
-        background-color: #0d6efd;
-        border-color: #0d6efd;
-        --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27M6 10h8%27/%3e%3c/svg%3e");
-    }
-
-    .form-check-input:disabled {
-        pointer-events: none;
-        filter: none;
-        opacity: 0.5;
-    }
-
-    .form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
-        cursor: default;
-        opacity: 0.5;
-    }
-
-    .form-switch {
-        padding-left: 2.5em;
-    }
-
-    .form-switch .form-check-input {
-        --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27rgba%280, 0, 0, 0.25%29%27/%3e%3c/svg%3e");
-        width: 2em;
-        margin-left: -2.5em;
-        background-image: var(--bs-form-switch-bg);
-        background-position: left center;
-        border-radius: 2em;
-        transition: background-position 0.15s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-switch .form-check-input {
-            transition: none;
-        }
-    }
-
-    .form-switch .form-check-input:focus {
-        --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27%2386b7fe%27/%3e%3c/svg%3e");
-    }
-
-    .form-switch .form-check-input:checked {
-        background-position: right center;
-        --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27%23fff%27/%3e%3c/svg%3e");
-    }
-
-    .form-switch.form-check-reverse {
-        padding-right: 2.5em;
-        padding-left: 0;
-    }
-
-    .form-switch.form-check-reverse .form-check-input {
-        margin-right: -2.5em;
-        margin-left: 0;
-    }
-
-    .form-check-inline {
-        display: inline-block;
-        margin-right: 1rem;
-    }
-
-    .btn-check {
-        position: absolute;
-        clip: rect(0, 0, 0, 0);
-        pointer-events: none;
-    }
-
-    .btn-check[disabled] + .btn, .btn-check:disabled + .btn {
-        pointer-events: none;
-        filter: none;
-        opacity: 0.65;
-    }
-
-    [data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {
-        --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27rgba%28255, 255, 255, 0.25%29%27/%3e%3c/svg%3e");
-    }
-
-    .form-range {
-        width: 100%;
-        height: 1.5rem;
-        padding: 0;
-        background-color: transparent;
-        appearance: none;
-    }
-
-    .form-range:focus {
-        outline: 0;
-    }
-
-    .form-range:focus::-webkit-slider-thumb {
-        box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-    }
-
-    .form-range:focus::-moz-range-thumb {
-        box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-    }
-
-    .form-range::-moz-focus-outer {
-        border: 0;
-    }
-
-    .form-range::-webkit-slider-thumb {
-        width: 1rem;
-        height: 1rem;
-        margin-top: -0.25rem;
-        background-color: #0d6efd;
-        border: 0;
-        border-radius: 1rem;
-        -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-        transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-        appearance: none;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-range::-webkit-slider-thumb {
-            -webkit-transition: none;
-            transition: none;
-        }
-    }
-
-    .form-range::-webkit-slider-thumb:active {
-        background-color: #b6d4fe;
-    }
-
-    .form-range::-webkit-slider-runnable-track {
-        width: 100%;
-        height: 0.5rem;
-        color: transparent;
-        cursor: pointer;
-        background-color: var(--bs-tertiary-bg);
-        border-color: transparent;
-        border-radius: 1rem;
-    }
-
-    .form-range::-moz-range-thumb {
-        width: 1rem;
-        height: 1rem;
-        background-color: #0d6efd;
-        border: 0;
-        border-radius: 1rem;
-        -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-        transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-        appearance: none;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-range::-moz-range-thumb {
-            -moz-transition: none;
-            transition: none;
-        }
-    }
-
-    .form-range::-moz-range-thumb:active {
-        background-color: #b6d4fe;
-    }
-
-    .form-range::-moz-range-track {
-        width: 100%;
-        height: 0.5rem;
-        color: transparent;
-        cursor: pointer;
-        background-color: var(--bs-tertiary-bg);
-        border-color: transparent;
-        border-radius: 1rem;
-    }
-
-    .form-range:disabled {
-        pointer-events: none;
-    }
-
-    .form-range:disabled::-webkit-slider-thumb {
-        background-color: var(--bs-secondary-color);
-    }
-
-    .form-range:disabled::-moz-range-thumb {
-        background-color: var(--bs-secondary-color);
-    }
-
-    .form-floating {
-        position: relative;
-    }
-
-    .form-floating > .form-control,
-    .form-floating > .form-control-plaintext,
-    .form-floating > .form-select {
-        height: calc(3.5rem + calc(var(--bs-border-width) * 2));
-        min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));
-        line-height: 1.25;
-    }
-
-    .form-floating > label {
-        position: absolute;
-        top: 0;
-        left: 0;
-        z-index: 2;
-        height: 100%;
-        padding: 1rem 0.75rem;
-        overflow: hidden;
-        text-align: start;
-        text-overflow: ellipsis;
-        white-space: nowrap;
-        pointer-events: none;
-        border: var(--bs-border-width) solid transparent;
-        transform-origin: 0 0;
-        transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .form-floating > label {
-            transition: none;
-        }
-    }
-
-    .form-floating > .form-control,
-    .form-floating > .form-control-plaintext {
-        padding: 1rem 0.75rem;
-    }
-
-    .form-floating > .form-control::placeholder,
-    .form-floating > .form-control-plaintext::placeholder {
-        color: transparent;
-    }
-
-    .form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),
-    .form-floating > .form-control-plaintext:focus,
-    .form-floating > .form-control-plaintext:not(:placeholder-shown) {
-        padding-top: 1.625rem;
-        padding-bottom: 0.625rem;
-    }
-
-    .form-floating > .form-control:-webkit-autofill,
-    .form-floating > .form-control-plaintext:-webkit-autofill {
-        padding-top: 1.625rem;
-        padding-bottom: 0.625rem;
-    }
-
-    .form-floating > .form-select {
-        padding-top: 1.625rem;
-        padding-bottom: 0.625rem;
-    }
-
-    .form-floating > .form-control:focus ~ label,
-    .form-floating > .form-control:not(:placeholder-shown) ~ label,
-    .form-floating > .form-control-plaintext ~ label,
-    .form-floating > .form-select ~ label {
-        color: rgba(var(--bs-body-color-rgb), 0.65);
-        transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
-    }
-
-    .form-floating > .form-control:focus ~ label::after,
-    .form-floating > .form-control:not(:placeholder-shown) ~ label::after,
-    .form-floating > .form-control-plaintext ~ label::after,
-    .form-floating > .form-select ~ label::after {
-        position: absolute;
-        inset: 1rem 0.375rem;
-        z-index: -1;
-        height: 1.5em;
-        content: "";
-        background-color: var(--bs-body-bg);
-        border-radius: var(--bs-border-radius);
-    }
-
-    .form-floating > .form-control:-webkit-autofill ~ label {
-        color: rgba(var(--bs-body-color-rgb), 0.65);
-        transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
-    }
-
-    .form-floating > .form-control-plaintext ~ label {
-        border-width: var(--bs-border-width) 0;
-    }
-
-    .form-floating > :disabled ~ label {
-        color: #6c757d;
-    }
-
-    .form-floating > :disabled ~ label::after {
-        background-color: var(--bs-secondary-bg);
-    }
-
-    .input-group {
-        position: relative;
-        display: flex;
-        flex-wrap: wrap;
-        align-items: stretch;
-        width: 100%;
-    }
-
-    .input-group > .form-control,
-    .input-group > .form-select,
-    .input-group > .form-floating {
-        position: relative;
-        flex: 1 1 auto;
-        width: 1%;
-        min-width: 0;
-    }
-
-    .input-group > .form-control:focus,
-    .input-group > .form-select:focus,
-    .input-group > .form-floating:focus-within {
-        z-index: 5;
-    }
-
-    .input-group .btn {
-        position: relative;
-        z-index: 2;
-    }
-
-    .input-group .btn:focus {
-        z-index: 5;
-    }
-
-    .input-group-text {
-        display: flex;
-        align-items: center;
-        padding: 0.375rem 0.75rem;
-        font-size: 1rem;
-        font-weight: 400;
-        line-height: 1.5;
-        color: var(--bs-body-color);
-        text-align: center;
-        white-space: nowrap;
-        background-color: var(--bs-tertiary-bg);
-        border: var(--bs-border-width) solid var(--bs-border-color);
-        border-radius: var(--bs-border-radius);
-    }
-
-    .input-group-lg > .form-control,
-    .input-group-lg > .form-select,
-    .input-group-lg > .input-group-text,
-    .input-group-lg > .btn {
-        padding: 0.5rem 1rem;
-        font-size: 1.25rem;
-        border-radius: var(--bs-border-radius-lg);
-    }
-
-    .input-group-sm > .form-control,
-    .input-group-sm > .form-select,
-    .input-group-sm > .input-group-text,
-    .input-group-sm > .btn {
-        padding: 0.25rem 0.5rem;
-        font-size: 0.875rem;
-        border-radius: var(--bs-border-radius-sm);
-    }
-
-    .input-group-lg > .form-select,
-    .input-group-sm > .form-select {
-        padding-right: 3rem;
-    }
-
-    .input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
-    .input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),
-    .input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,
-    .input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {
-        border-top-right-radius: 0;
-        border-bottom-right-radius: 0;
-    }
-
-    .input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
-    .input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),
-    .input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,
-    .input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {
-        border-top-right-radius: 0;
-        border-bottom-right-radius: 0;
-    }
-
-    .input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
-        margin-left: calc(var(--bs-border-width) * -1);
-        border-top-left-radius: 0;
-        border-bottom-left-radius: 0;
-    }
-
-    .input-group > .form-floating:not(:first-child) > .form-control,
-    .input-group > .form-floating:not(:first-child) > .form-select {
-        border-top-left-radius: 0;
-        border-bottom-left-radius: 0;
-    }
-
-    .valid-feedback {
-        display: none;
-        width: 100%;
-        margin-top: 0.25rem;
-        font-size: 0.875em;
-        color: var(--bs-form-valid-color);
-    }
-
-    .valid-tooltip {
-        position: absolute;
-        top: 100%;
-        z-index: 5;
-        display: none;
-        max-width: 100%;
-        padding: 0.25rem 0.5rem;
-        margin-top: 0.1rem;
-        font-size: 0.875rem;
-        color: #fff;
-        background-color: var(--bs-success);
-        border-radius: var(--bs-border-radius);
-    }
-
-    .was-validated :valid ~ .valid-feedback,
-    .was-validated :valid ~ .valid-tooltip,
-    .is-valid ~ .valid-feedback,
-    .is-valid ~ .valid-tooltip {
-        display: block;
-    }
-
-    .was-validated .form-control:valid, .form-control.is-valid {
-        border-color: var(--bs-form-valid-border-color);
-        padding-right: calc(1.5em + 0.75rem);
-        background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 8 8%27%3e%3cpath fill=%27%23198754%27 d=%27M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z%27/%3e%3c/svg%3e");
-        background-repeat: no-repeat;
-        background-position: right calc(0.375em + 0.1875rem) center;
-        background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
-    }
-
-    .was-validated .form-control:valid:focus, .form-control.is-valid:focus {
-        border-color: var(--bs-form-valid-border-color);
-        box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
-    }
-
-    .was-validated textarea.form-control:valid, textarea.form-control.is-valid {
-        padding-right: calc(1.5em + 0.75rem);
-        background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
-    }
-
-    .was-validated .form-select:valid, .form-select.is-valid {
-        border-color: var(--bs-form-valid-border-color);
-    }
-
-    .was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] {
-        --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 8 8%27%3e%3cpath fill=%27%23198754%27 d=%27M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z%27/%3e%3c/svg%3e");
-        padding-right: 4.125rem;
-        background-position: right 0.75rem center, center right 2.25rem;
-        background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
-    }
-
-    .was-validated .form-select:valid:focus, .form-select.is-valid:focus {
-        border-color: var(--bs-form-valid-border-color);
-        box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
-    }
-
-    .was-validated .form-control-color:valid, .form-control-color.is-valid {
-        width: calc(3rem + calc(1.5em + 0.75rem));
-    }
-
-    .was-validated .form-check-input:valid, .form-check-input.is-valid {
-        border-color: var(--bs-form-valid-border-color);
-    }
-
-    .was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {
-        background-color: var(--bs-form-valid-color);
-    }
-
-    .was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {
-        box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
-    }
-
-    .was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
-        color: var(--bs-form-valid-color);
-    }
-
-    .form-check-inline .form-check-input ~ .valid-feedback {
-        margin-left: 0.5em;
-    }
-
-    .was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,
-    .was-validated .input-group > .form-select:not(:focus):valid,
-    .input-group > .form-select:not(:focus).is-valid,
-    .was-validated .input-group > .form-floating:not(:focus-within):valid,
-    .input-group > .form-floating:not(:focus-within).is-valid {
-        z-index: 3;
-    }
-
-    .invalid-feedback {
-        display: none;
-        width: 100%;
-        margin-top: 0.25rem;
-        font-size: 0.875em;
-        color: var(--bs-form-invalid-color);
-    }
-
-    .invalid-tooltip {
-        position: absolute;
-        top: 100%;
-        z-index: 5;
-        display: none;
-        max-width: 100%;
-        padding: 0.25rem 0.5rem;
-        margin-top: 0.1rem;
-        font-size: 0.875rem;
-        color: #fff;
-        background-color: var(--bs-danger);
-        border-radius: var(--bs-border-radius);
-    }
-
-    .was-validated :invalid ~ .invalid-feedback,
-    .was-validated :invalid ~ .invalid-tooltip,
-    .is-invalid ~ .invalid-feedback,
-    .is-invalid ~ .invalid-tooltip {
-        display: block;
-    }
-
-    .was-validated .form-control:invalid, .form-control.is-invalid {
-        border-color: var(--bs-form-invalid-border-color);
-        padding-right: calc(1.5em + 0.75rem);
-        background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27 width=%2712%27 height=%2712%27 fill=%27none%27 stroke=%27%23dc3545%27%3e%3ccircle cx=%276%27 cy=%276%27 r=%274.5%27/%3e%3cpath stroke-linejoin=%27round%27 d=%27M5.8 3.6h.4L6 6.5z%27/%3e%3ccircle cx=%276%27 cy=%278.2%27 r=%27.6%27 fill=%27%23dc3545%27 stroke=%27none%27/%3e%3c/svg%3e");
-        background-repeat: no-repeat;
-        background-position: right calc(0.375em + 0.1875rem) center;
-        background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
-    }
-
-    .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
-        border-color: var(--bs-form-invalid-border-color);
-        box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
-    }
-
-    .was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
-        padding-right: calc(1.5em + 0.75rem);
-        background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
-    }
-
-    .was-validated .form-select:invalid, .form-select.is-invalid {
-        border-color: var(--bs-form-invalid-border-color);
-    }
-
-    .was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] {
-        --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27 width=%2712%27 height=%2712%27 fill=%27none%27 stroke=%27%23dc3545%27%3e%3ccircle cx=%276%27 cy=%276%27 r=%274.5%27/%3e%3cpath stroke-linejoin=%27round%27 d=%27M5.8 3.6h.4L6 6.5z%27/%3e%3ccircle cx=%276%27 cy=%278.2%27 r=%27.6%27 fill=%27%23dc3545%27 stroke=%27none%27/%3e%3c/svg%3e");
-        padding-right: 4.125rem;
-        background-position: right 0.75rem center, center right 2.25rem;
-        background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
-    }
-
-    .was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {
-        border-color: var(--bs-form-invalid-border-color);
-        box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
-    }
-
-    .was-validated .form-control-color:invalid, .form-control-color.is-invalid {
-        width: calc(3rem + calc(1.5em + 0.75rem));
-    }
-
-    .was-validated .form-check-input:invalid, .form-check-input.is-invalid {
-        border-color: var(--bs-form-invalid-border-color);
-    }
-
-    .was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {
-        background-color: var(--bs-form-invalid-color);
-    }
-
-    .was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {
-        box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
-    }
-
-    .was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
-        color: var(--bs-form-invalid-color);
-    }
-
-    .form-check-inline .form-check-input ~ .invalid-feedback {
-        margin-left: 0.5em;
-    }
-
-    .was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,
-    .was-validated .input-group > .form-select:not(:focus):invalid,
-    .input-group > .form-select:not(:focus).is-invalid,
-    .was-validated .input-group > .form-floating:not(:focus-within):invalid,
-    .input-group > .form-floating:not(:focus-within).is-invalid {
-        z-index: 4;
-    }
-
-    .btn {
-        --bs-btn-padding-x: 0.75rem;
-        --bs-btn-padding-y: 0.375rem;
-        --bs-btn-font-family: ;
-        --bs-btn-font-size: 1rem;
-        --bs-btn-font-weight: 400;
-        --bs-btn-line-height: 1.5;
-        --bs-btn-color: var(--bs-body-color);
-        --bs-btn-bg: transparent;
-        --bs-btn-border-width: var(--bs-border-width);
-        --bs-btn-border-color: transparent;
-        --bs-btn-border-radius: var(--bs-border-radius);
-        --bs-btn-hover-border-color: transparent;
-        --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
-        --bs-btn-disabled-opacity: 0.65;
-        --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
-        display: inline-block;
-        padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
-        font-family: var(--bs-btn-font-family);
-        font-size: var(--bs-btn-font-size);
-        font-weight: var(--bs-btn-font-weight);
-        line-height: var(--bs-btn-line-height);
-        color: var(--bs-btn-color);
-        text-align: center;
-        text-decoration: none;
-        vertical-align: middle;
-        cursor: pointer;
-        -webkit-user-select: none;
-        user-select: none;
-        border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
-        border-radius: var(--bs-btn-border-radius);
-        background-color: var(--bs-btn-bg);
-        transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .btn {
-            transition: none;
-        }
-    }
-
-    .btn:hover {
-        color: var(--bs-btn-hover-color);
-        background-color: var(--bs-btn-hover-bg);
-        border-color: var(--bs-btn-hover-border-color);
-    }
-
-    .btn-check + .btn:hover {
-        color: var(--bs-btn-color);
-        background-color: var(--bs-btn-bg);
-        border-color: var(--bs-btn-border-color);
-    }
-
-    .btn:focus-visible {
-        color: var(--bs-btn-hover-color);
-        background-color: var(--bs-btn-hover-bg);
-        border-color: var(--bs-btn-hover-border-color);
-        outline: 0;
-        box-shadow: var(--bs-btn-focus-box-shadow);
-    }
-
-    .btn-check:focus-visible + .btn {
-        border-color: var(--bs-btn-hover-border-color);
-        outline: 0;
-        box-shadow: var(--bs-btn-focus-box-shadow);
-    }
-
-    .btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {
-        color: var(--bs-btn-active-color);
-        background-color: var(--bs-btn-active-bg);
-        border-color: var(--bs-btn-active-border-color);
-    }
-
-    .btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {
-        box-shadow: var(--bs-btn-focus-box-shadow);
-    }
-
-    .btn:disabled, .btn.disabled, fieldset:disabled .btn {
-        color: var(--bs-btn-disabled-color);
-        pointer-events: none;
-        background-color: var(--bs-btn-disabled-bg);
-        border-color: var(--bs-btn-disabled-border-color);
-        opacity: var(--bs-btn-disabled-opacity);
-    }
-
-    .btn-primary {
-        --bs-btn-color: #fff;
-        --bs-btn-bg: #0d6efd;
-        --bs-btn-border-color: #0d6efd;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #0b5ed7;
-        --bs-btn-hover-border-color: #0a58ca;
-        --bs-btn-focus-shadow-rgb: 49, 132, 253;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #0a58ca;
-        --bs-btn-active-border-color: #0a53be;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #fff;
-        --bs-btn-disabled-bg: #0d6efd;
-        --bs-btn-disabled-border-color: #0d6efd;
-    }
-
-    .btn-secondary {
-        --bs-btn-color: #fff;
-        --bs-btn-bg: #6c757d;
-        --bs-btn-border-color: #6c757d;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #5c636a;
-        --bs-btn-hover-border-color: #565e64;
-        --bs-btn-focus-shadow-rgb: 130, 138, 145;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #565e64;
-        --bs-btn-active-border-color: #51585e;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #fff;
-        --bs-btn-disabled-bg: #6c757d;
-        --bs-btn-disabled-border-color: #6c757d;
-    }
-
-    .btn-success {
-        --bs-btn-color: #fff;
-        --bs-btn-bg: #198754;
-        --bs-btn-border-color: #198754;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #157347;
-        --bs-btn-hover-border-color: #146c43;
-        --bs-btn-focus-shadow-rgb: 60, 153, 110;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #146c43;
-        --bs-btn-active-border-color: #13653f;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #fff;
-        --bs-btn-disabled-bg: #198754;
-        --bs-btn-disabled-border-color: #198754;
-    }
-
-    .btn-info {
-        --bs-btn-color: #000;
-        --bs-btn-bg: #0dcaf0;
-        --bs-btn-border-color: #0dcaf0;
-        --bs-btn-hover-color: #000;
-        --bs-btn-hover-bg: #31d2f2;
-        --bs-btn-hover-border-color: #25cff2;
-        --bs-btn-focus-shadow-rgb: 11, 172, 204;
-        --bs-btn-active-color: #000;
-        --bs-btn-active-bg: #3dd5f3;
-        --bs-btn-active-border-color: #25cff2;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #000;
-        --bs-btn-disabled-bg: #0dcaf0;
-        --bs-btn-disabled-border-color: #0dcaf0;
-    }
-
-    .btn-warning {
-        --bs-btn-color: #000;
-        --bs-btn-bg: #ffc107;
-        --bs-btn-border-color: #ffc107;
-        --bs-btn-hover-color: #000;
-        --bs-btn-hover-bg: #ffca2c;
-        --bs-btn-hover-border-color: #ffc720;
-        --bs-btn-focus-shadow-rgb: 217, 164, 6;
-        --bs-btn-active-color: #000;
-        --bs-btn-active-bg: #ffcd39;
-        --bs-btn-active-border-color: #ffc720;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #000;
-        --bs-btn-disabled-bg: #ffc107;
-        --bs-btn-disabled-border-color: #ffc107;
-    }
-
-    .btn-danger {
-        --bs-btn-color: #fff;
-        --bs-btn-bg: #dc3545;
-        --bs-btn-border-color: #dc3545;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #bb2d3b;
-        --bs-btn-hover-border-color: #b02a37;
-        --bs-btn-focus-shadow-rgb: 225, 83, 97;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #b02a37;
-        --bs-btn-active-border-color: #a52834;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #fff;
-        --bs-btn-disabled-bg: #dc3545;
-        --bs-btn-disabled-border-color: #dc3545;
-    }
-
-    .btn-light {
-        --bs-btn-color: #000;
-        --bs-btn-bg: #f8f9fa;
-        --bs-btn-border-color: #f8f9fa;
-        --bs-btn-hover-color: #000;
-        --bs-btn-hover-bg: #d3d4d5;
-        --bs-btn-hover-border-color: #c6c7c8;
-        --bs-btn-focus-shadow-rgb: 211, 212, 213;
-        --bs-btn-active-color: #000;
-        --bs-btn-active-bg: #c6c7c8;
-        --bs-btn-active-border-color: #babbbc;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #000;
-        --bs-btn-disabled-bg: #f8f9fa;
-        --bs-btn-disabled-border-color: #f8f9fa;
-    }
-
-    .btn-dark {
-        --bs-btn-color: #fff;
-        --bs-btn-bg: #212529;
-        --bs-btn-border-color: #212529;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #424649;
-        --bs-btn-hover-border-color: #373b3e;
-        --bs-btn-focus-shadow-rgb: 66, 70, 73;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #4d5154;
-        --bs-btn-active-border-color: #373b3e;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #fff;
-        --bs-btn-disabled-bg: #212529;
-        --bs-btn-disabled-border-color: #212529;
-    }
-
-    .btn-outline-primary {
-        --bs-btn-color: #0d6efd;
-        --bs-btn-border-color: #0d6efd;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #0d6efd;
-        --bs-btn-hover-border-color: #0d6efd;
-        --bs-btn-focus-shadow-rgb: 13, 110, 253;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #0d6efd;
-        --bs-btn-active-border-color: #0d6efd;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #0d6efd;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #0d6efd;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-secondary {
-        --bs-btn-color: #6c757d;
-        --bs-btn-border-color: #6c757d;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #6c757d;
-        --bs-btn-hover-border-color: #6c757d;
-        --bs-btn-focus-shadow-rgb: 108, 117, 125;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #6c757d;
-        --bs-btn-active-border-color: #6c757d;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #6c757d;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #6c757d;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-success {
-        --bs-btn-color: #198754;
-        --bs-btn-border-color: #198754;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #198754;
-        --bs-btn-hover-border-color: #198754;
-        --bs-btn-focus-shadow-rgb: 25, 135, 84;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #198754;
-        --bs-btn-active-border-color: #198754;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #198754;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #198754;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-info {
-        --bs-btn-color: #0dcaf0;
-        --bs-btn-border-color: #0dcaf0;
-        --bs-btn-hover-color: #000;
-        --bs-btn-hover-bg: #0dcaf0;
-        --bs-btn-hover-border-color: #0dcaf0;
-        --bs-btn-focus-shadow-rgb: 13, 202, 240;
-        --bs-btn-active-color: #000;
-        --bs-btn-active-bg: #0dcaf0;
-        --bs-btn-active-border-color: #0dcaf0;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #0dcaf0;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #0dcaf0;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-warning {
-        --bs-btn-color: #ffc107;
-        --bs-btn-border-color: #ffc107;
-        --bs-btn-hover-color: #000;
-        --bs-btn-hover-bg: #ffc107;
-        --bs-btn-hover-border-color: #ffc107;
-        --bs-btn-focus-shadow-rgb: 255, 193, 7;
-        --bs-btn-active-color: #000;
-        --bs-btn-active-bg: #ffc107;
-        --bs-btn-active-border-color: #ffc107;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #ffc107;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #ffc107;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-danger {
-        --bs-btn-color: #dc3545;
-        --bs-btn-border-color: #dc3545;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #dc3545;
-        --bs-btn-hover-border-color: #dc3545;
-        --bs-btn-focus-shadow-rgb: 220, 53, 69;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #dc3545;
-        --bs-btn-active-border-color: #dc3545;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #dc3545;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #dc3545;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-light {
-        --bs-btn-color: #f8f9fa;
-        --bs-btn-border-color: #f8f9fa;
-        --bs-btn-hover-color: #000;
-        --bs-btn-hover-bg: #f8f9fa;
-        --bs-btn-hover-border-color: #f8f9fa;
-        --bs-btn-focus-shadow-rgb: 248, 249, 250;
-        --bs-btn-active-color: #000;
-        --bs-btn-active-bg: #f8f9fa;
-        --bs-btn-active-border-color: #f8f9fa;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #f8f9fa;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #f8f9fa;
-        --bs-gradient: none;
-    }
-
-    .btn-outline-dark {
-        --bs-btn-color: #212529;
-        --bs-btn-border-color: #212529;
-        --bs-btn-hover-color: #fff;
-        --bs-btn-hover-bg: #212529;
-        --bs-btn-hover-border-color: #212529;
-        --bs-btn-focus-shadow-rgb: 33, 37, 41;
-        --bs-btn-active-color: #fff;
-        --bs-btn-active-bg: #212529;
-        --bs-btn-active-border-color: #212529;
-        --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-        --bs-btn-disabled-color: #212529;
-        --bs-btn-disabled-bg: transparent;
-        --bs-btn-disabled-border-color: #212529;
-        --bs-gradient: none;
-    }
-
-    .btn-link {
-        --bs-btn-font-weight: 400;
-        --bs-btn-color: var(--bs-link-color);
-        --bs-btn-bg: transparent;
-        --bs-btn-border-color: transparent;
-        --bs-btn-hover-color: var(--bs-link-hover-color);
-        --bs-btn-hover-border-color: transparent;
-        --bs-btn-active-color: var(--bs-link-hover-color);
-        --bs-btn-active-border-color: transparent;
-        --bs-btn-disabled-color: #6c757d;
-        --bs-btn-disabled-border-color: transparent;
-        --bs-btn-box-shadow: 0 0 0 #000;
-        --bs-btn-focus-shadow-rgb: 49, 132, 253;
-        text-decoration: underline;
-    }
-
-    .btn-link:focus-visible {
-        color: var(--bs-btn-color);
-    }
-
-    .btn-link:hover {
-        color: var(--bs-btn-hover-color);
-    }
-
-    .btn-lg, .btn-group-lg > .btn {
-        --bs-btn-padding-y: 0.5rem;
-        --bs-btn-padding-x: 1rem;
-        --bs-btn-font-size: 1.25rem;
-        --bs-btn-border-radius: var(--bs-border-radius-lg);
-    }
-
-    .btn-sm, .btn-group-sm > .btn {
-        --bs-btn-padding-y: 0.25rem;
-        --bs-btn-padding-x: 0.5rem;
-        --bs-btn-font-size: 0.875rem;
-        --bs-btn-border-radius: var(--bs-border-radius-sm);
-    }
-
-    .fade {
-        transition: opacity 0.15s linear;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .fade {
-            transition: none;
-        }
-    }
-
-    .fade:not(.show) {
-        opacity: 0;
-    }
-
-    .collapse:not(.show) {
-        display: none;
-    }
-
-    .collapsing {
-        height: 0;
-        overflow: hidden;
-        transition: height 0.35s ease;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .collapsing {
-            transition: none;
-        }
-    }
-
-    .collapsing.collapse-horizontal {
-        width: 0;
-        height: auto;
-        transition: width 0.35s ease;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .collapsing.collapse-horizontal {
-            transition: none;
-        }
-    }
-
-    .dropup,
-    .dropend,
-    .dropdown,
-    .dropstart,
-    .dropup-center,
-    .dropdown-center {
-        position: relative;
-    }
-
-    .dropdown-toggle {
-        white-space: nowrap;
-    }
-
-    .dropdown-toggle::after {
-        display: inline-block;
-        margin-left: 0.255em;
-        vertical-align: 0.255em;
-        content: "";
-        border-top: 0.3em solid;
-        border-right: 0.3em solid transparent;
-        border-bottom: 0;
-        border-left: 0.3em solid transparent;
-    }
-
-    .dropdown-toggle:empty::after {
-        margin-left: 0;
-    }
-
-    .dropdown-menu {
-        --bs-dropdown-zindex: 1000;
-        --bs-dropdown-min-width: 10rem;
-        --bs-dropdown-padding-x: 0;
-        --bs-dropdown-padding-y: 0.5rem;
-        --bs-dropdown-spacer: 0.125rem;
-        --bs-dropdown-font-size: 1rem;
-        --bs-dropdown-color: var(--bs-body-color);
-        --bs-dropdown-bg: var(--bs-body-bg);
-        --bs-dropdown-border-color: var(--bs-border-color-translucent);
-        --bs-dropdown-border-radius: var(--bs-border-radius);
-        --bs-dropdown-border-width: var(--bs-border-width);
-        --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
-        --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
-        --bs-dropdown-divider-margin-y: 0.5rem;
-        --bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
-        --bs-dropdown-link-color: var(--bs-body-color);
-        --bs-dropdown-link-hover-color: var(--bs-body-color);
-        --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);
-        --bs-dropdown-link-active-color: #fff;
-        --bs-dropdown-link-active-bg: #0d6efd;
-        --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
-        --bs-dropdown-item-padding-x: 1rem;
-        --bs-dropdown-item-padding-y: 0.25rem;
-        --bs-dropdown-header-color: #6c757d;
-        --bs-dropdown-header-padding-x: 1rem;
-        --bs-dropdown-header-padding-y: 0.5rem;
-        position: absolute;
-        z-index: var(--bs-dropdown-zindex);
-        display: none;
-        min-width: var(--bs-dropdown-min-width);
-        padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
-        margin: 0;
-        font-size: var(--bs-dropdown-font-size);
-        color: var(--bs-dropdown-color);
-        text-align: left;
-        list-style: none;
-        background-color: var(--bs-dropdown-bg);
-        background-clip: padding-box;
-        border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
-        border-radius: var(--bs-dropdown-border-radius);
-    }
-
-    .dropdown-menu[data-bs-popper] {
-        top: 100%;
-        left: 0;
-        margin-top: var(--bs-dropdown-spacer);
-    }
-
-    .dropdown-menu-start {
-        --bs-position: start;
-    }
-
-    .dropdown-menu-start[data-bs-popper] {
-        right: auto;
-        left: 0;
-    }
-
-    .dropdown-menu-end {
-        --bs-position: end;
-    }
-
-    .dropdown-menu-end[data-bs-popper] {
-        right: 0;
-        left: auto;
-    }
-
-    @media (min-width: 576px) {
-        .dropdown-menu-sm-start {
-            --bs-position: start;
-        }
-
-        .dropdown-menu-sm-start[data-bs-popper] {
-            right: auto;
-            left: 0;
-        }
-
-        .dropdown-menu-sm-end {
-            --bs-position: end;
-        }
-
-        .dropdown-menu-sm-end[data-bs-popper] {
-            right: 0;
-            left: auto;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .dropdown-menu-md-start {
-            --bs-position: start;
-        }
-
-        .dropdown-menu-md-start[data-bs-popper] {
-            right: auto;
-            left: 0;
-        }
-
-        .dropdown-menu-md-end {
-            --bs-position: end;
-        }
-
-        .dropdown-menu-md-end[data-bs-popper] {
-            right: 0;
-            left: auto;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .dropdown-menu-lg-start {
-            --bs-position: start;
-        }
-
-        .dropdown-menu-lg-start[data-bs-popper] {
-            right: auto;
-            left: 0;
-        }
-
-        .dropdown-menu-lg-end {
-            --bs-position: end;
-        }
-
-        .dropdown-menu-lg-end[data-bs-popper] {
-            right: 0;
-            left: auto;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .dropdown-menu-xl-start {
-            --bs-position: start;
-        }
-
-        .dropdown-menu-xl-start[data-bs-popper] {
-            right: auto;
-            left: 0;
-        }
-
-        .dropdown-menu-xl-end {
-            --bs-position: end;
-        }
-
-        .dropdown-menu-xl-end[data-bs-popper] {
-            right: 0;
-            left: auto;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .dropdown-menu-xxl-start {
-            --bs-position: start;
-        }
-
-        .dropdown-menu-xxl-start[data-bs-popper] {
-            right: auto;
-            left: 0;
-        }
-
-        .dropdown-menu-xxl-end {
-            --bs-position: end;
-        }
-
-        .dropdown-menu-xxl-end[data-bs-popper] {
-            right: 0;
-            left: auto;
-        }
-    }
-
-    .dropup .dropdown-menu[data-bs-popper] {
-        top: auto;
-        bottom: 100%;
-        margin-top: 0;
-        margin-bottom: var(--bs-dropdown-spacer);
-    }
-
-    .dropup .dropdown-toggle::after {
-        display: inline-block;
-        margin-left: 0.255em;
-        vertical-align: 0.255em;
-        content: "";
-        border-top: 0;
-        border-right: 0.3em solid transparent;
-        border-bottom: 0.3em solid;
-        border-left: 0.3em solid transparent;
-    }
-
-    .dropup .dropdown-toggle:empty::after {
-        margin-left: 0;
-    }
-
-    .dropend .dropdown-menu[data-bs-popper] {
-        top: 0;
-        right: auto;
-        left: 100%;
-        margin-top: 0;
-        margin-left: var(--bs-dropdown-spacer);
-    }
-
-    .dropend .dropdown-toggle::after {
-        display: inline-block;
-        margin-left: 0.255em;
-        vertical-align: 0.255em;
-        content: "";
-        border-top: 0.3em solid transparent;
-        border-right: 0;
-        border-bottom: 0.3em solid transparent;
-        border-left: 0.3em solid;
-    }
-
-    .dropend .dropdown-toggle:empty::after {
-        margin-left: 0;
-    }
-
-    .dropend .dropdown-toggle::after {
-        vertical-align: 0;
-    }
-
-    .dropstart .dropdown-menu[data-bs-popper] {
-        top: 0;
-        right: 100%;
-        left: auto;
-        margin-top: 0;
-        margin-right: var(--bs-dropdown-spacer);
-    }
-
-    .dropstart .dropdown-toggle::after {
-        display: inline-block;
-        margin-left: 0.255em;
-        vertical-align: 0.255em;
-        content: "";
-    }
-
-    .dropstart .dropdown-toggle::after {
-        display: none;
-    }
-
-    .dropstart .dropdown-toggle::before {
-        display: inline-block;
-        margin-right: 0.255em;
-        vertical-align: 0.255em;
-        content: "";
-        border-top: 0.3em solid transparent;
-        border-right: 0.3em solid;
-        border-bottom: 0.3em solid transparent;
-    }
-
-    .dropstart .dropdown-toggle:empty::after {
-        margin-left: 0;
-    }
-
-    .dropstart .dropdown-toggle::before {
-        vertical-align: 0;
-    }
-
-    .dropdown-divider {
-        height: 0;
-        margin: var(--bs-dropdown-divider-margin-y) 0;
-        overflow: hidden;
-        border-top: 1px solid var(--bs-dropdown-divider-bg);
-        opacity: 1;
-    }
-
-    .dropdown-item {
-        display: block;
-        width: 100%;
-        padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
-        clear: both;
-        font-weight: 400;
-        color: var(--bs-dropdown-link-color);
-        text-align: inherit;
-        text-decoration: none;
-        white-space: nowrap;
-        background-color: transparent;
-        border: 0;
-        border-radius: var(--bs-dropdown-item-border-radius, 0);
-    }
-
-    .dropdown-item:hover, .dropdown-item:focus {
-        color: var(--bs-dropdown-link-hover-color);
-        background-color: var(--bs-dropdown-link-hover-bg);
-    }
-
-    .dropdown-item.active, .dropdown-item:active {
-        color: var(--bs-dropdown-link-active-color);
-        text-decoration: none;
-        background-color: var(--bs-dropdown-link-active-bg);
-    }
-
-    .dropdown-item.disabled, .dropdown-item:disabled {
-        color: var(--bs-dropdown-link-disabled-color);
-        pointer-events: none;
-        background-color: transparent;
-    }
-
-    .dropdown-menu.show {
-        display: block;
-    }
-
-    .dropdown-header {
-        display: block;
-        padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
-        margin-bottom: 0;
-        font-size: 0.875rem;
-        color: var(--bs-dropdown-header-color);
-        white-space: nowrap;
-    }
-
-    .dropdown-item-text {
-        display: block;
-        padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
-        color: var(--bs-dropdown-link-color);
-    }
-
-    .dropdown-menu-dark {
-        --bs-dropdown-color: #dee2e6;
-        --bs-dropdown-bg: #343a40;
-        --bs-dropdown-border-color: var(--bs-border-color-translucent);
-        --bs-dropdown-box-shadow: ;
-        --bs-dropdown-link-color: #dee2e6;
-        --bs-dropdown-link-hover-color: #fff;
-        --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
-        --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
-        --bs-dropdown-link-active-color: #fff;
-        --bs-dropdown-link-active-bg: #0d6efd;
-        --bs-dropdown-link-disabled-color: #adb5bd;
-        --bs-dropdown-header-color: #adb5bd;
-    }
-
-    .btn-group,
-    .btn-group-vertical {
-        position: relative;
-        display: inline-flex;
-        vertical-align: middle;
-    }
-
-    .btn-group > .btn,
-    .btn-group-vertical > .btn {
-        position: relative;
-        flex: 1 1 auto;
-    }
-
-    .btn-group > .btn-check:checked + .btn,
-    .btn-group > .btn-check:focus + .btn,
-    .btn-group > .btn:hover,
-    .btn-group > .btn:focus,
-    .btn-group > .btn:active,
-    .btn-group > .btn.active,
-    .btn-group-vertical > .btn-check:checked + .btn,
-    .btn-group-vertical > .btn-check:focus + .btn,
-    .btn-group-vertical > .btn:hover,
-    .btn-group-vertical > .btn:focus,
-    .btn-group-vertical > .btn:active,
-    .btn-group-vertical > .btn.active {
-        z-index: 1;
-    }
-
-    .btn-toolbar {
-        display: flex;
-        flex-wrap: wrap;
-        justify-content: flex-start;
-    }
-
-    .btn-toolbar .input-group {
-        width: auto;
-    }
-
-    .btn-group {
-        border-radius: var(--bs-border-radius);
-    }
-
-    .btn-group > :not(.btn-check:first-child) + .btn,
-    .btn-group > .btn-group:not(:first-child) {
-        margin-left: calc(var(--bs-border-width) * -1);
-    }
-
-    .btn-group > .btn:not(:last-child):not(.dropdown-toggle),
-    .btn-group > .btn.dropdown-toggle-split:first-child,
-    .btn-group > .btn-group:not(:last-child) > .btn {
-        border-top-right-radius: 0;
-        border-bottom-right-radius: 0;
-    }
-
-    .btn-group > .btn:nth-child(n+3),
-    .btn-group > :not(.btn-check) + .btn,
-    .btn-group > .btn-group:not(:first-child) > .btn {
-        border-top-left-radius: 0;
-        border-bottom-left-radius: 0;
-    }
-
-    .dropdown-toggle-split {
-        padding-right: 0.5625rem;
-        padding-left: 0.5625rem;
-    }
-
-    .dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {
-        margin-left: 0;
-    }
-
-    .dropstart .dropdown-toggle-split::before {
-        margin-right: 0;
-    }
-
-    .btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
-        padding-right: 0.375rem;
-        padding-left: 0.375rem;
-    }
-
-    .btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
-        padding-right: 0.75rem;
-        padding-left: 0.75rem;
-    }
-
-    .btn-group-vertical {
-        flex-direction: column;
-        align-items: flex-start;
-        justify-content: center;
-    }
-
-    .btn-group-vertical > .btn,
-    .btn-group-vertical > .btn-group {
-        width: 100%;
-    }
-
-    .btn-group-vertical > .btn:not(:first-child),
-    .btn-group-vertical > .btn-group:not(:first-child) {
-        margin-top: calc(var(--bs-border-width) * -1);
-    }
-
-    .btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
-    .btn-group-vertical > .btn-group:not(:last-child) > .btn {
-        border-bottom-right-radius: 0;
-        border-bottom-left-radius: 0;
-    }
-
-    .btn-group-vertical > .btn ~ .btn,
-    .btn-group-vertical > .btn-group:not(:first-child) > .btn {
-        border-top-left-radius: 0;
-        border-top-right-radius: 0;
-    }
-
-    .nav {
-        --bs-nav-link-padding-x: 1rem;
-        --bs-nav-link-padding-y: 0.5rem;
-        --bs-nav-link-font-weight: ;
-        --bs-nav-link-color: var(--bs-link-color);
-        --bs-nav-link-hover-color: var(--bs-link-hover-color);
-        --bs-nav-link-disabled-color: var(--bs-secondary-color);
-        display: flex;
-        flex-wrap: wrap;
-        padding-left: 0;
-        margin-bottom: 0;
-        list-style: none;
-    }
-
-    .nav-link {
-        display: block;
-        padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
-        font-size: var(--bs-nav-link-font-size);
-        font-weight: var(--bs-nav-link-font-weight);
-        color: var(--bs-nav-link-color);
-        text-decoration: none;
-        background: none;
-        border: 0;
-        transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .nav-link {
-            transition: none;
-        }
-    }
-
-    .nav-link:hover, .nav-link:focus {
-        color: var(--bs-nav-link-hover-color);
-    }
-
-    .nav-link:focus-visible {
-        outline: 0;
-        box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-    }
-
-    .nav-link.disabled {
-        color: var(--bs-nav-link-disabled-color);
-        pointer-events: none;
-        cursor: default;
-    }
-
-    .nav-tabs {
-        --bs-nav-tabs-border-width: var(--bs-border-width);
-        --bs-nav-tabs-border-color: var(--bs-border-color);
-        --bs-nav-tabs-border-radius: var(--bs-border-radius);
-        --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);
-        --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);
-        --bs-nav-tabs-link-active-bg: var(--bs-body-bg);
-        --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);
-        border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);
-    }
-
-    .nav-tabs .nav-link {
-        margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
-        border: var(--bs-nav-tabs-border-width) solid transparent;
-        border-top-left-radius: var(--bs-nav-tabs-border-radius);
-        border-top-right-radius: var(--bs-nav-tabs-border-radius);
-    }
-
-    .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
-        isolation: isolate;
-        border-color: var(--bs-nav-tabs-link-hover-border-color);
-    }
-
-    .nav-tabs .nav-link.disabled, .nav-tabs .nav-link:disabled {
-        color: var(--bs-nav-link-disabled-color);
-        background-color: transparent;
-        border-color: transparent;
-    }
-
-    .nav-tabs .nav-link.active,
-    .nav-tabs .nav-item.show .nav-link {
-        color: var(--bs-nav-tabs-link-active-color);
-        background-color: var(--bs-nav-tabs-link-active-bg);
-        border-color: var(--bs-nav-tabs-link-active-border-color);
-    }
-
-    .nav-tabs .dropdown-menu {
-        margin-top: calc(-1 * var(--bs-nav-tabs-border-width));
-        border-top-left-radius: 0;
-        border-top-right-radius: 0;
-    }
-
-    .nav-pills {
-        --bs-nav-pills-border-radius: var(--bs-border-radius);
-        --bs-nav-pills-link-active-color: #fff;
-        --bs-nav-pills-link-active-bg: #0d6efd;
-    }
-
-    .nav-pills .nav-link {
-        border-radius: var(--bs-nav-pills-border-radius);
-    }
-
-    .nav-pills .nav-link:disabled {
-        color: var(--bs-nav-link-disabled-color);
-        background-color: transparent;
-        border-color: transparent;
-    }
-
-    .nav-pills .nav-link.active,
-    .nav-pills .show > .nav-link {
-        color: var(--bs-nav-pills-link-active-color);
-        background-color: var(--bs-nav-pills-link-active-bg);
-    }
-
-    .nav-underline {
-        --bs-nav-underline-gap: 1rem;
-        --bs-nav-underline-border-width: 0.125rem;
-        --bs-nav-underline-link-active-color: var(--bs-emphasis-color);
-        gap: var(--bs-nav-underline-gap);
-    }
-
-    .nav-underline .nav-link {
-        padding-right: 0;
-        padding-left: 0;
-        border-bottom: var(--bs-nav-underline-border-width) solid transparent;
-    }
-
-    .nav-underline .nav-link:hover, .nav-underline .nav-link:focus {
-        border-bottom-color: currentcolor;
-    }
-
-    .nav-underline .nav-link.active,
-    .nav-underline .show > .nav-link {
-        font-weight: 700;
-        color: var(--bs-nav-underline-link-active-color);
-        border-bottom-color: currentcolor;
-    }
-
-    .nav-fill > .nav-link,
-    .nav-fill .nav-item {
-        flex: 1 1 auto;
-        text-align: center;
-    }
-
-    .nav-justified > .nav-link,
-    .nav-justified .nav-item {
-        flex-basis: 0;
-        flex-grow: 1;
-        text-align: center;
-    }
-
-    .nav-fill .nav-item .nav-link,
-    .nav-justified .nav-item .nav-link {
-        width: 100%;
-    }
-
-    .tab-content > .tab-pane {
-        display: none;
-    }
-
-    .tab-content > .active {
-        display: block;
-    }
-
-    .navbar {
-        --bs-navbar-padding-x: 0;
-        --bs-navbar-padding-y: 0.5rem;
-        --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);
-        --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);
-        --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);
-        --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);
-        --bs-navbar-brand-padding-y: 0.3125rem;
-        --bs-navbar-brand-margin-end: 1rem;
-        --bs-navbar-brand-font-size: 1.25rem;
-        --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);
-        --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);
-        --bs-navbar-nav-link-padding-x: 0.5rem;
-        --bs-navbar-toggler-padding-y: 0.25rem;
-        --bs-navbar-toggler-padding-x: 0.75rem;
-        --bs-navbar-toggler-font-size: 1.25rem;
-        --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%2833, 37, 41, 0.75%29%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%3e%3c/svg%3e");
-        --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
-        --bs-navbar-toggler-border-radius: var(--bs-border-radius);
-        --bs-navbar-toggler-focus-width: 0.25rem;
-        --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
-        position: relative;
-        display: flex;
-        flex-wrap: wrap;
-        align-items: center;
-        justify-content: space-between;
-        padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);
-    }
-
-    .navbar > .container,
-    .navbar > .container-fluid,
-    .navbar > .container-sm,
-    .navbar > .container-md,
-    .navbar > .container-lg,
-    .navbar > .container-xl,
-    .navbar > .container-xxl {
-        display: flex;
-        flex-wrap: inherit;
-        align-items: center;
-        justify-content: space-between;
-    }
-
-    .navbar-brand {
-        padding-top: var(--bs-navbar-brand-padding-y);
-        padding-bottom: var(--bs-navbar-brand-padding-y);
-        margin-right: var(--bs-navbar-brand-margin-end);
-        font-size: var(--bs-navbar-brand-font-size);
-        color: var(--bs-navbar-brand-color);
-        text-decoration: none;
-        white-space: nowrap;
-    }
-
-    .navbar-brand:hover, .navbar-brand:focus {
-        color: var(--bs-navbar-brand-hover-color);
-    }
-
-    .navbar-nav {
-        --bs-nav-link-padding-x: 0;
-        --bs-nav-link-padding-y: 0.5rem;
-        --bs-nav-link-font-weight: ;
-        --bs-nav-link-color: var(--bs-navbar-color);
-        --bs-nav-link-hover-color: var(--bs-navbar-hover-color);
-        --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);
-        display: flex;
-        flex-direction: column;
-        padding-left: 0;
-        margin-bottom: 0;
-        list-style: none;
-    }
-
-    .navbar-nav .nav-link.active, .navbar-nav .nav-link.show {
-        color: var(--bs-navbar-active-color);
-    }
-
-    .navbar-nav .dropdown-menu {
-        position: static;
-    }
-
-    .navbar-text {
-        padding-top: 0.5rem;
-        padding-bottom: 0.5rem;
-        color: var(--bs-navbar-color);
-    }
-
-    .navbar-text a,
-    .navbar-text a:hover,
-    .navbar-text a:focus {
-        color: var(--bs-navbar-active-color);
-    }
-
-    .navbar-collapse {
-        flex-basis: 100%;
-        flex-grow: 1;
-        align-items: center;
-    }
-
-    .navbar-toggler {
-        padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);
-        font-size: var(--bs-navbar-toggler-font-size);
-        line-height: 1;
-        color: var(--bs-navbar-color);
-        background-color: transparent;
-        border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);
-        border-radius: var(--bs-navbar-toggler-border-radius);
-        transition: var(--bs-navbar-toggler-transition);
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .navbar-toggler {
-            transition: none;
-        }
-    }
-
-    .navbar-toggler:hover {
-        text-decoration: none;
-    }
-
-    .navbar-toggler:focus {
-        text-decoration: none;
-        outline: 0;
-        box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);
-    }
-
-    .navbar-toggler-icon {
-        display: inline-block;
-        width: 1.5em;
-        height: 1.5em;
-        vertical-align: middle;
-        background-image: var(--bs-navbar-toggler-icon-bg);
-        background-repeat: no-repeat;
-        background-position: center;
-        background-size: 100%;
-    }
-
-    .navbar-nav-scroll {
-        max-height: var(--bs-scroll-height, 75vh);
-        overflow-y: auto;
-    }
-
-    @media (min-width: 576px) {
-        .navbar-expand-sm {
-            flex-wrap: nowrap;
-            justify-content: flex-start;
-        }
-
-        .navbar-expand-sm .navbar-nav {
-            flex-direction: row;
-        }
-
-        .navbar-expand-sm .navbar-nav .dropdown-menu {
-            position: absolute;
-        }
-
-        .navbar-expand-sm .navbar-nav .nav-link {
-            padding-right: var(--bs-navbar-nav-link-padding-x);
-            padding-left: var(--bs-navbar-nav-link-padding-x);
-        }
-
-        .navbar-expand-sm .navbar-nav-scroll {
-            overflow: visible;
-        }
-
-        .navbar-expand-sm .navbar-collapse {
-            display: flex !important;
-            flex-basis: auto;
-        }
-
-        .navbar-expand-sm .navbar-toggler {
-            display: none;
-        }
-
-        .navbar-expand-sm .offcanvas {
-            position: static;
-            z-index: auto;
-            flex-grow: 1;
-            width: auto !important;
-            height: auto !important;
-            visibility: visible !important;
-            background-color: transparent !important;
-            border: 0 !important;
-            transform: none !important;
-            transition: none;
-        }
-
-        .navbar-expand-sm .offcanvas .offcanvas-header {
-            display: none;
-        }
-
-        .navbar-expand-sm .offcanvas .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .navbar-expand-md {
-            flex-wrap: nowrap;
-            justify-content: flex-start;
-        }
-
-        .navbar-expand-md .navbar-nav {
-            flex-direction: row;
-        }
-
-        .navbar-expand-md .navbar-nav .dropdown-menu {
-            position: absolute;
-        }
-
-        .navbar-expand-md .navbar-nav .nav-link {
-            padding-right: var(--bs-navbar-nav-link-padding-x);
-            padding-left: var(--bs-navbar-nav-link-padding-x);
-        }
-
-        .navbar-expand-md .navbar-nav-scroll {
-            overflow: visible;
-        }
-
-        .navbar-expand-md .navbar-collapse {
-            display: flex !important;
-            flex-basis: auto;
-        }
-
-        .navbar-expand-md .navbar-toggler {
-            display: none;
-        }
-
-        .navbar-expand-md .offcanvas {
-            position: static;
-            z-index: auto;
-            flex-grow: 1;
-            width: auto !important;
-            height: auto !important;
-            visibility: visible !important;
-            background-color: transparent !important;
-            border: 0 !important;
-            transform: none !important;
-            transition: none;
-        }
-
-        .navbar-expand-md .offcanvas .offcanvas-header {
-            display: none;
-        }
-
-        .navbar-expand-md .offcanvas .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .navbar-expand-lg {
-            flex-wrap: nowrap;
-            justify-content: flex-start;
-        }
-
-        .navbar-expand-lg .navbar-nav {
-            flex-direction: row;
-        }
-
-        .navbar-expand-lg .navbar-nav .dropdown-menu {
-            position: absolute;
-        }
-
-        .navbar-expand-lg .navbar-nav .nav-link {
-            padding-right: var(--bs-navbar-nav-link-padding-x);
-            padding-left: var(--bs-navbar-nav-link-padding-x);
-        }
-
-        .navbar-expand-lg .navbar-nav-scroll {
-            overflow: visible;
-        }
-
-        .navbar-expand-lg .navbar-collapse {
-            display: flex !important;
-            flex-basis: auto;
-        }
-
-        .navbar-expand-lg .navbar-toggler {
-            display: none;
-        }
-
-        .navbar-expand-lg .offcanvas {
-            position: static;
-            z-index: auto;
-            flex-grow: 1;
-            width: auto !important;
-            height: auto !important;
-            visibility: visible !important;
-            background-color: transparent !important;
-            border: 0 !important;
-            transform: none !important;
-            transition: none;
-        }
-
-        .navbar-expand-lg .offcanvas .offcanvas-header {
-            display: none;
-        }
-
-        .navbar-expand-lg .offcanvas .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .navbar-expand-xl {
-            flex-wrap: nowrap;
-            justify-content: flex-start;
-        }
-
-        .navbar-expand-xl .navbar-nav {
-            flex-direction: row;
-        }
-
-        .navbar-expand-xl .navbar-nav .dropdown-menu {
-            position: absolute;
-        }
-
-        .navbar-expand-xl .navbar-nav .nav-link {
-            padding-right: var(--bs-navbar-nav-link-padding-x);
-            padding-left: var(--bs-navbar-nav-link-padding-x);
-        }
-
-        .navbar-expand-xl .navbar-nav-scroll {
-            overflow: visible;
-        }
-
-        .navbar-expand-xl .navbar-collapse {
-            display: flex !important;
-            flex-basis: auto;
-        }
-
-        .navbar-expand-xl .navbar-toggler {
-            display: none;
-        }
-
-        .navbar-expand-xl .offcanvas {
-            position: static;
-            z-index: auto;
-            flex-grow: 1;
-            width: auto !important;
-            height: auto !important;
-            visibility: visible !important;
-            background-color: transparent !important;
-            border: 0 !important;
-            transform: none !important;
-            transition: none;
-        }
-
-        .navbar-expand-xl .offcanvas .offcanvas-header {
-            display: none;
-        }
-
-        .navbar-expand-xl .offcanvas .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .navbar-expand-xxl {
-            flex-wrap: nowrap;
-            justify-content: flex-start;
-        }
-
-        .navbar-expand-xxl .navbar-nav {
-            flex-direction: row;
-        }
-
-        .navbar-expand-xxl .navbar-nav .dropdown-menu {
-            position: absolute;
-        }
-
-        .navbar-expand-xxl .navbar-nav .nav-link {
-            padding-right: var(--bs-navbar-nav-link-padding-x);
-            padding-left: var(--bs-navbar-nav-link-padding-x);
-        }
-
-        .navbar-expand-xxl .navbar-nav-scroll {
-            overflow: visible;
-        }
-
-        .navbar-expand-xxl .navbar-collapse {
-            display: flex !important;
-            flex-basis: auto;
-        }
-
-        .navbar-expand-xxl .navbar-toggler {
-            display: none;
-        }
-
-        .navbar-expand-xxl .offcanvas {
-            position: static;
-            z-index: auto;
-            flex-grow: 1;
-            width: auto !important;
-            height: auto !important;
-            visibility: visible !important;
-            background-color: transparent !important;
-            border: 0 !important;
-            transform: none !important;
-            transition: none;
-        }
-
-        .navbar-expand-xxl .offcanvas .offcanvas-header {
-            display: none;
-        }
-
-        .navbar-expand-xxl .offcanvas .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-        }
-    }
-
-    .navbar-expand {
-        flex-wrap: nowrap;
-        justify-content: flex-start;
-    }
-
-    .navbar-expand .navbar-nav {
-        flex-direction: row;
-    }
-
-    .navbar-expand .navbar-nav .dropdown-menu {
-        position: absolute;
-    }
-
-    .navbar-expand .navbar-nav .nav-link {
-        padding-right: var(--bs-navbar-nav-link-padding-x);
-        padding-left: var(--bs-navbar-nav-link-padding-x);
-    }
-
-    .navbar-expand .navbar-nav-scroll {
-        overflow: visible;
-    }
-
-    .navbar-expand .navbar-collapse {
-        display: flex !important;
-        flex-basis: auto;
-    }
-
-    .navbar-expand .navbar-toggler {
-        display: none;
-    }
-
-    .navbar-expand .offcanvas {
-        position: static;
-        z-index: auto;
-        flex-grow: 1;
-        width: auto !important;
-        height: auto !important;
-        visibility: visible !important;
-        background-color: transparent !important;
-        border: 0 !important;
-        transform: none !important;
-        transition: none;
-    }
-
-    .navbar-expand .offcanvas .offcanvas-header {
-        display: none;
-    }
-
-    .navbar-expand .offcanvas .offcanvas-body {
-        display: flex;
-        flex-grow: 0;
-        padding: 0;
-        overflow-y: visible;
-    }
-
-    .navbar-dark,
-    .navbar[data-bs-theme=dark] {
-        --bs-navbar-color: rgba(255, 255, 255, 0.55);
-        --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);
-        --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);
-        --bs-navbar-active-color: #fff;
-        --bs-navbar-brand-color: #fff;
-        --bs-navbar-brand-hover-color: #fff;
-        --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);
-        --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%28255, 255, 255, 0.55%29%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%3e%3c/svg%3e");
-    }
-
-    [data-bs-theme=dark] .navbar-toggler-icon {
-        --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%28255, 255, 255, 0.55%29%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%3e%3c/svg%3e");
-    }
-
-    .card {
-        --bs-card-spacer-y: 1rem;
-        --bs-card-spacer-x: 1rem;
-        --bs-card-title-spacer-y: 0.5rem;
-        --bs-card-title-color: ;
-        --bs-card-subtitle-color: ;
-        --bs-card-border-width: var(--bs-border-width);
-        --bs-card-border-color: var(--bs-border-color-translucent);
-        --bs-card-border-radius: var(--bs-border-radius);
-        --bs-card-box-shadow: ;
-        --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
-        --bs-card-cap-padding-y: 0.5rem;
-        --bs-card-cap-padding-x: 1rem;
-        --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
-        --bs-card-cap-color: ;
-        --bs-card-height: ;
-        --bs-card-color: ;
-        --bs-card-bg: var(--bs-body-bg);
-        --bs-card-img-overlay-padding: 1rem;
-        --bs-card-group-margin: 0.75rem;
-        position: relative;
-        display: flex;
-        flex-direction: column;
-        min-width: 0;
-        height: var(--bs-card-height);
-        color: var(--bs-body-color);
-        word-wrap: break-word;
-        background-color: var(--bs-card-bg);
-        background-clip: border-box;
-        border: var(--bs-card-border-width) solid var(--bs-card-border-color);
-        border-radius: var(--bs-card-border-radius);
-    }
-
-    .card > hr {
-        margin-right: 0;
-        margin-left: 0;
-    }
-
-    .card > .list-group {
-        border-top: inherit;
-        border-bottom: inherit;
-    }
-
-    .card > .list-group:first-child {
-        border-top-width: 0;
-        border-top-left-radius: var(--bs-card-inner-border-radius);
-        border-top-right-radius: var(--bs-card-inner-border-radius);
-    }
-
-    .card > .list-group:last-child {
-        border-bottom-width: 0;
-        border-bottom-right-radius: var(--bs-card-inner-border-radius);
-        border-bottom-left-radius: var(--bs-card-inner-border-radius);
-    }
-
-    .card > .card-header + .list-group,
-    .card > .list-group + .card-footer {
-        border-top: 0;
-    }
-
-    .card-body {
-        flex: 1 1 auto;
-        padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
-        color: var(--bs-card-color);
-    }
-
-    .card-title {
-        margin-bottom: var(--bs-card-title-spacer-y);
-        color: var(--bs-card-title-color);
-    }
-
-    .card-subtitle {
-        margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));
-        margin-bottom: 0;
-        color: var(--bs-card-subtitle-color);
-    }
-
-    .card-text:last-child {
-        margin-bottom: 0;
-    }
-
-    .card-link + .card-link {
-        margin-left: var(--bs-card-spacer-x);
-    }
-
-    .card-header {
-        padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
-        margin-bottom: 0;
-        color: var(--bs-card-cap-color);
-        background-color: var(--bs-card-cap-bg);
-        border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
-    }
-
-    .card-header:first-child {
-        border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;
-    }
-
-    .card-footer {
-        padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
-        color: var(--bs-card-cap-color);
-        background-color: var(--bs-card-cap-bg);
-        border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);
-    }
-
-    .card-footer:last-child {
-        border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);
-    }
-
-    .card-header-tabs {
-        margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
-        margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));
-        margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
-        border-bottom: 0;
-    }
-
-    .card-header-tabs .nav-link.active {
-        background-color: var(--bs-card-bg);
-        border-bottom-color: var(--bs-card-bg);
-    }
-
-    .card-header-pills {
-        margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
-        margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
-    }
-
-    .card-img-overlay {
-        position: absolute;
-        top: 0;
-        right: 0;
-        bottom: 0;
-        left: 0;
-        padding: var(--bs-card-img-overlay-padding);
-        border-radius: var(--bs-card-inner-border-radius);
-    }
-
-    .card-img,
-    .card-img-top,
-    .card-img-bottom {
-        width: 100%;
-    }
-
-    .card-img,
-    .card-img-top {
-        border-top-left-radius: var(--bs-card-inner-border-radius);
-        border-top-right-radius: var(--bs-card-inner-border-radius);
-    }
-
-    .card-img,
-    .card-img-bottom {
-        border-bottom-right-radius: var(--bs-card-inner-border-radius);
-        border-bottom-left-radius: var(--bs-card-inner-border-radius);
-    }
-
-    .card-group > .card {
-        margin-bottom: var(--bs-card-group-margin);
-    }
-
-    @media (min-width: 576px) {
-        .card-group {
-            display: flex;
-            flex-flow: row wrap;
-        }
-
-        .card-group > .card {
-            flex: 1 0;
-            margin-bottom: 0;
-        }
-
-        .card-group > .card + .card {
-            margin-left: 0;
-            border-left: 0;
-        }
-
-        .card-group > .card:not(:last-child) {
-            border-top-right-radius: 0;
-            border-bottom-right-radius: 0;
-        }
-
-        .card-group > .card:not(:last-child) .card-img-top,
-        .card-group > .card:not(:last-child) .card-header {
-            border-top-right-radius: 0;
-        }
-
-        .card-group > .card:not(:last-child) .card-img-bottom,
-        .card-group > .card:not(:last-child) .card-footer {
-            border-bottom-right-radius: 0;
-        }
-
-        .card-group > .card:not(:first-child) {
-            border-top-left-radius: 0;
-            border-bottom-left-radius: 0;
-        }
-
-        .card-group > .card:not(:first-child) .card-img-top,
-        .card-group > .card:not(:first-child) .card-header {
-            border-top-left-radius: 0;
-        }
-
-        .card-group > .card:not(:first-child) .card-img-bottom,
-        .card-group > .card:not(:first-child) .card-footer {
-            border-bottom-left-radius: 0;
-        }
-    }
-
-    .accordion {
-        --bs-accordion-color: var(--bs-body-color);
-        --bs-accordion-bg: var(--bs-body-bg);
-        --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
-        --bs-accordion-border-color: var(--bs-border-color);
-        --bs-accordion-border-width: var(--bs-border-width);
-        --bs-accordion-border-radius: var(--bs-border-radius);
-        --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
-        --bs-accordion-btn-padding-x: 1.25rem;
-        --bs-accordion-btn-padding-y: 1rem;
-        --bs-accordion-btn-color: var(--bs-body-color);
-        --bs-accordion-btn-bg: var(--bs-accordion-bg);
-        --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23212529%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
-        --bs-accordion-btn-icon-width: 1.25rem;
-        --bs-accordion-btn-icon-transform: rotate(-180deg);
-        --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
-        --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23052c65%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
-        --bs-accordion-btn-focus-border-color: #86b7fe;
-        --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-        --bs-accordion-body-padding-x: 1.25rem;
-        --bs-accordion-body-padding-y: 1rem;
-        --bs-accordion-active-color: var(--bs-primary-text-emphasis);
-        --bs-accordion-active-bg: var(--bs-primary-bg-subtle);
-    }
-
-    .accordion-button {
-        position: relative;
-        display: flex;
-        align-items: center;
-        width: 100%;
-        padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
-        font-size: 1rem;
-        color: var(--bs-accordion-btn-color);
-        text-align: left;
-        background-color: var(--bs-accordion-btn-bg);
-        border: 0;
-        border-radius: 0;
-        overflow-anchor: none;
-        transition: var(--bs-accordion-transition);
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .accordion-button {
-            transition: none;
-        }
-    }
-
-    .accordion-button:not(.collapsed) {
-        color: var(--bs-accordion-active-color);
-        background-color: var(--bs-accordion-active-bg);
-        box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
-    }
-
-    .accordion-button:not(.collapsed)::after {
-        background-image: var(--bs-accordion-btn-active-icon);
-        transform: var(--bs-accordion-btn-icon-transform);
-    }
-
-    .accordion-button::after {
-        flex-shrink: 0;
-        width: var(--bs-accordion-btn-icon-width);
-        height: var(--bs-accordion-btn-icon-width);
-        margin-left: auto;
-        content: "";
-        background-image: var(--bs-accordion-btn-icon);
-        background-repeat: no-repeat;
-        background-size: var(--bs-accordion-btn-icon-width);
-        transition: var(--bs-accordion-btn-icon-transition);
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .accordion-button::after {
-            transition: none;
-        }
-    }
-
-    .accordion-button:hover {
-        z-index: 2;
-    }
-
-    .accordion-button:focus {
-        z-index: 3;
-        border-color: var(--bs-accordion-btn-focus-border-color);
-        outline: 0;
-        box-shadow: var(--bs-accordion-btn-focus-box-shadow);
-    }
-
-    .accordion-header {
-        margin-bottom: 0;
-    }
-
-    .accordion-item {
-        color: var(--bs-accordion-color);
-        background-color: var(--bs-accordion-bg);
-        border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
-    }
-
-    .accordion-item:first-of-type {
-        border-top-left-radius: var(--bs-accordion-border-radius);
-        border-top-right-radius: var(--bs-accordion-border-radius);
-    }
-
-    .accordion-item:first-of-type .accordion-button {
-        border-top-left-radius: var(--bs-accordion-inner-border-radius);
-        border-top-right-radius: var(--bs-accordion-inner-border-radius);
-    }
-
-    .accordion-item:not(:first-of-type) {
-        border-top: 0;
-    }
-
-    .accordion-item:last-of-type {
-        border-bottom-right-radius: var(--bs-accordion-border-radius);
-        border-bottom-left-radius: var(--bs-accordion-border-radius);
-    }
-
-    .accordion-item:last-of-type .accordion-button.collapsed {
-        border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
-        border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
-    }
-
-    .accordion-item:last-of-type .accordion-collapse {
-        border-bottom-right-radius: var(--bs-accordion-border-radius);
-        border-bottom-left-radius: var(--bs-accordion-border-radius);
-    }
-
-    .accordion-body {
-        padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);
-    }
-
-    .accordion-flush .accordion-collapse {
-        border-width: 0;
-    }
-
-    .accordion-flush .accordion-item {
-        border-right: 0;
-        border-left: 0;
-        border-radius: 0;
-    }
-
-    .accordion-flush .accordion-item:first-child {
-        border-top: 0;
-    }
-
-    .accordion-flush .accordion-item:last-child {
-        border-bottom: 0;
-    }
-
-    .accordion-flush .accordion-item .accordion-button, .accordion-flush .accordion-item .accordion-button.collapsed {
-        border-radius: 0;
-    }
-
-    [data-bs-theme=dark] .accordion-button::after {
-        --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%236ea8fe%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
-        --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%236ea8fe%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
-    }
-
-    .breadcrumb {
-        --bs-breadcrumb-padding-x: 0;
-        --bs-breadcrumb-padding-y: 0;
-        --bs-breadcrumb-margin-bottom: 1rem;
-        --bs-breadcrumb-bg: ;
-        --bs-breadcrumb-border-radius: ;
-        --bs-breadcrumb-divider-color: var(--bs-secondary-color);
-        --bs-breadcrumb-item-padding-x: 0.5rem;
-        --bs-breadcrumb-item-active-color: var(--bs-secondary-color);
-        display: flex;
-        flex-wrap: wrap;
-        padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);
-        margin-bottom: var(--bs-breadcrumb-margin-bottom);
-        font-size: var(--bs-breadcrumb-font-size);
-        list-style: none;
-        background-color: var(--bs-breadcrumb-bg);
-        border-radius: var(--bs-breadcrumb-border-radius);
-    }
-
-    .breadcrumb-item + .breadcrumb-item {
-        padding-left: var(--bs-breadcrumb-item-padding-x);
-    }
-
-    .breadcrumb-item + .breadcrumb-item::before {
-        float: left;
-        padding-right: var(--bs-breadcrumb-item-padding-x);
-        color: var(--bs-breadcrumb-divider-color);
-        content: var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */;
-    }
-
-    .breadcrumb-item.active {
-        color: var(--bs-breadcrumb-item-active-color);
-    }
-
-    .pagination {
-        --bs-pagination-padding-x: 0.75rem;
-        --bs-pagination-padding-y: 0.375rem;
-        --bs-pagination-font-size: 1rem;
-        --bs-pagination-color: var(--bs-link-color);
-        --bs-pagination-bg: var(--bs-body-bg);
-        --bs-pagination-border-width: var(--bs-border-width);
-        --bs-pagination-border-color: var(--bs-border-color);
-        --bs-pagination-border-radius: var(--bs-border-radius);
-        --bs-pagination-hover-color: var(--bs-link-hover-color);
-        --bs-pagination-hover-bg: var(--bs-tertiary-bg);
-        --bs-pagination-hover-border-color: var(--bs-border-color);
-        --bs-pagination-focus-color: var(--bs-link-hover-color);
-        --bs-pagination-focus-bg: var(--bs-secondary-bg);
-        --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-        --bs-pagination-active-color: #fff;
-        --bs-pagination-active-bg: #0d6efd;
-        --bs-pagination-active-border-color: #0d6efd;
-        --bs-pagination-disabled-color: var(--bs-secondary-color);
-        --bs-pagination-disabled-bg: var(--bs-secondary-bg);
-        --bs-pagination-disabled-border-color: var(--bs-border-color);
-        display: flex;
-        padding-left: 0;
-        list-style: none;
-    }
-
-    .page-link {
-        position: relative;
-        display: block;
-        padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);
-        font-size: var(--bs-pagination-font-size);
-        color: var(--bs-pagination-color);
-        text-decoration: none;
-        background-color: var(--bs-pagination-bg);
-        border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
-        transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .page-link {
-            transition: none;
-        }
-    }
-
-    .page-link:hover {
-        z-index: 2;
-        color: var(--bs-pagination-hover-color);
-        background-color: var(--bs-pagination-hover-bg);
-        border-color: var(--bs-pagination-hover-border-color);
-    }
-
-    .page-link:focus {
-        z-index: 3;
-        color: var(--bs-pagination-focus-color);
-        background-color: var(--bs-pagination-focus-bg);
-        outline: 0;
-        box-shadow: var(--bs-pagination-focus-box-shadow);
-    }
-
-    .page-link.active, .active > .page-link {
-        z-index: 3;
-        color: var(--bs-pagination-active-color);
-        background-color: var(--bs-pagination-active-bg);
-        border-color: var(--bs-pagination-active-border-color);
-    }
-
-    .page-link.disabled, .disabled > .page-link {
-        color: var(--bs-pagination-disabled-color);
-        pointer-events: none;
-        background-color: var(--bs-pagination-disabled-bg);
-        border-color: var(--bs-pagination-disabled-border-color);
-    }
-
-    .page-item:not(:first-child) .page-link {
-        margin-left: calc(var(--bs-border-width) * -1);
-    }
-
-    .page-item:first-child .page-link {
-        border-top-left-radius: var(--bs-pagination-border-radius);
-        border-bottom-left-radius: var(--bs-pagination-border-radius);
-    }
-
-    .page-item:last-child .page-link {
-        border-top-right-radius: var(--bs-pagination-border-radius);
-        border-bottom-right-radius: var(--bs-pagination-border-radius);
-    }
-
-    .pagination-lg {
-        --bs-pagination-padding-x: 1.5rem;
-        --bs-pagination-padding-y: 0.75rem;
-        --bs-pagination-font-size: 1.25rem;
-        --bs-pagination-border-radius: var(--bs-border-radius-lg);
-    }
-
-    .pagination-sm {
-        --bs-pagination-padding-x: 0.5rem;
-        --bs-pagination-padding-y: 0.25rem;
-        --bs-pagination-font-size: 0.875rem;
-        --bs-pagination-border-radius: var(--bs-border-radius-sm);
-    }
-
-    .badge {
-        --bs-badge-padding-x: 0.65em;
-        --bs-badge-padding-y: 0.35em;
-        --bs-badge-font-size: 0.75em;
-        --bs-badge-font-weight: 700;
-        --bs-badge-color: #fff;
-        --bs-badge-border-radius: var(--bs-border-radius);
-        display: inline-block;
-        padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
-        font-size: var(--bs-badge-font-size);
-        font-weight: var(--bs-badge-font-weight);
-        line-height: 1;
-        color: var(--bs-badge-color);
-        text-align: center;
-        white-space: nowrap;
-        vertical-align: baseline;
-        border-radius: var(--bs-badge-border-radius);
-    }
-
-    .badge:empty {
-        display: none;
-    }
-
-    .btn .badge {
-        position: relative;
-        top: -1px;
-    }
-
-    .alert {
-        --bs-alert-bg: transparent;
-        --bs-alert-padding-x: 1rem;
-        --bs-alert-padding-y: 1rem;
-        --bs-alert-margin-bottom: 1rem;
-        --bs-alert-color: inherit;
-        --bs-alert-border-color: transparent;
-        --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
-        --bs-alert-border-radius: var(--bs-border-radius);
-        --bs-alert-link-color: inherit;
-        position: relative;
-        padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
-        margin-bottom: var(--bs-alert-margin-bottom);
-        color: var(--bs-alert-color);
-        background-color: var(--bs-alert-bg);
-        border: var(--bs-alert-border);
-        border-radius: var(--bs-alert-border-radius);
-    }
-
-    .alert-heading {
-        color: inherit;
-    }
-
-    .alert-link {
-        font-weight: 700;
-        color: var(--bs-alert-link-color);
-    }
-
-    .alert-dismissible {
-        padding-right: 3rem;
-    }
-
-    .alert-dismissible .btn-close {
-        position: absolute;
-        top: 0;
-        right: 0;
-        z-index: 2;
-        padding: 1.25rem 1rem;
-    }
-
-    .alert-primary {
-        --bs-alert-color: var(--bs-primary-text-emphasis);
-        --bs-alert-bg: var(--bs-primary-bg-subtle);
-        --bs-alert-border-color: var(--bs-primary-border-subtle);
-        --bs-alert-link-color: var(--bs-primary-text-emphasis);
-    }
-
-    .alert-secondary {
-        --bs-alert-color: var(--bs-secondary-text-emphasis);
-        --bs-alert-bg: var(--bs-secondary-bg-subtle);
-        --bs-alert-border-color: var(--bs-secondary-border-subtle);
-        --bs-alert-link-color: var(--bs-secondary-text-emphasis);
-    }
-
-    .alert-success {
-        --bs-alert-color: var(--bs-success-text-emphasis);
-        --bs-alert-bg: var(--bs-success-bg-subtle);
-        --bs-alert-border-color: var(--bs-success-border-subtle);
-        --bs-alert-link-color: var(--bs-success-text-emphasis);
-    }
-
-    .alert-info {
-        --bs-alert-color: var(--bs-info-text-emphasis);
-        --bs-alert-bg: var(--bs-info-bg-subtle);
-        --bs-alert-border-color: var(--bs-info-border-subtle);
-        --bs-alert-link-color: var(--bs-info-text-emphasis);
-    }
-
-    .alert-warning {
-        --bs-alert-color: var(--bs-warning-text-emphasis);
-        --bs-alert-bg: var(--bs-warning-bg-subtle);
-        --bs-alert-border-color: var(--bs-warning-border-subtle);
-        --bs-alert-link-color: var(--bs-warning-text-emphasis);
-    }
-
-    .alert-danger {
-        --bs-alert-color: var(--bs-danger-text-emphasis);
-        --bs-alert-bg: var(--bs-danger-bg-subtle);
-        --bs-alert-border-color: var(--bs-danger-border-subtle);
-        --bs-alert-link-color: var(--bs-danger-text-emphasis);
-    }
-
-    .alert-light {
-        --bs-alert-color: var(--bs-light-text-emphasis);
-        --bs-alert-bg: var(--bs-light-bg-subtle);
-        --bs-alert-border-color: var(--bs-light-border-subtle);
-        --bs-alert-link-color: var(--bs-light-text-emphasis);
-    }
-
-    .alert-dark {
-        --bs-alert-color: var(--bs-dark-text-emphasis);
-        --bs-alert-bg: var(--bs-dark-bg-subtle);
-        --bs-alert-border-color: var(--bs-dark-border-subtle);
-        --bs-alert-link-color: var(--bs-dark-text-emphasis);
-    }
-
-    @keyframes progress-bar-stripes {
-        0% {
-            background-position-x: 1rem;
-        }
-    }
-
-    .progress,
-    .progress-stacked {
-        --bs-progress-height: 1rem;
-        --bs-progress-font-size: 0.75rem;
-        --bs-progress-bg: var(--bs-secondary-bg);
-        --bs-progress-border-radius: var(--bs-border-radius);
-        --bs-progress-box-shadow: var(--bs-box-shadow-inset);
-        --bs-progress-bar-color: #fff;
-        --bs-progress-bar-bg: #0d6efd;
-        --bs-progress-bar-transition: width 0.6s ease;
-        display: flex;
-        height: var(--bs-progress-height);
-        overflow: hidden;
-        font-size: var(--bs-progress-font-size);
-        background-color: var(--bs-progress-bg);
-        border-radius: var(--bs-progress-border-radius);
-    }
-
-    .progress-bar {
-        display: flex;
-        flex-direction: column;
-        justify-content: center;
-        overflow: hidden;
-        color: var(--bs-progress-bar-color);
-        text-align: center;
-        white-space: nowrap;
-        background-color: var(--bs-progress-bar-bg);
-        transition: var(--bs-progress-bar-transition);
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .progress-bar {
-            transition: none;
-        }
-    }
-
-    .progress-bar-striped {
-        background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-        background-size: var(--bs-progress-height) var(--bs-progress-height);
-    }
-
-    .progress-stacked > .progress {
-        overflow: visible;
-    }
-
-    .progress-stacked > .progress > .progress-bar {
-        width: 100%;
-    }
-
-    .progress-bar-animated {
-        animation: 1s linear infinite progress-bar-stripes;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .progress-bar-animated {
-            animation: none;
-        }
-    }
-
-    .list-group {
-        --bs-list-group-color: var(--bs-body-color);
-        --bs-list-group-bg: var(--bs-body-bg);
-        --bs-list-group-border-color: var(--bs-border-color);
-        --bs-list-group-border-width: var(--bs-border-width);
-        --bs-list-group-border-radius: var(--bs-border-radius);
-        --bs-list-group-item-padding-x: 1rem;
-        --bs-list-group-item-padding-y: 0.5rem;
-        --bs-list-group-action-color: var(--bs-secondary-color);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);
-        --bs-list-group-action-active-color: var(--bs-body-color);
-        --bs-list-group-action-active-bg: var(--bs-secondary-bg);
-        --bs-list-group-disabled-color: var(--bs-secondary-color);
-        --bs-list-group-disabled-bg: var(--bs-body-bg);
-        --bs-list-group-active-color: #fff;
-        --bs-list-group-active-bg: #0d6efd;
-        --bs-list-group-active-border-color: #0d6efd;
-        display: flex;
-        flex-direction: column;
-        padding-left: 0;
-        margin-bottom: 0;
-        border-radius: var(--bs-list-group-border-radius);
-    }
-
-    .list-group-numbered {
-        list-style-type: none;
-        counter-reset: section;
-    }
-
-    .list-group-numbered > .list-group-item::before {
-        content: counters(section, ".") ". ";
-        counter-increment: section;
-    }
-
-    .list-group-item-action {
-        width: 100%;
-        color: var(--bs-list-group-action-color);
-        text-align: inherit;
-    }
-
-    .list-group-item-action:hover, .list-group-item-action:focus {
-        z-index: 1;
-        color: var(--bs-list-group-action-hover-color);
-        text-decoration: none;
-        background-color: var(--bs-list-group-action-hover-bg);
-    }
-
-    .list-group-item-action:active {
-        color: var(--bs-list-group-action-active-color);
-        background-color: var(--bs-list-group-action-active-bg);
-    }
-
-    .list-group-item {
-        position: relative;
-        display: block;
-        padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);
-        color: var(--bs-list-group-color);
-        text-decoration: none;
-        background-color: var(--bs-list-group-bg);
-        border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);
-    }
-
-    .list-group-item:first-child {
-        border-top-left-radius: inherit;
-        border-top-right-radius: inherit;
-    }
-
-    .list-group-item:last-child {
-        border-bottom-right-radius: inherit;
-        border-bottom-left-radius: inherit;
-    }
-
-    .list-group-item.disabled, .list-group-item:disabled {
-        color: var(--bs-list-group-disabled-color);
-        pointer-events: none;
-        background-color: var(--bs-list-group-disabled-bg);
-    }
-
-    .list-group-item.active {
-        z-index: 2;
-        color: var(--bs-list-group-active-color);
-        background-color: var(--bs-list-group-active-bg);
-        border-color: var(--bs-list-group-active-border-color);
-    }
-
-    .list-group-item + .list-group-item {
-        border-top-width: 0;
-    }
-
-    .list-group-item + .list-group-item.active {
-        margin-top: calc(-1 * var(--bs-list-group-border-width));
-        border-top-width: var(--bs-list-group-border-width);
-    }
-
-    .list-group-horizontal {
-        flex-direction: row;
-    }
-
-    .list-group-horizontal > .list-group-item:first-child:not(:last-child) {
-        border-bottom-left-radius: var(--bs-list-group-border-radius);
-        border-top-right-radius: 0;
-    }
-
-    .list-group-horizontal > .list-group-item:last-child:not(:first-child) {
-        border-top-right-radius: var(--bs-list-group-border-radius);
-        border-bottom-left-radius: 0;
-    }
-
-    .list-group-horizontal > .list-group-item.active {
-        margin-top: 0;
-    }
-
-    .list-group-horizontal > .list-group-item + .list-group-item {
-        border-top-width: var(--bs-list-group-border-width);
-        border-left-width: 0;
-    }
-
-    .list-group-horizontal > .list-group-item + .list-group-item.active {
-        margin-left: calc(-1 * var(--bs-list-group-border-width));
-        border-left-width: var(--bs-list-group-border-width);
-    }
-
-    @media (min-width: 576px) {
-        .list-group-horizontal-sm {
-            flex-direction: row;
-        }
-
-        .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {
-            border-bottom-left-radius: var(--bs-list-group-border-radius);
-            border-top-right-radius: 0;
-        }
-
-        .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {
-            border-top-right-radius: var(--bs-list-group-border-radius);
-            border-bottom-left-radius: 0;
-        }
-
-        .list-group-horizontal-sm > .list-group-item.active {
-            margin-top: 0;
-        }
-
-        .list-group-horizontal-sm > .list-group-item + .list-group-item {
-            border-top-width: var(--bs-list-group-border-width);
-            border-left-width: 0;
-        }
-
-        .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
-            margin-left: calc(-1 * var(--bs-list-group-border-width));
-            border-left-width: var(--bs-list-group-border-width);
-        }
-    }
-
-    @media (min-width: 768px) {
-        .list-group-horizontal-md {
-            flex-direction: row;
-        }
-
-        .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {
-            border-bottom-left-radius: var(--bs-list-group-border-radius);
-            border-top-right-radius: 0;
-        }
-
-        .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {
-            border-top-right-radius: var(--bs-list-group-border-radius);
-            border-bottom-left-radius: 0;
-        }
-
-        .list-group-horizontal-md > .list-group-item.active {
-            margin-top: 0;
-        }
-
-        .list-group-horizontal-md > .list-group-item + .list-group-item {
-            border-top-width: var(--bs-list-group-border-width);
-            border-left-width: 0;
-        }
-
-        .list-group-horizontal-md > .list-group-item + .list-group-item.active {
-            margin-left: calc(-1 * var(--bs-list-group-border-width));
-            border-left-width: var(--bs-list-group-border-width);
-        }
-    }
-
-    @media (min-width: 992px) {
-        .list-group-horizontal-lg {
-            flex-direction: row;
-        }
-
-        .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {
-            border-bottom-left-radius: var(--bs-list-group-border-radius);
-            border-top-right-radius: 0;
-        }
-
-        .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {
-            border-top-right-radius: var(--bs-list-group-border-radius);
-            border-bottom-left-radius: 0;
-        }
-
-        .list-group-horizontal-lg > .list-group-item.active {
-            margin-top: 0;
-        }
-
-        .list-group-horizontal-lg > .list-group-item + .list-group-item {
-            border-top-width: var(--bs-list-group-border-width);
-            border-left-width: 0;
-        }
-
-        .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
-            margin-left: calc(-1 * var(--bs-list-group-border-width));
-            border-left-width: var(--bs-list-group-border-width);
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .list-group-horizontal-xl {
-            flex-direction: row;
-        }
-
-        .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {
-            border-bottom-left-radius: var(--bs-list-group-border-radius);
-            border-top-right-radius: 0;
-        }
-
-        .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {
-            border-top-right-radius: var(--bs-list-group-border-radius);
-            border-bottom-left-radius: 0;
-        }
-
-        .list-group-horizontal-xl > .list-group-item.active {
-            margin-top: 0;
-        }
-
-        .list-group-horizontal-xl > .list-group-item + .list-group-item {
-            border-top-width: var(--bs-list-group-border-width);
-            border-left-width: 0;
-        }
-
-        .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
-            margin-left: calc(-1 * var(--bs-list-group-border-width));
-            border-left-width: var(--bs-list-group-border-width);
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .list-group-horizontal-xxl {
-            flex-direction: row;
-        }
-
-        .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) {
-            border-bottom-left-radius: var(--bs-list-group-border-radius);
-            border-top-right-radius: 0;
-        }
-
-        .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) {
-            border-top-right-radius: var(--bs-list-group-border-radius);
-            border-bottom-left-radius: 0;
-        }
-
-        .list-group-horizontal-xxl > .list-group-item.active {
-            margin-top: 0;
-        }
-
-        .list-group-horizontal-xxl > .list-group-item + .list-group-item {
-            border-top-width: var(--bs-list-group-border-width);
-            border-left-width: 0;
-        }
-
-        .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {
-            margin-left: calc(-1 * var(--bs-list-group-border-width));
-            border-left-width: var(--bs-list-group-border-width);
-        }
-    }
-
-    .list-group-flush {
-        border-radius: 0;
-    }
-
-    .list-group-flush > .list-group-item {
-        border-width: 0 0 var(--bs-list-group-border-width);
-    }
-
-    .list-group-flush > .list-group-item:last-child {
-        border-bottom-width: 0;
-    }
-
-    .list-group-item-primary {
-        --bs-list-group-color: var(--bs-primary-text-emphasis);
-        --bs-list-group-bg: var(--bs-primary-bg-subtle);
-        --bs-list-group-border-color: var(--bs-primary-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);
-        --bs-list-group-active-color: var(--bs-primary-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-primary-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);
-    }
-
-    .list-group-item-secondary {
-        --bs-list-group-color: var(--bs-secondary-text-emphasis);
-        --bs-list-group-bg: var(--bs-secondary-bg-subtle);
-        --bs-list-group-border-color: var(--bs-secondary-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);
-        --bs-list-group-active-color: var(--bs-secondary-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);
-    }
-
-    .list-group-item-success {
-        --bs-list-group-color: var(--bs-success-text-emphasis);
-        --bs-list-group-bg: var(--bs-success-bg-subtle);
-        --bs-list-group-border-color: var(--bs-success-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-success-border-subtle);
-        --bs-list-group-active-color: var(--bs-success-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-success-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-success-text-emphasis);
-    }
-
-    .list-group-item-info {
-        --bs-list-group-color: var(--bs-info-text-emphasis);
-        --bs-list-group-bg: var(--bs-info-bg-subtle);
-        --bs-list-group-border-color: var(--bs-info-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-info-border-subtle);
-        --bs-list-group-active-color: var(--bs-info-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-info-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-info-text-emphasis);
-    }
-
-    .list-group-item-warning {
-        --bs-list-group-color: var(--bs-warning-text-emphasis);
-        --bs-list-group-bg: var(--bs-warning-bg-subtle);
-        --bs-list-group-border-color: var(--bs-warning-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);
-        --bs-list-group-active-color: var(--bs-warning-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-warning-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);
-    }
-
-    .list-group-item-danger {
-        --bs-list-group-color: var(--bs-danger-text-emphasis);
-        --bs-list-group-bg: var(--bs-danger-bg-subtle);
-        --bs-list-group-border-color: var(--bs-danger-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);
-        --bs-list-group-active-color: var(--bs-danger-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-danger-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);
-    }
-
-    .list-group-item-light {
-        --bs-list-group-color: var(--bs-light-text-emphasis);
-        --bs-list-group-bg: var(--bs-light-bg-subtle);
-        --bs-list-group-border-color: var(--bs-light-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-light-border-subtle);
-        --bs-list-group-active-color: var(--bs-light-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-light-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-light-text-emphasis);
-    }
-
-    .list-group-item-dark {
-        --bs-list-group-color: var(--bs-dark-text-emphasis);
-        --bs-list-group-bg: var(--bs-dark-bg-subtle);
-        --bs-list-group-border-color: var(--bs-dark-border-subtle);
-        --bs-list-group-action-hover-color: var(--bs-emphasis-color);
-        --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);
-        --bs-list-group-action-active-color: var(--bs-emphasis-color);
-        --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);
-        --bs-list-group-active-color: var(--bs-dark-bg-subtle);
-        --bs-list-group-active-bg: var(--bs-dark-text-emphasis);
-        --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);
-    }
-
-    .btn-close {
-        --bs-btn-close-color: #000;
-        --bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23000%27%3e%3cpath d=%27M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z%27/%3e%3c/svg%3e");
-        --bs-btn-close-opacity: 0.5;
-        --bs-btn-close-hover-opacity: 0.75;
-        --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
-        --bs-btn-close-focus-opacity: 1;
-        --bs-btn-close-disabled-opacity: 0.25;
-        --bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);
-        box-sizing: content-box;
-        width: 1em;
-        height: 1em;
-        padding: 0.25em 0.25em;
-        color: var(--bs-btn-close-color);
-        background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;
-        border: 0;
-        border-radius: 0.375rem;
-        opacity: var(--bs-btn-close-opacity);
-    }
-
-    .btn-close:hover {
-        color: var(--bs-btn-close-color);
-        text-decoration: none;
-        opacity: var(--bs-btn-close-hover-opacity);
-    }
-
-    .btn-close:focus {
-        outline: 0;
-        box-shadow: var(--bs-btn-close-focus-shadow);
-        opacity: var(--bs-btn-close-focus-opacity);
-    }
-
-    .btn-close:disabled, .btn-close.disabled {
-        pointer-events: none;
-        -webkit-user-select: none;
-        user-select: none;
-        opacity: var(--bs-btn-close-disabled-opacity);
-    }
-
-    .btn-close-white {
-        filter: var(--bs-btn-close-white-filter);
-    }
-
-    [data-bs-theme=dark] .btn-close {
-        filter: var(--bs-btn-close-white-filter);
-    }
-
-    .toast {
-        --bs-toast-zindex: 1090;
-        --bs-toast-padding-x: 0.75rem;
-        --bs-toast-padding-y: 0.5rem;
-        --bs-toast-spacing: 1.5rem;
-        --bs-toast-max-width: 350px;
-        --bs-toast-font-size: 0.875rem;
-        --bs-toast-color: ;
-        --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);
-        --bs-toast-border-width: var(--bs-border-width);
-        --bs-toast-border-color: var(--bs-border-color-translucent);
-        --bs-toast-border-radius: var(--bs-border-radius);
-        --bs-toast-box-shadow: var(--bs-box-shadow);
-        --bs-toast-header-color: var(--bs-secondary-color);
-        --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);
-        --bs-toast-header-border-color: var(--bs-border-color-translucent);
-        width: var(--bs-toast-max-width);
-        max-width: 100%;
-        font-size: var(--bs-toast-font-size);
-        color: var(--bs-toast-color);
-        pointer-events: auto;
-        background-color: var(--bs-toast-bg);
-        background-clip: padding-box;
-        border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);
-        box-shadow: var(--bs-toast-box-shadow);
-        border-radius: var(--bs-toast-border-radius);
-    }
-
-    .toast.showing {
-        opacity: 0;
-    }
-
-    .toast:not(.show) {
-        display: none;
-    }
-
-    .toast-container {
-        --bs-toast-zindex: 1090;
-        position: absolute;
-        z-index: var(--bs-toast-zindex);
-        width: max-content;
-        max-width: 100%;
-        pointer-events: none;
-    }
-
-    .toast-container > :not(:last-child) {
-        margin-bottom: var(--bs-toast-spacing);
-    }
-
-    .toast-header {
-        display: flex;
-        align-items: center;
-        padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);
-        color: var(--bs-toast-header-color);
-        background-color: var(--bs-toast-header-bg);
-        background-clip: padding-box;
-        border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);
-        border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
-        border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
-    }
-
-    .toast-header .btn-close {
-        margin-right: calc(-0.5 * var(--bs-toast-padding-x));
-        margin-left: var(--bs-toast-padding-x);
-    }
-
-    .toast-body {
-        padding: var(--bs-toast-padding-x);
-        word-wrap: break-word;
-    }
-
-    .modal {
-        --bs-modal-zindex: 1055;
-        --bs-modal-width: 500px;
-        --bs-modal-padding: 1rem;
-        --bs-modal-margin: 0.5rem;
-        --bs-modal-color: ;
-        --bs-modal-bg: var(--bs-body-bg);
-        --bs-modal-border-color: var(--bs-border-color-translucent);
-        --bs-modal-border-width: var(--bs-border-width);
-        --bs-modal-border-radius: var(--bs-border-radius-lg);
-        --bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
-        --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));
-        --bs-modal-header-padding-x: 1rem;
-        --bs-modal-header-padding-y: 1rem;
-        --bs-modal-header-padding: 1rem 1rem;
-        --bs-modal-header-border-color: var(--bs-border-color);
-        --bs-modal-header-border-width: var(--bs-border-width);
-        --bs-modal-title-line-height: 1.5;
-        --bs-modal-footer-gap: 0.5rem;
-        --bs-modal-footer-bg: ;
-        --bs-modal-footer-border-color: var(--bs-border-color);
-        --bs-modal-footer-border-width: var(--bs-border-width);
-        position: fixed;
-        top: 0;
-        left: 0;
-        z-index: var(--bs-modal-zindex);
-        display: none;
-        width: 100%;
-        height: 100%;
-        overflow-x: hidden;
-        overflow-y: auto;
-        outline: 0;
-    }
-
-    .modal-dialog {
-        position: relative;
-        width: auto;
-        margin: var(--bs-modal-margin);
-        pointer-events: none;
-    }
-
-    .modal.fade .modal-dialog {
-        transition: transform 0.3s ease-out;
-        transform: translate(0, -50px);
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .modal.fade .modal-dialog {
-            transition: none;
-        }
-    }
-
-    .modal.show .modal-dialog {
-        transform: none;
-    }
-
-    .modal.modal-static .modal-dialog {
-        transform: scale(1.02);
-    }
-
-    .modal-dialog-scrollable {
-        height: calc(100% - var(--bs-modal-margin) * 2);
-    }
-
-    .modal-dialog-scrollable .modal-content {
-        max-height: 100%;
-        overflow: hidden;
-    }
-
-    .modal-dialog-scrollable .modal-body {
-        overflow-y: auto;
-    }
-
-    .modal-dialog-centered {
-        display: flex;
-        align-items: center;
-        min-height: calc(100% - var(--bs-modal-margin) * 2);
-    }
-
-    .modal-content {
-        position: relative;
-        display: flex;
-        flex-direction: column;
-        width: 100%;
-        color: var(--bs-modal-color);
-        pointer-events: auto;
-        background-color: var(--bs-modal-bg);
-        background-clip: padding-box;
-        border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);
-        border-radius: var(--bs-modal-border-radius);
-        outline: 0;
-    }
-
-    .modal-backdrop {
-        --bs-backdrop-zindex: 1050;
-        --bs-backdrop-bg: #000;
-        --bs-backdrop-opacity: 0.5;
-        position: fixed;
-        top: 0;
-        left: 0;
-        z-index: var(--bs-backdrop-zindex);
-        width: 100vw;
-        height: 100vh;
-        background-color: var(--bs-backdrop-bg);
-    }
-
-    .modal-backdrop.fade {
-        opacity: 0;
-    }
-
-    .modal-backdrop.show {
-        opacity: var(--bs-backdrop-opacity);
-    }
-
-    .modal-header {
-        display: flex;
-        flex-shrink: 0;
-        align-items: center;
-        justify-content: space-between;
-        padding: var(--bs-modal-header-padding);
-        border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
-        border-top-left-radius: var(--bs-modal-inner-border-radius);
-        border-top-right-radius: var(--bs-modal-inner-border-radius);
-    }
-
-    .modal-header .btn-close {
-        padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);
-        margin: calc(-0.5 * var(--bs-modal-header-padding-y)) calc(-0.5 * var(--bs-modal-header-padding-x)) calc(-0.5 * var(--bs-modal-header-padding-y)) auto;
-    }
-
-    .modal-title {
-        margin-bottom: 0;
-        line-height: var(--bs-modal-title-line-height);
-    }
-
-    .modal-body {
-        position: relative;
-        flex: 1 1 auto;
-        padding: var(--bs-modal-padding);
-    }
-
-    .modal-footer {
-        display: flex;
-        flex-shrink: 0;
-        flex-wrap: wrap;
-        align-items: center;
-        justify-content: flex-end;
-        padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);
-        background-color: var(--bs-modal-footer-bg);
-        border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);
-        border-bottom-right-radius: var(--bs-modal-inner-border-radius);
-        border-bottom-left-radius: var(--bs-modal-inner-border-radius);
-    }
-
-    .modal-footer > * {
-        margin: calc(var(--bs-modal-footer-gap) * 0.5);
-    }
-
-    @media (min-width: 576px) {
-        .modal {
-            --bs-modal-margin: 1.75rem;
-            --bs-modal-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
-        }
-
-        .modal-dialog {
-            max-width: var(--bs-modal-width);
-            margin-right: auto;
-            margin-left: auto;
-        }
-
-        .modal-sm {
-            --bs-modal-width: 300px;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .modal-lg,
-        .modal-xl {
-            --bs-modal-width: 800px;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .modal-xl {
-            --bs-modal-width: 1140px;
-        }
-    }
-
-    .modal-fullscreen {
-        width: 100vw;
-        max-width: none;
-        height: 100%;
-        margin: 0;
-    }
-
-    .modal-fullscreen .modal-content {
-        height: 100%;
-        border: 0;
-        border-radius: 0;
-    }
-
-    .modal-fullscreen .modal-header,
-    .modal-fullscreen .modal-footer {
-        border-radius: 0;
-    }
-
-    .modal-fullscreen .modal-body {
-        overflow-y: auto;
-    }
-
-    @media (max-width: 575.98px) {
-        .modal-fullscreen-sm-down {
-            width: 100vw;
-            max-width: none;
-            height: 100%;
-            margin: 0;
-        }
-
-        .modal-fullscreen-sm-down .modal-content {
-            height: 100%;
-            border: 0;
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-sm-down .modal-header,
-        .modal-fullscreen-sm-down .modal-footer {
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-sm-down .modal-body {
-            overflow-y: auto;
-        }
-    }
-
-    @media (max-width: 767.98px) {
-        .modal-fullscreen-md-down {
-            width: 100vw;
-            max-width: none;
-            height: 100%;
-            margin: 0;
-        }
-
-        .modal-fullscreen-md-down .modal-content {
-            height: 100%;
-            border: 0;
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-md-down .modal-header,
-        .modal-fullscreen-md-down .modal-footer {
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-md-down .modal-body {
-            overflow-y: auto;
-        }
-    }
-
-    @media (max-width: 991.98px) {
-        .modal-fullscreen-lg-down {
-            width: 100vw;
-            max-width: none;
-            height: 100%;
-            margin: 0;
-        }
-
-        .modal-fullscreen-lg-down .modal-content {
-            height: 100%;
-            border: 0;
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-lg-down .modal-header,
-        .modal-fullscreen-lg-down .modal-footer {
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-lg-down .modal-body {
-            overflow-y: auto;
-        }
-    }
-
-    @media (max-width: 1199.98px) {
-        .modal-fullscreen-xl-down {
-            width: 100vw;
-            max-width: none;
-            height: 100%;
-            margin: 0;
-        }
-
-        .modal-fullscreen-xl-down .modal-content {
-            height: 100%;
-            border: 0;
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-xl-down .modal-header,
-        .modal-fullscreen-xl-down .modal-footer {
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-xl-down .modal-body {
-            overflow-y: auto;
-        }
-    }
-
-    @media (max-width: 1399.98px) {
-        .modal-fullscreen-xxl-down {
-            width: 100vw;
-            max-width: none;
-            height: 100%;
-            margin: 0;
-        }
-
-        .modal-fullscreen-xxl-down .modal-content {
-            height: 100%;
-            border: 0;
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-xxl-down .modal-header,
-        .modal-fullscreen-xxl-down .modal-footer {
-            border-radius: 0;
-        }
-
-        .modal-fullscreen-xxl-down .modal-body {
-            overflow-y: auto;
-        }
-    }
-
-    .tooltip {
-        --bs-tooltip-zindex: 1080;
-        --bs-tooltip-max-width: 200px;
-        --bs-tooltip-padding-x: 0.5rem;
-        --bs-tooltip-padding-y: 0.25rem;
-        --bs-tooltip-margin: ;
-        --bs-tooltip-font-size: 0.875rem;
-        --bs-tooltip-color: var(--bs-body-bg);
-        --bs-tooltip-bg: var(--bs-emphasis-color);
-        --bs-tooltip-border-radius: var(--bs-border-radius);
-        --bs-tooltip-opacity: 0.9;
-        --bs-tooltip-arrow-width: 0.8rem;
-        --bs-tooltip-arrow-height: 0.4rem;
-        z-index: var(--bs-tooltip-zindex);
-        display: block;
-        margin: var(--bs-tooltip-margin);
-        font-family: var(--bs-font-sans-serif);
-        font-style: normal;
-        font-weight: 400;
-        line-height: 1.5;
-        text-align: left;
-        text-align: start;
-        text-decoration: none;
-        text-shadow: none;
-        text-transform: none;
-        letter-spacing: normal;
-        word-break: normal;
-        white-space: normal;
-        word-spacing: normal;
-        line-break: auto;
-        font-size: var(--bs-tooltip-font-size);
-        word-wrap: break-word;
-        opacity: 0;
-    }
-
-    .tooltip.show {
-        opacity: var(--bs-tooltip-opacity);
-    }
-
-    .tooltip .tooltip-arrow {
-        display: block;
-        width: var(--bs-tooltip-arrow-width);
-        height: var(--bs-tooltip-arrow-height);
-    }
-
-    .tooltip .tooltip-arrow::before {
-        position: absolute;
-        content: "";
-        border-color: transparent;
-        border-style: solid;
-    }
-
-    .bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
-        bottom: calc(-1 * var(--bs-tooltip-arrow-height));
-    }
-
-    .bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
-        top: -1px;
-        border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
-        border-top-color: var(--bs-tooltip-bg);
-    }
-
-    /* rtl:begin:ignore */
-    .bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
-        left: calc(-1 * var(--bs-tooltip-arrow-height));
-        width: var(--bs-tooltip-arrow-height);
-        height: var(--bs-tooltip-arrow-width);
-    }
-
-    .bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
-        right: -1px;
-        border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
-        border-right-color: var(--bs-tooltip-bg);
-    }
-
-    /* rtl:end:ignore */
-    .bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
-        top: calc(-1 * var(--bs-tooltip-arrow-height));
-    }
-
-    .bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
-        bottom: -1px;
-        border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
-        border-bottom-color: var(--bs-tooltip-bg);
-    }
-
-    /* rtl:begin:ignore */
-    .bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
-        right: calc(-1 * var(--bs-tooltip-arrow-height));
-        width: var(--bs-tooltip-arrow-height);
-        height: var(--bs-tooltip-arrow-width);
-    }
-
-    .bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
-        left: -1px;
-        border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
-        border-left-color: var(--bs-tooltip-bg);
-    }
-
-    /* rtl:end:ignore */
-    .tooltip-inner {
-        max-width: var(--bs-tooltip-max-width);
-        padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);
-        color: var(--bs-tooltip-color);
-        text-align: center;
-        background-color: var(--bs-tooltip-bg);
-        border-radius: var(--bs-tooltip-border-radius);
-    }
-
-    .popover {
-        --bs-popover-zindex: 1070;
-        --bs-popover-max-width: 276px;
-        --bs-popover-font-size: 0.875rem;
-        --bs-popover-bg: var(--bs-body-bg);
-        --bs-popover-border-width: var(--bs-border-width);
-        --bs-popover-border-color: var(--bs-border-color-translucent);
-        --bs-popover-border-radius: var(--bs-border-radius-lg);
-        --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));
-        --bs-popover-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
-        --bs-popover-header-padding-x: 1rem;
-        --bs-popover-header-padding-y: 0.5rem;
-        --bs-popover-header-font-size: 1rem;
-        --bs-popover-header-color: inherit;
-        --bs-popover-header-bg: var(--bs-secondary-bg);
-        --bs-popover-body-padding-x: 1rem;
-        --bs-popover-body-padding-y: 1rem;
-        --bs-popover-body-color: var(--bs-body-color);
-        --bs-popover-arrow-width: 1rem;
-        --bs-popover-arrow-height: 0.5rem;
-        --bs-popover-arrow-border: var(--bs-popover-border-color);
-        z-index: var(--bs-popover-zindex);
-        display: block;
-        max-width: var(--bs-popover-max-width);
-        font-family: var(--bs-font-sans-serif);
-        font-style: normal;
-        font-weight: 400;
-        line-height: 1.5;
-        text-align: left;
-        text-align: start;
-        text-decoration: none;
-        text-shadow: none;
-        text-transform: none;
-        letter-spacing: normal;
-        word-break: normal;
-        white-space: normal;
-        word-spacing: normal;
-        line-break: auto;
-        font-size: var(--bs-popover-font-size);
-        word-wrap: break-word;
-        background-color: var(--bs-popover-bg);
-        background-clip: padding-box;
-        border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
-        border-radius: var(--bs-popover-border-radius);
-    }
-
-    .popover .popover-arrow {
-        display: block;
-        width: var(--bs-popover-arrow-width);
-        height: var(--bs-popover-arrow-height);
-    }
-
-    .popover .popover-arrow::before, .popover .popover-arrow::after {
-        position: absolute;
-        display: block;
-        content: "";
-        border-color: transparent;
-        border-style: solid;
-        border-width: 0;
-    }
-
-    .bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {
-        bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
-    }
-
-    .bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
-        border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
-    }
-
-    .bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {
-        bottom: 0;
-        border-top-color: var(--bs-popover-arrow-border);
-    }
-
-    .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
-        bottom: var(--bs-popover-border-width);
-        border-top-color: var(--bs-popover-bg);
-    }
-
-    /* rtl:begin:ignore */
-    .bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {
-        left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
-        width: var(--bs-popover-arrow-height);
-        height: var(--bs-popover-arrow-width);
-    }
-
-    .bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
-        border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
-    }
-
-    .bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {
-        left: 0;
-        border-right-color: var(--bs-popover-arrow-border);
-    }
-
-    .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
-        left: var(--bs-popover-border-width);
-        border-right-color: var(--bs-popover-bg);
-    }
-
-    /* rtl:end:ignore */
-    .bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {
-        top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
-    }
-
-    .bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
-        border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
-    }
-
-    .bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {
-        top: 0;
-        border-bottom-color: var(--bs-popover-arrow-border);
-    }
-
-    .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
-        top: var(--bs-popover-border-width);
-        border-bottom-color: var(--bs-popover-bg);
-    }
-
-    .bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {
-        position: absolute;
-        top: 0;
-        left: 50%;
-        display: block;
-        width: var(--bs-popover-arrow-width);
-        margin-left: calc(-0.5 * var(--bs-popover-arrow-width));
-        content: "";
-        border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);
-    }
-
-    /* rtl:begin:ignore */
-    .bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {
-        right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
-        width: var(--bs-popover-arrow-height);
-        height: var(--bs-popover-arrow-width);
-    }
-
-    .bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
-        border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
-    }
-
-    .bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {
-        right: 0;
-        border-left-color: var(--bs-popover-arrow-border);
-    }
-
-    .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
-        right: var(--bs-popover-border-width);
-        border-left-color: var(--bs-popover-bg);
-    }
-
-    /* rtl:end:ignore */
-    .popover-header {
-        padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);
-        margin-bottom: 0;
-        font-size: var(--bs-popover-header-font-size);
-        color: var(--bs-popover-header-color);
-        background-color: var(--bs-popover-header-bg);
-        border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
-        border-top-left-radius: var(--bs-popover-inner-border-radius);
-        border-top-right-radius: var(--bs-popover-inner-border-radius);
-    }
-
-    .popover-header:empty {
-        display: none;
-    }
-
-    .popover-body {
-        padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);
-        color: var(--bs-popover-body-color);
-    }
-
-    .carousel {
-        position: relative;
-    }
-
-    .carousel.pointer-event {
-        touch-action: pan-y;
-    }
-
-    .carousel-inner {
-        position: relative;
-        width: 100%;
-        overflow: hidden;
-    }
-
-    .carousel-inner::after {
-        display: block;
-        clear: both;
-        content: "";
-    }
-
-    .carousel-item {
-        position: relative;
-        display: none;
-        float: left;
-        width: 100%;
-        margin-right: -100%;
-        backface-visibility: hidden;
-        transition: transform 0.6s ease-in-out;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .carousel-item {
-            transition: none;
-        }
-    }
-
-    .carousel-item.active,
-    .carousel-item-next,
-    .carousel-item-prev {
-        display: block;
-    }
-
-    .carousel-item-next:not(.carousel-item-start),
-    .active.carousel-item-end {
-        transform: translateX(100%);
-    }
-
-    .carousel-item-prev:not(.carousel-item-end),
-    .active.carousel-item-start {
-        transform: translateX(-100%);
-    }
-
-    .carousel-fade .carousel-item {
-        opacity: 0;
-        transition-property: opacity;
-        transform: none;
-    }
-
-    .carousel-fade .carousel-item.active,
-    .carousel-fade .carousel-item-next.carousel-item-start,
-    .carousel-fade .carousel-item-prev.carousel-item-end {
-        z-index: 1;
-        opacity: 1;
-    }
-
-    .carousel-fade .active.carousel-item-start,
-    .carousel-fade .active.carousel-item-end {
-        z-index: 0;
-        opacity: 0;
-        transition: opacity 0s 0.6s;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .carousel-fade .active.carousel-item-start,
-        .carousel-fade .active.carousel-item-end {
-            transition: none;
-        }
-    }
-
-    .carousel-control-prev,
-    .carousel-control-next {
-        position: absolute;
-        top: 0;
-        bottom: 0;
-        z-index: 1;
-        display: flex;
-        align-items: center;
-        justify-content: center;
-        width: 15%;
-        padding: 0;
-        color: #fff;
-        text-align: center;
-        background: none;
-        border: 0;
-        opacity: 0.5;
-        transition: opacity 0.15s ease;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .carousel-control-prev,
-        .carousel-control-next {
-            transition: none;
-        }
-    }
-
-    .carousel-control-prev:hover, .carousel-control-prev:focus,
-    .carousel-control-next:hover,
-    .carousel-control-next:focus {
-        color: #fff;
-        text-decoration: none;
-        outline: 0;
-        opacity: 0.9;
-    }
-
-    .carousel-control-prev {
-        left: 0;
-    }
-
-    .carousel-control-next {
-        right: 0;
-    }
-
-    .carousel-control-prev-icon,
-    .carousel-control-next-icon {
-        display: inline-block;
-        width: 2rem;
-        height: 2rem;
-        background-repeat: no-repeat;
-        background-position: 50%;
-        background-size: 100% 100%;
-    }
-
-    /* rtl:options: {
-  "autoRename": true,
-  "stringMap":[ {
-    "name"    : "prev-next",
-    "search"  : "prev",
-    "replace" : "next"
-  } ]
-} */
-    .carousel-control-prev-icon {
-        background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23fff%27%3e%3cpath d=%27M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z%27/%3e%3c/svg%3e");
-    }
-
-    .carousel-control-next-icon {
-        background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23fff%27%3e%3cpath d=%27M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
-    }
-
-    .carousel-indicators {
-        position: absolute;
-        right: 0;
-        bottom: 0;
-        left: 0;
-        z-index: 2;
-        display: flex;
-        justify-content: center;
-        padding: 0;
-        margin-right: 15%;
-        margin-bottom: 1rem;
-        margin-left: 15%;
-    }
-
-    .carousel-indicators [data-bs-target] {
-        box-sizing: content-box;
-        flex: 0 1 auto;
-        width: 30px;
-        height: 3px;
-        padding: 0;
-        margin-right: 3px;
-        margin-left: 3px;
-        text-indent: -999px;
-        cursor: pointer;
-        background-color: #fff;
-        background-clip: padding-box;
-        border: 0;
-        border-top: 10px solid transparent;
-        border-bottom: 10px solid transparent;
-        opacity: 0.5;
-        transition: opacity 0.6s ease;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .carousel-indicators [data-bs-target] {
-            transition: none;
-        }
-    }
-
-    .carousel-indicators .active {
-        opacity: 1;
-    }
-
-    .carousel-caption {
-        position: absolute;
-        right: 15%;
-        bottom: 1.25rem;
-        left: 15%;
-        padding-top: 1.25rem;
-        padding-bottom: 1.25rem;
-        color: #fff;
-        text-align: center;
-    }
-
-    .carousel-dark .carousel-control-prev-icon,
-    .carousel-dark .carousel-control-next-icon {
-        filter: invert(1) grayscale(100);
-    }
-
-    .carousel-dark .carousel-indicators [data-bs-target] {
-        background-color: #000;
-    }
-
-    .carousel-dark .carousel-caption {
-        color: #000;
-    }
-
-    [data-bs-theme=dark] .carousel .carousel-control-prev-icon,
-    [data-bs-theme=dark] .carousel .carousel-control-next-icon, [data-bs-theme=dark].carousel .carousel-control-prev-icon,
-    [data-bs-theme=dark].carousel .carousel-control-next-icon {
-        filter: invert(1) grayscale(100);
-    }
-
-    [data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target], [data-bs-theme=dark].carousel .carousel-indicators [data-bs-target] {
-        background-color: #000;
-    }
-
-    [data-bs-theme=dark] .carousel .carousel-caption, [data-bs-theme=dark].carousel .carousel-caption {
-        color: #000;
-    }
-
-    .spinner-grow,
-    .spinner-border {
-        display: inline-block;
-        width: var(--bs-spinner-width);
-        height: var(--bs-spinner-height);
-        vertical-align: var(--bs-spinner-vertical-align);
-        border-radius: 50%;
-        animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
-    }
-
-    @keyframes spinner-border {
-        to {
-            transform: rotate(360deg) /* rtl:ignore */;
-        }
-    }
-
-    .spinner-border {
-        --bs-spinner-width: 2rem;
-        --bs-spinner-height: 2rem;
-        --bs-spinner-vertical-align: -0.125em;
-        --bs-spinner-border-width: 0.25em;
-        --bs-spinner-animation-speed: 0.75s;
-        --bs-spinner-animation-name: spinner-border;
-        border: var(--bs-spinner-border-width) solid currentcolor;
-        border-right-color: transparent;
-    }
-
-    .spinner-border-sm {
-        --bs-spinner-width: 1rem;
-        --bs-spinner-height: 1rem;
-        --bs-spinner-border-width: 0.2em;
-    }
-
-    @keyframes spinner-grow {
-        0% {
-            transform: scale(0);
-        }
-        50% {
-            opacity: 1;
-            transform: none;
-        }
-    }
-
-    .spinner-grow {
-        --bs-spinner-width: 2rem;
-        --bs-spinner-height: 2rem;
-        --bs-spinner-vertical-align: -0.125em;
-        --bs-spinner-animation-speed: 0.75s;
-        --bs-spinner-animation-name: spinner-grow;
-        background-color: currentcolor;
-        opacity: 0;
-    }
-
-    .spinner-grow-sm {
-        --bs-spinner-width: 1rem;
-        --bs-spinner-height: 1rem;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .spinner-border,
-        .spinner-grow {
-            --bs-spinner-animation-speed: 1.5s;
-        }
-    }
-
-    .offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {
-        --bs-offcanvas-zindex: 1045;
-        --bs-offcanvas-width: 400px;
-        --bs-offcanvas-height: 30vh;
-        --bs-offcanvas-padding-x: 1rem;
-        --bs-offcanvas-padding-y: 1rem;
-        --bs-offcanvas-color: var(--bs-body-color);
-        --bs-offcanvas-bg: var(--bs-body-bg);
-        --bs-offcanvas-border-width: var(--bs-border-width);
-        --bs-offcanvas-border-color: var(--bs-border-color-translucent);
-        --bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
-        --bs-offcanvas-transition: transform 0.3s ease-in-out;
-        --bs-offcanvas-title-line-height: 1.5;
-    }
-
-    @media (max-width: 575.98px) {
-        .offcanvas-sm {
-            position: fixed;
-            bottom: 0;
-            z-index: var(--bs-offcanvas-zindex);
-            display: flex;
-            flex-direction: column;
-            max-width: 100%;
-            color: var(--bs-offcanvas-color);
-            visibility: hidden;
-            background-color: var(--bs-offcanvas-bg);
-            background-clip: padding-box;
-            outline: 0;
-            transition: var(--bs-offcanvas-transition);
-        }
-    }
-
-    @media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {
-        .offcanvas-sm {
-            transition: none;
-        }
-    }
-
-    @media (max-width: 575.98px) {
-        .offcanvas-sm.offcanvas-start {
-            top: 0;
-            left: 0;
-            width: var(--bs-offcanvas-width);
-            border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(-100%);
-        }
-
-        .offcanvas-sm.offcanvas-end {
-            top: 0;
-            right: 0;
-            width: var(--bs-offcanvas-width);
-            border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(100%);
-        }
-
-        .offcanvas-sm.offcanvas-top {
-            top: 0;
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(-100%);
-        }
-
-        .offcanvas-sm.offcanvas-bottom {
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(100%);
-        }
-
-        .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {
-            transform: none;
-        }
-
-        .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {
-            visibility: visible;
-        }
-    }
-
-    @media (min-width: 576px) {
-        .offcanvas-sm {
-            --bs-offcanvas-height: auto;
-            --bs-offcanvas-border-width: 0;
-            background-color: transparent !important;
-        }
-
-        .offcanvas-sm .offcanvas-header {
-            display: none;
-        }
-
-        .offcanvas-sm .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-            background-color: transparent !important;
-        }
-    }
-
-    @media (max-width: 767.98px) {
-        .offcanvas-md {
-            position: fixed;
-            bottom: 0;
-            z-index: var(--bs-offcanvas-zindex);
-            display: flex;
-            flex-direction: column;
-            max-width: 100%;
-            color: var(--bs-offcanvas-color);
-            visibility: hidden;
-            background-color: var(--bs-offcanvas-bg);
-            background-clip: padding-box;
-            outline: 0;
-            transition: var(--bs-offcanvas-transition);
-        }
-    }
-
-    @media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {
-        .offcanvas-md {
-            transition: none;
-        }
-    }
-
-    @media (max-width: 767.98px) {
-        .offcanvas-md.offcanvas-start {
-            top: 0;
-            left: 0;
-            width: var(--bs-offcanvas-width);
-            border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(-100%);
-        }
-
-        .offcanvas-md.offcanvas-end {
-            top: 0;
-            right: 0;
-            width: var(--bs-offcanvas-width);
-            border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(100%);
-        }
-
-        .offcanvas-md.offcanvas-top {
-            top: 0;
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(-100%);
-        }
-
-        .offcanvas-md.offcanvas-bottom {
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(100%);
-        }
-
-        .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {
-            transform: none;
-        }
-
-        .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {
-            visibility: visible;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .offcanvas-md {
-            --bs-offcanvas-height: auto;
-            --bs-offcanvas-border-width: 0;
-            background-color: transparent !important;
-        }
-
-        .offcanvas-md .offcanvas-header {
-            display: none;
-        }
-
-        .offcanvas-md .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-            background-color: transparent !important;
-        }
-    }
-
-    @media (max-width: 991.98px) {
-        .offcanvas-lg {
-            position: fixed;
-            bottom: 0;
-            z-index: var(--bs-offcanvas-zindex);
-            display: flex;
-            flex-direction: column;
-            max-width: 100%;
-            color: var(--bs-offcanvas-color);
-            visibility: hidden;
-            background-color: var(--bs-offcanvas-bg);
-            background-clip: padding-box;
-            outline: 0;
-            transition: var(--bs-offcanvas-transition);
-        }
-    }
-
-    @media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {
-        .offcanvas-lg {
-            transition: none;
-        }
-    }
-
-    @media (max-width: 991.98px) {
-        .offcanvas-lg.offcanvas-start {
-            top: 0;
-            left: 0;
-            width: var(--bs-offcanvas-width);
-            border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(-100%);
-        }
-
-        .offcanvas-lg.offcanvas-end {
-            top: 0;
-            right: 0;
-            width: var(--bs-offcanvas-width);
-            border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(100%);
-        }
-
-        .offcanvas-lg.offcanvas-top {
-            top: 0;
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(-100%);
-        }
-
-        .offcanvas-lg.offcanvas-bottom {
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(100%);
-        }
-
-        .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {
-            transform: none;
-        }
-
-        .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {
-            visibility: visible;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .offcanvas-lg {
-            --bs-offcanvas-height: auto;
-            --bs-offcanvas-border-width: 0;
-            background-color: transparent !important;
-        }
-
-        .offcanvas-lg .offcanvas-header {
-            display: none;
-        }
-
-        .offcanvas-lg .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-            background-color: transparent !important;
-        }
-    }
-
-    @media (max-width: 1199.98px) {
-        .offcanvas-xl {
-            position: fixed;
-            bottom: 0;
-            z-index: var(--bs-offcanvas-zindex);
-            display: flex;
-            flex-direction: column;
-            max-width: 100%;
-            color: var(--bs-offcanvas-color);
-            visibility: hidden;
-            background-color: var(--bs-offcanvas-bg);
-            background-clip: padding-box;
-            outline: 0;
-            transition: var(--bs-offcanvas-transition);
-        }
-    }
-
-    @media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {
-        .offcanvas-xl {
-            transition: none;
-        }
-    }
-
-    @media (max-width: 1199.98px) {
-        .offcanvas-xl.offcanvas-start {
-            top: 0;
-            left: 0;
-            width: var(--bs-offcanvas-width);
-            border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(-100%);
-        }
-
-        .offcanvas-xl.offcanvas-end {
-            top: 0;
-            right: 0;
-            width: var(--bs-offcanvas-width);
-            border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(100%);
-        }
-
-        .offcanvas-xl.offcanvas-top {
-            top: 0;
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(-100%);
-        }
-
-        .offcanvas-xl.offcanvas-bottom {
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(100%);
-        }
-
-        .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {
-            transform: none;
-        }
-
-        .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {
-            visibility: visible;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .offcanvas-xl {
-            --bs-offcanvas-height: auto;
-            --bs-offcanvas-border-width: 0;
-            background-color: transparent !important;
-        }
-
-        .offcanvas-xl .offcanvas-header {
-            display: none;
-        }
-
-        .offcanvas-xl .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-            background-color: transparent !important;
-        }
-    }
-
-    @media (max-width: 1399.98px) {
-        .offcanvas-xxl {
-            position: fixed;
-            bottom: 0;
-            z-index: var(--bs-offcanvas-zindex);
-            display: flex;
-            flex-direction: column;
-            max-width: 100%;
-            color: var(--bs-offcanvas-color);
-            visibility: hidden;
-            background-color: var(--bs-offcanvas-bg);
-            background-clip: padding-box;
-            outline: 0;
-            transition: var(--bs-offcanvas-transition);
-        }
-    }
-
-    @media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {
-        .offcanvas-xxl {
-            transition: none;
-        }
-    }
-
-    @media (max-width: 1399.98px) {
-        .offcanvas-xxl.offcanvas-start {
-            top: 0;
-            left: 0;
-            width: var(--bs-offcanvas-width);
-            border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(-100%);
-        }
-
-        .offcanvas-xxl.offcanvas-end {
-            top: 0;
-            right: 0;
-            width: var(--bs-offcanvas-width);
-            border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateX(100%);
-        }
-
-        .offcanvas-xxl.offcanvas-top {
-            top: 0;
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(-100%);
-        }
-
-        .offcanvas-xxl.offcanvas-bottom {
-            right: 0;
-            left: 0;
-            height: var(--bs-offcanvas-height);
-            max-height: 100%;
-            border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-            transform: translateY(100%);
-        }
-
-        .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {
-            transform: none;
-        }
-
-        .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {
-            visibility: visible;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .offcanvas-xxl {
-            --bs-offcanvas-height: auto;
-            --bs-offcanvas-border-width: 0;
-            background-color: transparent !important;
-        }
-
-        .offcanvas-xxl .offcanvas-header {
-            display: none;
-        }
-
-        .offcanvas-xxl .offcanvas-body {
-            display: flex;
-            flex-grow: 0;
-            padding: 0;
-            overflow-y: visible;
-            background-color: transparent !important;
-        }
-    }
-
-    .offcanvas {
-        position: fixed;
-        bottom: 0;
-        z-index: var(--bs-offcanvas-zindex);
-        display: flex;
-        flex-direction: column;
-        max-width: 100%;
-        color: var(--bs-offcanvas-color);
-        visibility: hidden;
-        background-color: var(--bs-offcanvas-bg);
-        background-clip: padding-box;
-        outline: 0;
-        transition: var(--bs-offcanvas-transition);
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .offcanvas {
-            transition: none;
-        }
-    }
-
-    .offcanvas.offcanvas-start {
-        top: 0;
-        left: 0;
-        width: var(--bs-offcanvas-width);
-        border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-        transform: translateX(-100%);
-    }
-
-    .offcanvas.offcanvas-end {
-        top: 0;
-        right: 0;
-        width: var(--bs-offcanvas-width);
-        border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-        transform: translateX(100%);
-    }
-
-    .offcanvas.offcanvas-top {
-        top: 0;
-        right: 0;
-        left: 0;
-        height: var(--bs-offcanvas-height);
-        max-height: 100%;
-        border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-        transform: translateY(-100%);
-    }
-
-    .offcanvas.offcanvas-bottom {
-        right: 0;
-        left: 0;
-        height: var(--bs-offcanvas-height);
-        max-height: 100%;
-        border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
-        transform: translateY(100%);
-    }
-
-    .offcanvas.showing, .offcanvas.show:not(.hiding) {
-        transform: none;
-    }
-
-    .offcanvas.showing, .offcanvas.hiding, .offcanvas.show {
-        visibility: visible;
-    }
-
-    .offcanvas-backdrop {
-        position: fixed;
-        top: 0;
-        left: 0;
-        z-index: 1040;
-        width: 100vw;
-        height: 100vh;
-        background-color: #000;
-    }
-
-    .offcanvas-backdrop.fade {
-        opacity: 0;
-    }
-
-    .offcanvas-backdrop.show {
-        opacity: 0.5;
-    }
-
-    .offcanvas-header {
-        display: flex;
-        align-items: center;
-        justify-content: space-between;
-        padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
-    }
-
-    .offcanvas-header .btn-close {
-        padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);
-        margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));
-        margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));
-        margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));
-    }
-
-    .offcanvas-title {
-        margin-bottom: 0;
-        line-height: var(--bs-offcanvas-title-line-height);
-    }
-
-    .offcanvas-body {
-        flex-grow: 1;
-        padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
-        overflow-y: auto;
-    }
-
-    .placeholder {
-        display: inline-block;
-        min-height: 1em;
-        vertical-align: middle;
-        cursor: wait;
-        background-color: currentcolor;
-        opacity: 0.5;
-    }
-
-    .placeholder.btn::before {
-        display: inline-block;
-        content: "";
-    }
-
-    .placeholder-xs {
-        min-height: 0.6em;
-    }
-
-    .placeholder-sm {
-        min-height: 0.8em;
-    }
-
-    .placeholder-lg {
-        min-height: 1.2em;
-    }
-
-    .placeholder-glow .placeholder {
-        animation: placeholder-glow 2s ease-in-out infinite;
-    }
-
-    @keyframes placeholder-glow {
-        50% {
-            opacity: 0.2;
-        }
-    }
-
-    .placeholder-wave {
-        -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
-        mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
-        -webkit-mask-size: 200% 100%;
-        mask-size: 200% 100%;
-        animation: placeholder-wave 2s linear infinite;
-    }
-
-    @keyframes placeholder-wave {
-        100% {
-            -webkit-mask-position: -200% 0%;
-            mask-position: -200% 0%;
-        }
-    }
-
-    .clearfix::after {
-        display: block;
-        clear: both;
-        content: "";
-    }
-
-    .text-bg-primary {
-        color: #fff !important;
-        background-color: RGBA(13, 110, 253, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-secondary {
-        color: #fff !important;
-        background-color: RGBA(108, 117, 125, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-success {
-        color: #fff !important;
-        background-color: RGBA(25, 135, 84, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-info {
-        color: #000 !important;
-        background-color: RGBA(13, 202, 240, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-warning {
-        color: #000 !important;
-        background-color: RGBA(255, 193, 7, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-danger {
-        color: #fff !important;
-        background-color: RGBA(220, 53, 69, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-light {
-        color: #000 !important;
-        background-color: RGBA(248, 249, 250, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .text-bg-dark {
-        color: #fff !important;
-        background-color: RGBA(33, 37, 41, var(--bs-bg-opacity, 1)) !important;
-    }
-
-    .link-primary {
-        color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-primary:hover, .link-primary:focus {
-        color: RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-secondary {
-        color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-secondary:hover, .link-secondary:focus {
-        color: RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-success {
-        color: RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-success:hover, .link-success:focus {
-        color: RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-info {
-        color: RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-info:hover, .link-info:focus {
-        color: RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-warning {
-        color: RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-warning:hover, .link-warning:focus {
-        color: RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-danger {
-        color: RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-danger:hover, .link-danger:focus {
-        color: RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-light {
-        color: RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-light:hover, .link-light:focus {
-        color: RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-dark {
-        color: RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-dark:hover, .link-dark:focus {
-        color: RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-body-emphasis {
-        color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;
-        text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-body-emphasis:hover, .link-body-emphasis:focus {
-        color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;
-        text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;
-    }
-
-    .focus-ring:focus {
-        outline: 0;
-        box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);
-    }
-
-    .icon-link {
-        display: inline-flex;
-        gap: 0.375rem;
-        align-items: center;
-        text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
-        text-underline-offset: 0.25em;
-        backface-visibility: hidden;
-    }
-
-    .icon-link > .bi {
-        flex-shrink: 0;
-        width: 1em;
-        height: 1em;
-        fill: currentcolor;
-        transition: 0.2s ease-in-out transform;
-    }
-
-    @media (prefers-reduced-motion: reduce) {
-        .icon-link > .bi {
-            transition: none;
-        }
-    }
-
-    .icon-link-hover:hover > .bi, .icon-link-hover:focus-visible > .bi {
-        transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));
-    }
-
-    .ratio {
-        position: relative;
-        width: 100%;
-    }
-
-    .ratio::before {
-        display: block;
-        padding-top: var(--bs-aspect-ratio);
-        content: "";
-    }
-
-    .ratio > * {
-        position: absolute;
-        top: 0;
-        left: 0;
-        width: 100%;
-        height: 100%;
-    }
-
-    .ratio-1x1 {
-        --bs-aspect-ratio: 100%;
-    }
-
-    .ratio-4x3 {
-        --bs-aspect-ratio: 75%;
-    }
-
-    .ratio-16x9 {
-        --bs-aspect-ratio: 56.25%;
-    }
-
-    .ratio-21x9 {
-        --bs-aspect-ratio: 42.8571428571%;
-    }
-
-    .fixed-top {
-        position: fixed;
-        top: 0;
-        right: 0;
-        left: 0;
-        z-index: 1030;
-    }
-
-    .fixed-bottom {
-        position: fixed;
-        right: 0;
-        bottom: 0;
-        left: 0;
-        z-index: 1030;
-    }
-
-    .sticky-top {
-        position: sticky;
-        top: 0;
-        z-index: 1020;
-    }
-
-    .sticky-bottom {
-        position: sticky;
-        bottom: 0;
-        z-index: 1020;
-    }
-
-    @media (min-width: 576px) {
-        .sticky-sm-top {
-            position: sticky;
-            top: 0;
-            z-index: 1020;
-        }
-
-        .sticky-sm-bottom {
-            position: sticky;
-            bottom: 0;
-            z-index: 1020;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .sticky-md-top {
-            position: sticky;
-            top: 0;
-            z-index: 1020;
-        }
-
-        .sticky-md-bottom {
-            position: sticky;
-            bottom: 0;
-            z-index: 1020;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .sticky-lg-top {
-            position: sticky;
-            top: 0;
-            z-index: 1020;
-        }
-
-        .sticky-lg-bottom {
-            position: sticky;
-            bottom: 0;
-            z-index: 1020;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .sticky-xl-top {
-            position: sticky;
-            top: 0;
-            z-index: 1020;
-        }
-
-        .sticky-xl-bottom {
-            position: sticky;
-            bottom: 0;
-            z-index: 1020;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .sticky-xxl-top {
-            position: sticky;
-            top: 0;
-            z-index: 1020;
-        }
-
-        .sticky-xxl-bottom {
-            position: sticky;
-            bottom: 0;
-            z-index: 1020;
-        }
-    }
-
-    .hstack {
-        display: flex;
-        flex-direction: row;
-        align-items: center;
-        align-self: stretch;
-    }
-
-    .vstack {
-        display: flex;
-        flex: 1 1 auto;
-        flex-direction: column;
-        align-self: stretch;
-    }
-
-    .visually-hidden,
-    .visually-hidden-focusable:not(:focus):not(:focus-within) {
-        width: 1px !important;
-        height: 1px !important;
-        padding: 0 !important;
-        margin: -1px !important;
-        overflow: hidden !important;
-        clip: rect(0, 0, 0, 0) !important;
-        white-space: nowrap !important;
-        border: 0 !important;
-    }
-
-    .visually-hidden:not(caption),
-    .visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {
-        position: absolute !important;
-    }
-
-    .stretched-link::after {
-        position: absolute;
-        top: 0;
-        right: 0;
-        bottom: 0;
-        left: 0;
-        z-index: 1;
-        content: "";
-    }
-
-    .text-truncate {
-        overflow: hidden;
-        text-overflow: ellipsis;
-        white-space: nowrap;
-    }
-
-    .vr {
-        display: inline-block;
-        align-self: stretch;
-        width: 1px;
-        min-height: 1em;
-        background-color: currentcolor;
-        opacity: 0.25;
-    }
-
-    .align-baseline {
-        vertical-align: baseline !important;
-    }
-
-    .align-top {
-        vertical-align: top !important;
-    }
-
-    .align-middle {
-        vertical-align: middle !important;
-    }
-
-    .align-bottom {
-        vertical-align: bottom !important;
-    }
-
-    .align-text-bottom {
-        vertical-align: text-bottom !important;
-    }
-
-    .align-text-top {
-        vertical-align: text-top !important;
-    }
-
-    .float-start {
-        float: left !important;
-    }
-
-    .float-end {
-        float: right !important;
-    }
-
-    .float-none {
-        float: none !important;
-    }
-
-    .object-fit-contain {
-        object-fit: contain !important;
-    }
-
-    .object-fit-cover {
-        object-fit: cover !important;
-    }
-
-    .object-fit-fill {
-        object-fit: fill !important;
-    }
-
-    .object-fit-scale {
-        object-fit: scale-down !important;
-    }
-
-    .object-fit-none {
-        object-fit: none !important;
-    }
-
-    .opacity-0 {
-        opacity: 0 !important;
-    }
-
-    .opacity-25 {
-        opacity: 0.25 !important;
-    }
-
-    .opacity-50 {
-        opacity: 0.5 !important;
-    }
-
-    .opacity-75 {
-        opacity: 0.75 !important;
-    }
-
-    .opacity-100 {
-        opacity: 1 !important;
-    }
-
-    .overflow-auto {
-        overflow: auto !important;
-    }
-
-    .overflow-hidden {
-        overflow: hidden !important;
-    }
-
-    .overflow-visible {
-        overflow: visible !important;
-    }
-
-    .overflow-scroll {
-        overflow: scroll !important;
-    }
-
-    .overflow-x-auto {
-        overflow-x: auto !important;
-    }
-
-    .overflow-x-hidden {
-        overflow-x: hidden !important;
-    }
-
-    .overflow-x-visible {
-        overflow-x: visible !important;
-    }
-
-    .overflow-x-scroll {
-        overflow-x: scroll !important;
-    }
-
-    .overflow-y-auto {
-        overflow-y: auto !important;
-    }
-
-    .overflow-y-hidden {
-        overflow-y: hidden !important;
-    }
-
-    .overflow-y-visible {
-        overflow-y: visible !important;
-    }
-
-    .overflow-y-scroll {
-        overflow-y: scroll !important;
-    }
-
-    .d-inline {
-        display: inline !important;
-    }
-
-    .d-inline-block {
-        display: inline-block !important;
-    }
-
-    .d-block {
-        display: block !important;
-    }
-
-    .d-grid {
-        display: grid !important;
-    }
-
-    .d-inline-grid {
-        display: inline-grid !important;
-    }
-
-    .d-table {
-        display: table !important;
-    }
-
-    .d-table-row {
-        display: table-row !important;
-    }
-
-    .d-table-cell {
-        display: table-cell !important;
-    }
-
-    .d-flex {
-        display: flex !important;
-    }
-
-    .d-inline-flex {
-        display: inline-flex !important;
-    }
-
-    .d-none {
-        display: none !important;
-    }
-
-    .shadow {
-        box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
-    }
-
-    .shadow-sm {
-        box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
-    }
-
-    .shadow-lg {
-        box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
-    }
-
-    .shadow-none {
-        box-shadow: none !important;
-    }
-
-    .focus-ring-primary {
-        --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-secondary {
-        --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-success {
-        --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-info {
-        --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-warning {
-        --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-danger {
-        --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-light {
-        --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .focus-ring-dark {
-        --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));
-    }
-
-    .position-static {
-        position: static !important;
-    }
-
-    .position-relative {
-        position: relative !important;
-    }
-
-    .position-absolute {
-        position: absolute !important;
-    }
-
-    .position-fixed {
-        position: fixed !important;
-    }
-
-    .position-sticky {
-        position: sticky !important;
-    }
-
-    .top-0 {
-        top: 0 !important;
-    }
-
-    .top-50 {
-        top: 50% !important;
-    }
-
-    .top-100 {
-        top: 100% !important;
-    }
-
-    .bottom-0 {
-        bottom: 0 !important;
-    }
-
-    .bottom-50 {
-        bottom: 50% !important;
-    }
-
-    .bottom-100 {
-        bottom: 100% !important;
-    }
-
-    .start-0 {
-        left: 0 !important;
-    }
-
-    .start-50 {
-        left: 50% !important;
-    }
-
-    .start-100 {
-        left: 100% !important;
-    }
-
-    .end-0 {
-        right: 0 !important;
-    }
-
-    .end-50 {
-        right: 50% !important;
-    }
-
-    .end-100 {
-        right: 100% !important;
-    }
-
-    .translate-middle {
-        transform: translate(-50%, -50%) !important;
-    }
-
-    .translate-middle-x {
-        transform: translateX(-50%) !important;
-    }
-
-    .translate-middle-y {
-        transform: translateY(-50%) !important;
-    }
-
-    .border {
-        border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
-    }
-
-    .border-0 {
-        border: 0 !important;
-    }
-
-    .border-top {
-        border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
-    }
-
-    .border-top-0 {
-        border-top: 0 !important;
-    }
-
-    .border-end {
-        border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
-    }
-
-    .border-end-0 {
-        border-right: 0 !important;
-    }
-
-    .border-bottom {
-        border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
-    }
-
-    .border-bottom-0 {
-        border-bottom: 0 !important;
-    }
-
-    .border-start {
-        border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
-    }
-
-    .border-start-0 {
-        border-left: 0 !important;
-    }
-
-    .border-primary {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-secondary {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-success {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-info {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-warning {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-danger {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-light {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-dark {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-black {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-white {
-        --bs-border-opacity: 1;
-        border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;
-    }
-
-    .border-primary-subtle {
-        border-color: var(--bs-primary-border-subtle) !important;
-    }
-
-    .border-secondary-subtle {
-        border-color: var(--bs-secondary-border-subtle) !important;
-    }
-
-    .border-success-subtle {
-        border-color: var(--bs-success-border-subtle) !important;
-    }
-
-    .border-info-subtle {
-        border-color: var(--bs-info-border-subtle) !important;
-    }
-
-    .border-warning-subtle {
-        border-color: var(--bs-warning-border-subtle) !important;
-    }
-
-    .border-danger-subtle {
-        border-color: var(--bs-danger-border-subtle) !important;
-    }
-
-    .border-light-subtle {
-        border-color: var(--bs-light-border-subtle) !important;
-    }
-
-    .border-dark-subtle {
-        border-color: var(--bs-dark-border-subtle) !important;
-    }
-
-    .border-1 {
-        border-width: 1px !important;
-    }
-
-    .border-2 {
-        border-width: 2px !important;
-    }
-
-    .border-3 {
-        border-width: 3px !important;
-    }
-
-    .border-4 {
-        border-width: 4px !important;
-    }
-
-    .border-5 {
-        border-width: 5px !important;
-    }
-
-    .border-opacity-10 {
-        --bs-border-opacity: 0.1;
-    }
-
-    .border-opacity-25 {
-        --bs-border-opacity: 0.25;
-    }
-
-    .border-opacity-50 {
-        --bs-border-opacity: 0.5;
-    }
-
-    .border-opacity-75 {
-        --bs-border-opacity: 0.75;
-    }
-
-    .border-opacity-100 {
-        --bs-border-opacity: 1;
-    }
-
-    .w-25 {
-        width: 25% !important;
-    }
-
-    .w-50 {
-        width: 50% !important;
-    }
-
-    .w-75 {
-        width: 75% !important;
-    }
-
-    .w-100 {
-        width: 100% !important;
-    }
-
-    .w-auto {
-        width: auto !important;
-    }
-
-    .mw-100 {
-        max-width: 100% !important;
-    }
-
-    .vw-100 {
-        width: 100vw !important;
-    }
-
-    .min-vw-100 {
-        min-width: 100vw !important;
-    }
-
-    .h-25 {
-        height: 25% !important;
-    }
-
-    .h-50 {
-        height: 50% !important;
-    }
-
-    .h-75 {
-        height: 75% !important;
-    }
-
-    .h-100 {
-        height: 100% !important;
-    }
-
-    .h-auto {
-        height: auto !important;
-    }
-
-    .mh-100 {
-        max-height: 100% !important;
-    }
-
-    .vh-100 {
-        height: 100vh !important;
-    }
-
-    .min-vh-100 {
-        min-height: 100vh !important;
-    }
-
-    .flex-fill {
-        flex: 1 1 auto !important;
-    }
-
-    .flex-row {
-        flex-direction: row !important;
-    }
-
-    .flex-column {
-        flex-direction: column !important;
-    }
-
-    .flex-row-reverse {
-        flex-direction: row-reverse !important;
-    }
-
-    .flex-column-reverse {
-        flex-direction: column-reverse !important;
-    }
-
-    .flex-grow-0 {
-        flex-grow: 0 !important;
-    }
-
-    .flex-grow-1 {
-        flex-grow: 1 !important;
-    }
-
-    .flex-shrink-0 {
-        flex-shrink: 0 !important;
-    }
-
-    .flex-shrink-1 {
-        flex-shrink: 1 !important;
-    }
-
-    .flex-wrap {
-        flex-wrap: wrap !important;
-    }
-
-    .flex-nowrap {
-        flex-wrap: nowrap !important;
-    }
-
-    .flex-wrap-reverse {
-        flex-wrap: wrap-reverse !important;
-    }
-
-    .justify-content-start {
-        justify-content: flex-start !important;
-    }
-
-    .justify-content-end {
-        justify-content: flex-end !important;
-    }
-
-    .justify-content-center {
-        justify-content: center !important;
-    }
-
-    .justify-content-between {
-        justify-content: space-between !important;
-    }
-
-    .justify-content-around {
-        justify-content: space-around !important;
-    }
-
-    .justify-content-evenly {
-        justify-content: space-evenly !important;
-    }
-
-    .align-items-start {
-        align-items: flex-start !important;
-    }
-
-    .align-items-end {
-        align-items: flex-end !important;
-    }
-
-    .align-items-center {
-        align-items: center !important;
-    }
-
-    .align-items-baseline {
-        align-items: baseline !important;
-    }
-
-    .align-items-stretch {
-        align-items: stretch !important;
-    }
-
-    .align-content-start {
-        align-content: flex-start !important;
-    }
-
-    .align-content-end {
-        align-content: flex-end !important;
-    }
-
-    .align-content-center {
-        align-content: center !important;
-    }
-
-    .align-content-between {
-        align-content: space-between !important;
-    }
-
-    .align-content-around {
-        align-content: space-around !important;
-    }
-
-    .align-content-stretch {
-        align-content: stretch !important;
-    }
-
-    .align-self-auto {
-        align-self: auto !important;
-    }
-
-    .align-self-start {
-        align-self: flex-start !important;
-    }
-
-    .align-self-end {
-        align-self: flex-end !important;
-    }
-
-    .align-self-center {
-        align-self: center !important;
-    }
-
-    .align-self-baseline {
-        align-self: baseline !important;
-    }
-
-    .align-self-stretch {
-        align-self: stretch !important;
-    }
-
-    .order-first {
-        order: -1 !important;
-    }
-
-    .order-0 {
-        order: 0 !important;
-    }
-
-    .order-1 {
-        order: 1 !important;
-    }
-
-    .order-2 {
-        order: 2 !important;
-    }
-
-    .order-3 {
-        order: 3 !important;
-    }
-
-    .order-4 {
-        order: 4 !important;
-    }
-
-    .order-5 {
-        order: 5 !important;
-    }
-
-    .order-last {
-        order: 6 !important;
-    }
-
-    .m-0 {
-        margin: 0 !important;
-    }
-
-    .m-1 {
-        margin: 0.25rem !important;
-    }
-
-    .m-2 {
-        margin: 0.5rem !important;
-    }
-
-    .m-3 {
-        margin: 1rem !important;
-    }
-
-    .m-4 {
-        margin: 1.5rem !important;
-    }
-
-    .m-5 {
-        margin: 3rem !important;
-    }
-
-    .m-auto {
-        margin: auto !important;
-    }
-
-    .mx-0 {
-        margin-right: 0 !important;
-        margin-left: 0 !important;
-    }
-
-    .mx-1 {
-        margin-right: 0.25rem !important;
-        margin-left: 0.25rem !important;
-    }
-
-    .mx-2 {
-        margin-right: 0.5rem !important;
-        margin-left: 0.5rem !important;
-    }
-
-    .mx-3 {
-        margin-right: 1rem !important;
-        margin-left: 1rem !important;
-    }
-
-    .mx-4 {
-        margin-right: 1.5rem !important;
-        margin-left: 1.5rem !important;
-    }
-
-    .mx-5 {
-        margin-right: 3rem !important;
-        margin-left: 3rem !important;
-    }
-
-    .mx-auto {
-        margin-right: auto !important;
-        margin-left: auto !important;
-    }
-
-    .my-0 {
-        margin-top: 0 !important;
-        margin-bottom: 0 !important;
-    }
-
-    .my-1 {
-        margin-top: 0.25rem !important;
-        margin-bottom: 0.25rem !important;
-    }
-
-    .my-2 {
-        margin-top: 0.5rem !important;
-        margin-bottom: 0.5rem !important;
-    }
-
-    .my-3 {
-        margin-top: 1rem !important;
-        margin-bottom: 1rem !important;
-    }
-
-    .my-4 {
-        margin-top: 1.5rem !important;
-        margin-bottom: 1.5rem !important;
-    }
-
-    .my-5 {
-        margin-top: 3rem !important;
-        margin-bottom: 3rem !important;
-    }
-
-    .my-auto {
-        margin-top: auto !important;
-        margin-bottom: auto !important;
-    }
-
-    .mt-0 {
-        margin-top: 0 !important;
-    }
-
-    .mt-1 {
-        margin-top: 0.25rem !important;
-    }
-
-    .mt-2 {
-        margin-top: 0.5rem !important;
-    }
-
-    .mt-3 {
-        margin-top: 1rem !important;
-    }
-
-    .mt-4 {
-        margin-top: 1.5rem !important;
-    }
-
-    .mt-5 {
-        margin-top: 3rem !important;
-    }
-
-    .mt-auto {
-        margin-top: auto !important;
-    }
-
-    .me-0 {
-        margin-right: 0 !important;
-    }
-
-    .me-1 {
-        margin-right: 0.25rem !important;
-    }
-
-    .me-2 {
-        margin-right: 0.5rem !important;
-    }
-
-    .me-3 {
-        margin-right: 1rem !important;
-    }
-
-    .me-4 {
-        margin-right: 1.5rem !important;
-    }
-
-    .me-5 {
-        margin-right: 3rem !important;
-    }
-
-    .me-auto {
-        margin-right: auto !important;
-    }
-
-    .mb-0 {
-        margin-bottom: 0 !important;
-    }
-
-    .mb-1 {
-        margin-bottom: 0.25rem !important;
-    }
-
-    .mb-2 {
-        margin-bottom: 0.5rem !important;
-    }
-
-    .mb-3 {
-        margin-bottom: 1rem !important;
-    }
-
-    .mb-4 {
-        margin-bottom: 1.5rem !important;
-    }
-
-    .mb-5 {
-        margin-bottom: 3rem !important;
-    }
-
-    .mb-auto {
-        margin-bottom: auto !important;
-    }
-
-    .ms-0 {
-        margin-left: 0 !important;
-    }
-
-    .ms-1 {
-        margin-left: 0.25rem !important;
-    }
-
-    .ms-2 {
-        margin-left: 0.5rem !important;
-    }
-
-    .ms-3 {
-        margin-left: 1rem !important;
-    }
-
-    .ms-4 {
-        margin-left: 1.5rem !important;
-    }
-
-    .ms-5 {
-        margin-left: 3rem !important;
-    }
-
-    .ms-auto {
-        margin-left: auto !important;
-    }
-
-    .p-0 {
-        padding: 0 !important;
-    }
-
-    .p-1 {
-        padding: 0.25rem !important;
-    }
-
-    .p-2 {
-        padding: 0.5rem !important;
-    }
-
-    .p-3 {
-        padding: 1rem !important;
-    }
-
-    .p-4 {
-        padding: 1.5rem !important;
-    }
-
-    .p-5 {
-        padding: 3rem !important;
-    }
-
-    .px-0 {
-        padding-right: 0 !important;
-        padding-left: 0 !important;
-    }
-
-    .px-1 {
-        padding-right: 0.25rem !important;
-        padding-left: 0.25rem !important;
-    }
-
-    .px-2 {
-        padding-right: 0.5rem !important;
-        padding-left: 0.5rem !important;
-    }
-
-    .px-3 {
-        padding-right: 1rem !important;
-        padding-left: 1rem !important;
-    }
-
-    .px-4 {
-        padding-right: 1.5rem !important;
-        padding-left: 1.5rem !important;
-    }
-
-    .px-5 {
-        padding-right: 3rem !important;
-        padding-left: 3rem !important;
-    }
-
-    .py-0 {
-        padding-top: 0 !important;
-        padding-bottom: 0 !important;
-    }
-
-    .py-1 {
-        padding-top: 0.25rem !important;
-        padding-bottom: 0.25rem !important;
-    }
-
-    .py-2 {
-        padding-top: 0.5rem !important;
-        padding-bottom: 0.5rem !important;
-    }
-
-    .py-3 {
-        padding-top: 1rem !important;
-        padding-bottom: 1rem !important;
-    }
-
-    .py-4 {
-        padding-top: 1.5rem !important;
-        padding-bottom: 1.5rem !important;
-    }
-
-    .py-5 {
-        padding-top: 3rem !important;
-        padding-bottom: 3rem !important;
-    }
-
-    .pt-0 {
-        padding-top: 0 !important;
-    }
-
-    .pt-1 {
-        padding-top: 0.25rem !important;
-    }
-
-    .pt-2 {
-        padding-top: 0.5rem !important;
-    }
-
-    .pt-3 {
-        padding-top: 1rem !important;
-    }
-
-    .pt-4 {
-        padding-top: 1.5rem !important;
-    }
-
-    .pt-5 {
-        padding-top: 3rem !important;
-    }
-
-    .pe-0 {
-        padding-right: 0 !important;
-    }
-
-    .pe-1 {
-        padding-right: 0.25rem !important;
-    }
-
-    .pe-2 {
-        padding-right: 0.5rem !important;
-    }
-
-    .pe-3 {
-        padding-right: 1rem !important;
-    }
-
-    .pe-4 {
-        padding-right: 1.5rem !important;
-    }
-
-    .pe-5 {
-        padding-right: 3rem !important;
-    }
-
-    .pb-0 {
-        padding-bottom: 0 !important;
-    }
-
-    .pb-1 {
-        padding-bottom: 0.25rem !important;
-    }
-
-    .pb-2 {
-        padding-bottom: 0.5rem !important;
-    }
-
-    .pb-3 {
-        padding-bottom: 1rem !important;
-    }
-
-    .pb-4 {
-        padding-bottom: 1.5rem !important;
-    }
-
-    .pb-5 {
-        padding-bottom: 3rem !important;
-    }
-
-    .ps-0 {
-        padding-left: 0 !important;
-    }
-
-    .ps-1 {
-        padding-left: 0.25rem !important;
-    }
-
-    .ps-2 {
-        padding-left: 0.5rem !important;
-    }
-
-    .ps-3 {
-        padding-left: 1rem !important;
-    }
-
-    .ps-4 {
-        padding-left: 1.5rem !important;
-    }
-
-    .ps-5 {
-        padding-left: 3rem !important;
-    }
-
-    .gap-0 {
-        gap: 0 !important;
-    }
-
-    .gap-1 {
-        gap: 0.25rem !important;
-    }
-
-    .gap-2 {
-        gap: 0.5rem !important;
-    }
-
-    .gap-3 {
-        gap: 1rem !important;
-    }
-
-    .gap-4 {
-        gap: 1.5rem !important;
-    }
-
-    .gap-5 {
-        gap: 3rem !important;
-    }
-
-    .row-gap-0 {
-        row-gap: 0 !important;
-    }
-
-    .row-gap-1 {
-        row-gap: 0.25rem !important;
-    }
-
-    .row-gap-2 {
-        row-gap: 0.5rem !important;
-    }
-
-    .row-gap-3 {
-        row-gap: 1rem !important;
-    }
-
-    .row-gap-4 {
-        row-gap: 1.5rem !important;
-    }
-
-    .row-gap-5 {
-        row-gap: 3rem !important;
-    }
-
-    .column-gap-0 {
-        column-gap: 0 !important;
-    }
-
-    .column-gap-1 {
-        column-gap: 0.25rem !important;
-    }
-
-    .column-gap-2 {
-        column-gap: 0.5rem !important;
-    }
-
-    .column-gap-3 {
-        column-gap: 1rem !important;
-    }
-
-    .column-gap-4 {
-        column-gap: 1.5rem !important;
-    }
-
-    .column-gap-5 {
-        column-gap: 3rem !important;
-    }
-
-    .font-monospace {
-        font-family: var(--bs-font-monospace) !important;
-    }
-
-    .fs-1 {
-        font-size: calc(1.375rem + 1.5vw) !important;
-    }
-
-    .fs-2 {
-        font-size: calc(1.325rem + 0.9vw) !important;
-    }
-
-    .fs-3 {
-        font-size: calc(1.3rem + 0.6vw) !important;
-    }
-
-    .fs-4 {
-        font-size: calc(1.275rem + 0.3vw) !important;
-    }
-
-    .fs-5 {
-        font-size: 1.25rem !important;
-    }
-
-    .fs-6 {
-        font-size: 1rem !important;
-    }
-
-    .fst-italic {
-        font-style: italic !important;
-    }
-
-    .fst-normal {
-        font-style: normal !important;
-    }
-
-    .fw-lighter {
-        font-weight: lighter !important;
-    }
-
-    .fw-light {
-        font-weight: 300 !important;
-    }
-
-    .fw-normal {
-        font-weight: 400 !important;
-    }
-
-    .fw-medium {
-        font-weight: 500 !important;
-    }
-
-    .fw-semibold {
-        font-weight: 600 !important;
-    }
-
-    .fw-bold {
-        font-weight: 700 !important;
-    }
-
-    .fw-bolder {
-        font-weight: bolder !important;
-    }
-
-    .lh-1 {
-        line-height: 1 !important;
-    }
-
-    .lh-sm {
-        line-height: 1.25 !important;
-    }
-
-    .lh-base {
-        line-height: 1.5 !important;
-    }
-
-    .lh-lg {
-        line-height: 2 !important;
-    }
-
-    .text-start {
-        text-align: left !important;
-    }
-
-    .text-end {
-        text-align: right !important;
-    }
-
-    .text-center {
-        text-align: center !important;
-    }
-
-    .text-decoration-none {
-        text-decoration: none !important;
-    }
-
-    .text-decoration-underline {
-        text-decoration: underline !important;
-    }
-
-    .text-decoration-line-through {
-        text-decoration: line-through !important;
-    }
-
-    .text-lowercase {
-        text-transform: lowercase !important;
-    }
-
-    .text-uppercase {
-        text-transform: uppercase !important;
-    }
-
-    .text-capitalize {
-        text-transform: capitalize !important;
-    }
-
-    .text-wrap {
-        white-space: normal !important;
-    }
-
-    .text-nowrap {
-        white-space: nowrap !important;
-    }
-
-    /* rtl:begin:remove */
-    .text-break {
-        word-wrap: break-word !important;
-        word-break: break-word !important;
-    }
-
-    /* rtl:end:remove */
-    .text-primary {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-secondary {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-success {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-info {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-warning {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-danger {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-light {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-dark {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-black {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-white {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-body {
-        --bs-text-opacity: 1;
-        color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;
-    }
-
-    .text-muted {
-        --bs-text-opacity: 1;
-        color: var(--bs-secondary-color) !important;
-    }
-
-    .text-black-50 {
-        --bs-text-opacity: 1;
-        color: rgba(0, 0, 0, 0.5) !important;
-    }
-
-    .text-white-50 {
-        --bs-text-opacity: 1;
-        color: rgba(255, 255, 255, 0.5) !important;
-    }
-
-    .text-body-secondary {
-        --bs-text-opacity: 1;
-        color: var(--bs-secondary-color) !important;
-    }
-
-    .text-body-tertiary {
-        --bs-text-opacity: 1;
-        color: var(--bs-tertiary-color) !important;
-    }
-
-    .text-body-emphasis {
-        --bs-text-opacity: 1;
-        color: var(--bs-emphasis-color) !important;
-    }
-
-    .text-reset {
-        --bs-text-opacity: 1;
-        color: inherit !important;
-    }
-
-    .text-opacity-25 {
-        --bs-text-opacity: 0.25;
-    }
-
-    .text-opacity-50 {
-        --bs-text-opacity: 0.5;
-    }
-
-    .text-opacity-75 {
-        --bs-text-opacity: 0.75;
-    }
-
-    .text-opacity-100 {
-        --bs-text-opacity: 1;
-    }
-
-    .text-primary-emphasis {
-        color: var(--bs-primary-text-emphasis) !important;
-    }
-
-    .text-secondary-emphasis {
-        color: var(--bs-secondary-text-emphasis) !important;
-    }
-
-    .text-success-emphasis {
-        color: var(--bs-success-text-emphasis) !important;
-    }
-
-    .text-info-emphasis {
-        color: var(--bs-info-text-emphasis) !important;
-    }
-
-    .text-warning-emphasis {
-        color: var(--bs-warning-text-emphasis) !important;
-    }
-
-    .text-danger-emphasis {
-        color: var(--bs-danger-text-emphasis) !important;
-    }
-
-    .text-light-emphasis {
-        color: var(--bs-light-text-emphasis) !important;
-    }
-
-    .text-dark-emphasis {
-        color: var(--bs-dark-text-emphasis) !important;
-    }
-
-    .link-opacity-10 {
-        --bs-link-opacity: 0.1;
-    }
-
-    .link-opacity-10-hover:hover {
-        --bs-link-opacity: 0.1;
-    }
-
-    .link-opacity-25 {
-        --bs-link-opacity: 0.25;
-    }
-
-    .link-opacity-25-hover:hover {
-        --bs-link-opacity: 0.25;
-    }
-
-    .link-opacity-50 {
-        --bs-link-opacity: 0.5;
-    }
-
-    .link-opacity-50-hover:hover {
-        --bs-link-opacity: 0.5;
-    }
-
-    .link-opacity-75 {
-        --bs-link-opacity: 0.75;
-    }
-
-    .link-opacity-75-hover:hover {
-        --bs-link-opacity: 0.75;
-    }
-
-    .link-opacity-100 {
-        --bs-link-opacity: 1;
-    }
-
-    .link-opacity-100-hover:hover {
-        --bs-link-opacity: 1;
-    }
-
-    .link-offset-1 {
-        text-underline-offset: 0.125em !important;
-    }
-
-    .link-offset-1-hover:hover {
-        text-underline-offset: 0.125em !important;
-    }
-
-    .link-offset-2 {
-        text-underline-offset: 0.25em !important;
-    }
-
-    .link-offset-2-hover:hover {
-        text-underline-offset: 0.25em !important;
-    }
-
-    .link-offset-3 {
-        text-underline-offset: 0.375em !important;
-    }
-
-    .link-offset-3-hover:hover {
-        text-underline-offset: 0.375em !important;
-    }
-
-    .link-underline-primary {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-secondary {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-success {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-info {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-warning {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-danger {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-light {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline-dark {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;
-    }
-
-    .link-underline {
-        --bs-link-underline-opacity: 1;
-        text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
-    }
-
-    .link-underline-opacity-0 {
-        --bs-link-underline-opacity: 0;
-    }
-
-    .link-underline-opacity-0-hover:hover {
-        --bs-link-underline-opacity: 0;
-    }
-
-    .link-underline-opacity-10 {
-        --bs-link-underline-opacity: 0.1;
-    }
-
-    .link-underline-opacity-10-hover:hover {
-        --bs-link-underline-opacity: 0.1;
-    }
-
-    .link-underline-opacity-25 {
-        --bs-link-underline-opacity: 0.25;
-    }
-
-    .link-underline-opacity-25-hover:hover {
-        --bs-link-underline-opacity: 0.25;
-    }
-
-    .link-underline-opacity-50 {
-        --bs-link-underline-opacity: 0.5;
-    }
-
-    .link-underline-opacity-50-hover:hover {
-        --bs-link-underline-opacity: 0.5;
-    }
-
-    .link-underline-opacity-75 {
-        --bs-link-underline-opacity: 0.75;
-    }
-
-    .link-underline-opacity-75-hover:hover {
-        --bs-link-underline-opacity: 0.75;
-    }
-
-    .link-underline-opacity-100 {
-        --bs-link-underline-opacity: 1;
-    }
-
-    .link-underline-opacity-100-hover:hover {
-        --bs-link-underline-opacity: 1;
-    }
-
-    .bg-primary {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-secondary {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-success {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-info {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-warning {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-danger {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-light {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-dark {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-black {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-white {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-body {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-transparent {
-        --bs-bg-opacity: 1;
-        background-color: transparent !important;
-    }
-
-    .bg-body-secondary {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-body-tertiary {
-        --bs-bg-opacity: 1;
-        background-color: rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important;
-    }
-
-    .bg-opacity-10 {
-        --bs-bg-opacity: 0.1;
-    }
-
-    .bg-opacity-25 {
-        --bs-bg-opacity: 0.25;
-    }
-
-    .bg-opacity-50 {
-        --bs-bg-opacity: 0.5;
-    }
-
-    .bg-opacity-75 {
-        --bs-bg-opacity: 0.75;
-    }
-
-    .bg-opacity-100 {
-        --bs-bg-opacity: 1;
-    }
-
-    .bg-primary-subtle {
-        background-color: var(--bs-primary-bg-subtle) !important;
-    }
-
-    .bg-secondary-subtle {
-        background-color: var(--bs-secondary-bg-subtle) !important;
-    }
-
-    .bg-success-subtle {
-        background-color: var(--bs-success-bg-subtle) !important;
-    }
-
-    .bg-info-subtle {
-        background-color: var(--bs-info-bg-subtle) !important;
-    }
-
-    .bg-warning-subtle {
-        background-color: var(--bs-warning-bg-subtle) !important;
-    }
-
-    .bg-danger-subtle {
-        background-color: var(--bs-danger-bg-subtle) !important;
-    }
-
-    .bg-light-subtle {
-        background-color: var(--bs-light-bg-subtle) !important;
-    }
-
-    .bg-dark-subtle {
-        background-color: var(--bs-dark-bg-subtle) !important;
-    }
-
-    .bg-gradient {
-        background-image: var(--bs-gradient) !important;
-    }
-
-    .user-select-all {
-        -webkit-user-select: all !important;
-        user-select: all !important;
-    }
-
-    .user-select-auto {
-        -webkit-user-select: auto !important;
-        user-select: auto !important;
-    }
-
-    .user-select-none {
-        -webkit-user-select: none !important;
-        user-select: none !important;
-    }
-
-    .pe-none {
-        pointer-events: none !important;
-    }
-
-    .pe-auto {
-        pointer-events: auto !important;
-    }
-
-    .rounded {
-        border-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-0 {
-        border-radius: 0 !important;
-    }
-
-    .rounded-1 {
-        border-radius: var(--bs-border-radius-sm) !important;
-    }
-
-    .rounded-2 {
-        border-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-3 {
-        border-radius: var(--bs-border-radius-lg) !important;
-    }
-
-    .rounded-4 {
-        border-radius: var(--bs-border-radius-xl) !important;
-    }
-
-    .rounded-5 {
-        border-radius: var(--bs-border-radius-xxl) !important;
-    }
-
-    .rounded-circle {
-        border-radius: 50% !important;
-    }
-
-    .rounded-pill {
-        border-radius: var(--bs-border-radius-pill) !important;
-    }
-
-    .rounded-top {
-        border-top-left-radius: var(--bs-border-radius) !important;
-        border-top-right-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-top-0 {
-        border-top-left-radius: 0 !important;
-        border-top-right-radius: 0 !important;
-    }
-
-    .rounded-top-1 {
-        border-top-left-radius: var(--bs-border-radius-sm) !important;
-        border-top-right-radius: var(--bs-border-radius-sm) !important;
-    }
-
-    .rounded-top-2 {
-        border-top-left-radius: var(--bs-border-radius) !important;
-        border-top-right-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-top-3 {
-        border-top-left-radius: var(--bs-border-radius-lg) !important;
-        border-top-right-radius: var(--bs-border-radius-lg) !important;
-    }
-
-    .rounded-top-4 {
-        border-top-left-radius: var(--bs-border-radius-xl) !important;
-        border-top-right-radius: var(--bs-border-radius-xl) !important;
-    }
-
-    .rounded-top-5 {
-        border-top-left-radius: var(--bs-border-radius-xxl) !important;
-        border-top-right-radius: var(--bs-border-radius-xxl) !important;
-    }
-
-    .rounded-top-circle {
-        border-top-left-radius: 50% !important;
-        border-top-right-radius: 50% !important;
-    }
-
-    .rounded-top-pill {
-        border-top-left-radius: var(--bs-border-radius-pill) !important;
-        border-top-right-radius: var(--bs-border-radius-pill) !important;
-    }
-
-    .rounded-end {
-        border-top-right-radius: var(--bs-border-radius) !important;
-        border-bottom-right-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-end-0 {
-        border-top-right-radius: 0 !important;
-        border-bottom-right-radius: 0 !important;
-    }
-
-    .rounded-end-1 {
-        border-top-right-radius: var(--bs-border-radius-sm) !important;
-        border-bottom-right-radius: var(--bs-border-radius-sm) !important;
-    }
-
-    .rounded-end-2 {
-        border-top-right-radius: var(--bs-border-radius) !important;
-        border-bottom-right-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-end-3 {
-        border-top-right-radius: var(--bs-border-radius-lg) !important;
-        border-bottom-right-radius: var(--bs-border-radius-lg) !important;
-    }
-
-    .rounded-end-4 {
-        border-top-right-radius: var(--bs-border-radius-xl) !important;
-        border-bottom-right-radius: var(--bs-border-radius-xl) !important;
-    }
-
-    .rounded-end-5 {
-        border-top-right-radius: var(--bs-border-radius-xxl) !important;
-        border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
-    }
-
-    .rounded-end-circle {
-        border-top-right-radius: 50% !important;
-        border-bottom-right-radius: 50% !important;
-    }
-
-    .rounded-end-pill {
-        border-top-right-radius: var(--bs-border-radius-pill) !important;
-        border-bottom-right-radius: var(--bs-border-radius-pill) !important;
-    }
-
-    .rounded-bottom {
-        border-bottom-right-radius: var(--bs-border-radius) !important;
-        border-bottom-left-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-bottom-0 {
-        border-bottom-right-radius: 0 !important;
-        border-bottom-left-radius: 0 !important;
-    }
-
-    .rounded-bottom-1 {
-        border-bottom-right-radius: var(--bs-border-radius-sm) !important;
-        border-bottom-left-radius: var(--bs-border-radius-sm) !important;
-    }
-
-    .rounded-bottom-2 {
-        border-bottom-right-radius: var(--bs-border-radius) !important;
-        border-bottom-left-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-bottom-3 {
-        border-bottom-right-radius: var(--bs-border-radius-lg) !important;
-        border-bottom-left-radius: var(--bs-border-radius-lg) !important;
-    }
-
-    .rounded-bottom-4 {
-        border-bottom-right-radius: var(--bs-border-radius-xl) !important;
-        border-bottom-left-radius: var(--bs-border-radius-xl) !important;
-    }
-
-    .rounded-bottom-5 {
-        border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
-        border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
-    }
-
-    .rounded-bottom-circle {
-        border-bottom-right-radius: 50% !important;
-        border-bottom-left-radius: 50% !important;
-    }
-
-    .rounded-bottom-pill {
-        border-bottom-right-radius: var(--bs-border-radius-pill) !important;
-        border-bottom-left-radius: var(--bs-border-radius-pill) !important;
-    }
-
-    .rounded-start {
-        border-bottom-left-radius: var(--bs-border-radius) !important;
-        border-top-left-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-start-0 {
-        border-bottom-left-radius: 0 !important;
-        border-top-left-radius: 0 !important;
-    }
-
-    .rounded-start-1 {
-        border-bottom-left-radius: var(--bs-border-radius-sm) !important;
-        border-top-left-radius: var(--bs-border-radius-sm) !important;
-    }
-
-    .rounded-start-2 {
-        border-bottom-left-radius: var(--bs-border-radius) !important;
-        border-top-left-radius: var(--bs-border-radius) !important;
-    }
-
-    .rounded-start-3 {
-        border-bottom-left-radius: var(--bs-border-radius-lg) !important;
-        border-top-left-radius: var(--bs-border-radius-lg) !important;
-    }
-
-    .rounded-start-4 {
-        border-bottom-left-radius: var(--bs-border-radius-xl) !important;
-        border-top-left-radius: var(--bs-border-radius-xl) !important;
-    }
-
-    .rounded-start-5 {
-        border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
-        border-top-left-radius: var(--bs-border-radius-xxl) !important;
-    }
-
-    .rounded-start-circle {
-        border-bottom-left-radius: 50% !important;
-        border-top-left-radius: 50% !important;
-    }
-
-    .rounded-start-pill {
-        border-bottom-left-radius: var(--bs-border-radius-pill) !important;
-        border-top-left-radius: var(--bs-border-radius-pill) !important;
-    }
-
-    .visible {
-        visibility: visible !important;
-    }
-
-    .invisible {
-        visibility: hidden !important;
-    }
-
-    .z-n1 {
-        z-index: -1 !important;
-    }
-
-    .z-0 {
-        z-index: 0 !important;
-    }
-
-    .z-1 {
-        z-index: 1 !important;
-    }
-
-    .z-2 {
-        z-index: 2 !important;
-    }
-
-    .z-3 {
-        z-index: 3 !important;
-    }
-
-    @media (min-width: 576px) {
-        .float-sm-start {
-            float: left !important;
-        }
-
-        .float-sm-end {
-            float: right !important;
-        }
-
-        .float-sm-none {
-            float: none !important;
-        }
-
-        .object-fit-sm-contain {
-            object-fit: contain !important;
-        }
-
-        .object-fit-sm-cover {
-            object-fit: cover !important;
-        }
-
-        .object-fit-sm-fill {
-            object-fit: fill !important;
-        }
-
-        .object-fit-sm-scale {
-            object-fit: scale-down !important;
-        }
-
-        .object-fit-sm-none {
-            object-fit: none !important;
-        }
-
-        .d-sm-inline {
-            display: inline !important;
-        }
-
-        .d-sm-inline-block {
-            display: inline-block !important;
-        }
-
-        .d-sm-block {
-            display: block !important;
-        }
-
-        .d-sm-grid {
-            display: grid !important;
-        }
-
-        .d-sm-inline-grid {
-            display: inline-grid !important;
-        }
-
-        .d-sm-table {
-            display: table !important;
-        }
-
-        .d-sm-table-row {
-            display: table-row !important;
-        }
-
-        .d-sm-table-cell {
-            display: table-cell !important;
-        }
-
-        .d-sm-flex {
-            display: flex !important;
-        }
-
-        .d-sm-inline-flex {
-            display: inline-flex !important;
-        }
-
-        .d-sm-none {
-            display: none !important;
-        }
-
-        .flex-sm-fill {
-            flex: 1 1 auto !important;
-        }
-
-        .flex-sm-row {
-            flex-direction: row !important;
-        }
-
-        .flex-sm-column {
-            flex-direction: column !important;
-        }
-
-        .flex-sm-row-reverse {
-            flex-direction: row-reverse !important;
-        }
-
-        .flex-sm-column-reverse {
-            flex-direction: column-reverse !important;
-        }
-
-        .flex-sm-grow-0 {
-            flex-grow: 0 !important;
-        }
-
-        .flex-sm-grow-1 {
-            flex-grow: 1 !important;
-        }
-
-        .flex-sm-shrink-0 {
-            flex-shrink: 0 !important;
-        }
-
-        .flex-sm-shrink-1 {
-            flex-shrink: 1 !important;
-        }
-
-        .flex-sm-wrap {
-            flex-wrap: wrap !important;
-        }
-
-        .flex-sm-nowrap {
-            flex-wrap: nowrap !important;
-        }
-
-        .flex-sm-wrap-reverse {
-            flex-wrap: wrap-reverse !important;
-        }
-
-        .justify-content-sm-start {
-            justify-content: flex-start !important;
-        }
-
-        .justify-content-sm-end {
-            justify-content: flex-end !important;
-        }
-
-        .justify-content-sm-center {
-            justify-content: center !important;
-        }
-
-        .justify-content-sm-between {
-            justify-content: space-between !important;
-        }
-
-        .justify-content-sm-around {
-            justify-content: space-around !important;
-        }
-
-        .justify-content-sm-evenly {
-            justify-content: space-evenly !important;
-        }
-
-        .align-items-sm-start {
-            align-items: flex-start !important;
-        }
-
-        .align-items-sm-end {
-            align-items: flex-end !important;
-        }
-
-        .align-items-sm-center {
-            align-items: center !important;
-        }
-
-        .align-items-sm-baseline {
-            align-items: baseline !important;
-        }
-
-        .align-items-sm-stretch {
-            align-items: stretch !important;
-        }
-
-        .align-content-sm-start {
-            align-content: flex-start !important;
-        }
-
-        .align-content-sm-end {
-            align-content: flex-end !important;
-        }
-
-        .align-content-sm-center {
-            align-content: center !important;
-        }
-
-        .align-content-sm-between {
-            align-content: space-between !important;
-        }
-
-        .align-content-sm-around {
-            align-content: space-around !important;
-        }
-
-        .align-content-sm-stretch {
-            align-content: stretch !important;
-        }
-
-        .align-self-sm-auto {
-            align-self: auto !important;
-        }
-
-        .align-self-sm-start {
-            align-self: flex-start !important;
-        }
-
-        .align-self-sm-end {
-            align-self: flex-end !important;
-        }
-
-        .align-self-sm-center {
-            align-self: center !important;
-        }
-
-        .align-self-sm-baseline {
-            align-self: baseline !important;
-        }
-
-        .align-self-sm-stretch {
-            align-self: stretch !important;
-        }
-
-        .order-sm-first {
-            order: -1 !important;
-        }
-
-        .order-sm-0 {
-            order: 0 !important;
-        }
-
-        .order-sm-1 {
-            order: 1 !important;
-        }
-
-        .order-sm-2 {
-            order: 2 !important;
-        }
-
-        .order-sm-3 {
-            order: 3 !important;
-        }
-
-        .order-sm-4 {
-            order: 4 !important;
-        }
-
-        .order-sm-5 {
-            order: 5 !important;
-        }
-
-        .order-sm-last {
-            order: 6 !important;
-        }
-
-        .m-sm-0 {
-            margin: 0 !important;
-        }
-
-        .m-sm-1 {
-            margin: 0.25rem !important;
-        }
-
-        .m-sm-2 {
-            margin: 0.5rem !important;
-        }
-
-        .m-sm-3 {
-            margin: 1rem !important;
-        }
-
-        .m-sm-4 {
-            margin: 1.5rem !important;
-        }
-
-        .m-sm-5 {
-            margin: 3rem !important;
-        }
-
-        .m-sm-auto {
-            margin: auto !important;
-        }
-
-        .mx-sm-0 {
-            margin-right: 0 !important;
-            margin-left: 0 !important;
-        }
-
-        .mx-sm-1 {
-            margin-right: 0.25rem !important;
-            margin-left: 0.25rem !important;
-        }
-
-        .mx-sm-2 {
-            margin-right: 0.5rem !important;
-            margin-left: 0.5rem !important;
-        }
-
-        .mx-sm-3 {
-            margin-right: 1rem !important;
-            margin-left: 1rem !important;
-        }
-
-        .mx-sm-4 {
-            margin-right: 1.5rem !important;
-            margin-left: 1.5rem !important;
-        }
-
-        .mx-sm-5 {
-            margin-right: 3rem !important;
-            margin-left: 3rem !important;
-        }
-
-        .mx-sm-auto {
-            margin-right: auto !important;
-            margin-left: auto !important;
-        }
-
-        .my-sm-0 {
-            margin-top: 0 !important;
-            margin-bottom: 0 !important;
-        }
-
-        .my-sm-1 {
-            margin-top: 0.25rem !important;
-            margin-bottom: 0.25rem !important;
-        }
-
-        .my-sm-2 {
-            margin-top: 0.5rem !important;
-            margin-bottom: 0.5rem !important;
-        }
-
-        .my-sm-3 {
-            margin-top: 1rem !important;
-            margin-bottom: 1rem !important;
-        }
-
-        .my-sm-4 {
-            margin-top: 1.5rem !important;
-            margin-bottom: 1.5rem !important;
-        }
-
-        .my-sm-5 {
-            margin-top: 3rem !important;
-            margin-bottom: 3rem !important;
-        }
-
-        .my-sm-auto {
-            margin-top: auto !important;
-            margin-bottom: auto !important;
-        }
-
-        .mt-sm-0 {
-            margin-top: 0 !important;
-        }
-
-        .mt-sm-1 {
-            margin-top: 0.25rem !important;
-        }
-
-        .mt-sm-2 {
-            margin-top: 0.5rem !important;
-        }
-
-        .mt-sm-3 {
-            margin-top: 1rem !important;
-        }
-
-        .mt-sm-4 {
-            margin-top: 1.5rem !important;
-        }
-
-        .mt-sm-5 {
-            margin-top: 3rem !important;
-        }
-
-        .mt-sm-auto {
-            margin-top: auto !important;
-        }
-
-        .me-sm-0 {
-            margin-right: 0 !important;
-        }
-
-        .me-sm-1 {
-            margin-right: 0.25rem !important;
-        }
-
-        .me-sm-2 {
-            margin-right: 0.5rem !important;
-        }
-
-        .me-sm-3 {
-            margin-right: 1rem !important;
-        }
-
-        .me-sm-4 {
-            margin-right: 1.5rem !important;
-        }
-
-        .me-sm-5 {
-            margin-right: 3rem !important;
-        }
-
-        .me-sm-auto {
-            margin-right: auto !important;
-        }
-
-        .mb-sm-0 {
-            margin-bottom: 0 !important;
-        }
-
-        .mb-sm-1 {
-            margin-bottom: 0.25rem !important;
-        }
-
-        .mb-sm-2 {
-            margin-bottom: 0.5rem !important;
-        }
-
-        .mb-sm-3 {
-            margin-bottom: 1rem !important;
-        }
-
-        .mb-sm-4 {
-            margin-bottom: 1.5rem !important;
-        }
-
-        .mb-sm-5 {
-            margin-bottom: 3rem !important;
-        }
-
-        .mb-sm-auto {
-            margin-bottom: auto !important;
-        }
-
-        .ms-sm-0 {
-            margin-left: 0 !important;
-        }
-
-        .ms-sm-1 {
-            margin-left: 0.25rem !important;
-        }
-
-        .ms-sm-2 {
-            margin-left: 0.5rem !important;
-        }
-
-        .ms-sm-3 {
-            margin-left: 1rem !important;
-        }
-
-        .ms-sm-4 {
-            margin-left: 1.5rem !important;
-        }
-
-        .ms-sm-5 {
-            margin-left: 3rem !important;
-        }
-
-        .ms-sm-auto {
-            margin-left: auto !important;
-        }
-
-        .p-sm-0 {
-            padding: 0 !important;
-        }
-
-        .p-sm-1 {
-            padding: 0.25rem !important;
-        }
-
-        .p-sm-2 {
-            padding: 0.5rem !important;
-        }
-
-        .p-sm-3 {
-            padding: 1rem !important;
-        }
-
-        .p-sm-4 {
-            padding: 1.5rem !important;
-        }
-
-        .p-sm-5 {
-            padding: 3rem !important;
-        }
-
-        .px-sm-0 {
-            padding-right: 0 !important;
-            padding-left: 0 !important;
-        }
-
-        .px-sm-1 {
-            padding-right: 0.25rem !important;
-            padding-left: 0.25rem !important;
-        }
-
-        .px-sm-2 {
-            padding-right: 0.5rem !important;
-            padding-left: 0.5rem !important;
-        }
-
-        .px-sm-3 {
-            padding-right: 1rem !important;
-            padding-left: 1rem !important;
-        }
-
-        .px-sm-4 {
-            padding-right: 1.5rem !important;
-            padding-left: 1.5rem !important;
-        }
-
-        .px-sm-5 {
-            padding-right: 3rem !important;
-            padding-left: 3rem !important;
-        }
-
-        .py-sm-0 {
-            padding-top: 0 !important;
-            padding-bottom: 0 !important;
-        }
-
-        .py-sm-1 {
-            padding-top: 0.25rem !important;
-            padding-bottom: 0.25rem !important;
-        }
-
-        .py-sm-2 {
-            padding-top: 0.5rem !important;
-            padding-bottom: 0.5rem !important;
-        }
-
-        .py-sm-3 {
-            padding-top: 1rem !important;
-            padding-bottom: 1rem !important;
-        }
-
-        .py-sm-4 {
-            padding-top: 1.5rem !important;
-            padding-bottom: 1.5rem !important;
-        }
-
-        .py-sm-5 {
-            padding-top: 3rem !important;
-            padding-bottom: 3rem !important;
-        }
-
-        .pt-sm-0 {
-            padding-top: 0 !important;
-        }
-
-        .pt-sm-1 {
-            padding-top: 0.25rem !important;
-        }
-
-        .pt-sm-2 {
-            padding-top: 0.5rem !important;
-        }
-
-        .pt-sm-3 {
-            padding-top: 1rem !important;
-        }
-
-        .pt-sm-4 {
-            padding-top: 1.5rem !important;
-        }
-
-        .pt-sm-5 {
-            padding-top: 3rem !important;
-        }
-
-        .pe-sm-0 {
-            padding-right: 0 !important;
-        }
-
-        .pe-sm-1 {
-            padding-right: 0.25rem !important;
-        }
-
-        .pe-sm-2 {
-            padding-right: 0.5rem !important;
-        }
-
-        .pe-sm-3 {
-            padding-right: 1rem !important;
-        }
-
-        .pe-sm-4 {
-            padding-right: 1.5rem !important;
-        }
-
-        .pe-sm-5 {
-            padding-right: 3rem !important;
-        }
-
-        .pb-sm-0 {
-            padding-bottom: 0 !important;
-        }
-
-        .pb-sm-1 {
-            padding-bottom: 0.25rem !important;
-        }
-
-        .pb-sm-2 {
-            padding-bottom: 0.5rem !important;
-        }
-
-        .pb-sm-3 {
-            padding-bottom: 1rem !important;
-        }
-
-        .pb-sm-4 {
-            padding-bottom: 1.5rem !important;
-        }
-
-        .pb-sm-5 {
-            padding-bottom: 3rem !important;
-        }
-
-        .ps-sm-0 {
-            padding-left: 0 !important;
-        }
-
-        .ps-sm-1 {
-            padding-left: 0.25rem !important;
-        }
-
-        .ps-sm-2 {
-            padding-left: 0.5rem !important;
-        }
-
-        .ps-sm-3 {
-            padding-left: 1rem !important;
-        }
-
-        .ps-sm-4 {
-            padding-left: 1.5rem !important;
-        }
-
-        .ps-sm-5 {
-            padding-left: 3rem !important;
-        }
-
-        .gap-sm-0 {
-            gap: 0 !important;
-        }
-
-        .gap-sm-1 {
-            gap: 0.25rem !important;
-        }
-
-        .gap-sm-2 {
-            gap: 0.5rem !important;
-        }
-
-        .gap-sm-3 {
-            gap: 1rem !important;
-        }
-
-        .gap-sm-4 {
-            gap: 1.5rem !important;
-        }
-
-        .gap-sm-5 {
-            gap: 3rem !important;
-        }
-
-        .row-gap-sm-0 {
-            row-gap: 0 !important;
-        }
-
-        .row-gap-sm-1 {
-            row-gap: 0.25rem !important;
-        }
-
-        .row-gap-sm-2 {
-            row-gap: 0.5rem !important;
-        }
-
-        .row-gap-sm-3 {
-            row-gap: 1rem !important;
-        }
-
-        .row-gap-sm-4 {
-            row-gap: 1.5rem !important;
-        }
-
-        .row-gap-sm-5 {
-            row-gap: 3rem !important;
-        }
-
-        .column-gap-sm-0 {
-            column-gap: 0 !important;
-        }
-
-        .column-gap-sm-1 {
-            column-gap: 0.25rem !important;
-        }
-
-        .column-gap-sm-2 {
-            column-gap: 0.5rem !important;
-        }
-
-        .column-gap-sm-3 {
-            column-gap: 1rem !important;
-        }
-
-        .column-gap-sm-4 {
-            column-gap: 1.5rem !important;
-        }
-
-        .column-gap-sm-5 {
-            column-gap: 3rem !important;
-        }
-
-        .text-sm-start {
-            text-align: left !important;
-        }
-
-        .text-sm-end {
-            text-align: right !important;
-        }
-
-        .text-sm-center {
-            text-align: center !important;
-        }
-    }
-
-    @media (min-width: 768px) {
-        .float-md-start {
-            float: left !important;
-        }
-
-        .float-md-end {
-            float: right !important;
-        }
-
-        .float-md-none {
-            float: none !important;
-        }
-
-        .object-fit-md-contain {
-            object-fit: contain !important;
-        }
-
-        .object-fit-md-cover {
-            object-fit: cover !important;
-        }
-
-        .object-fit-md-fill {
-            object-fit: fill !important;
-        }
-
-        .object-fit-md-scale {
-            object-fit: scale-down !important;
-        }
-
-        .object-fit-md-none {
-            object-fit: none !important;
-        }
-
-        .d-md-inline {
-            display: inline !important;
-        }
-
-        .d-md-inline-block {
-            display: inline-block !important;
-        }
-
-        .d-md-block {
-            display: block !important;
-        }
-
-        .d-md-grid {
-            display: grid !important;
-        }
-
-        .d-md-inline-grid {
-            display: inline-grid !important;
-        }
-
-        .d-md-table {
-            display: table !important;
-        }
-
-        .d-md-table-row {
-            display: table-row !important;
-        }
-
-        .d-md-table-cell {
-            display: table-cell !important;
-        }
-
-        .d-md-flex {
-            display: flex !important;
-        }
-
-        .d-md-inline-flex {
-            display: inline-flex !important;
-        }
-
-        .d-md-none {
-            display: none !important;
-        }
-
-        .flex-md-fill {
-            flex: 1 1 auto !important;
-        }
-
-        .flex-md-row {
-            flex-direction: row !important;
-        }
-
-        .flex-md-column {
-            flex-direction: column !important;
-        }
-
-        .flex-md-row-reverse {
-            flex-direction: row-reverse !important;
-        }
-
-        .flex-md-column-reverse {
-            flex-direction: column-reverse !important;
-        }
-
-        .flex-md-grow-0 {
-            flex-grow: 0 !important;
-        }
-
-        .flex-md-grow-1 {
-            flex-grow: 1 !important;
-        }
-
-        .flex-md-shrink-0 {
-            flex-shrink: 0 !important;
-        }
-
-        .flex-md-shrink-1 {
-            flex-shrink: 1 !important;
-        }
-
-        .flex-md-wrap {
-            flex-wrap: wrap !important;
-        }
-
-        .flex-md-nowrap {
-            flex-wrap: nowrap !important;
-        }
-
-        .flex-md-wrap-reverse {
-            flex-wrap: wrap-reverse !important;
-        }
-
-        .justify-content-md-start {
-            justify-content: flex-start !important;
-        }
-
-        .justify-content-md-end {
-            justify-content: flex-end !important;
-        }
-
-        .justify-content-md-center {
-            justify-content: center !important;
-        }
-
-        .justify-content-md-between {
-            justify-content: space-between !important;
-        }
-
-        .justify-content-md-around {
-            justify-content: space-around !important;
-        }
-
-        .justify-content-md-evenly {
-            justify-content: space-evenly !important;
-        }
-
-        .align-items-md-start {
-            align-items: flex-start !important;
-        }
-
-        .align-items-md-end {
-            align-items: flex-end !important;
-        }
-
-        .align-items-md-center {
-            align-items: center !important;
-        }
-
-        .align-items-md-baseline {
-            align-items: baseline !important;
-        }
-
-        .align-items-md-stretch {
-            align-items: stretch !important;
-        }
-
-        .align-content-md-start {
-            align-content: flex-start !important;
-        }
-
-        .align-content-md-end {
-            align-content: flex-end !important;
-        }
-
-        .align-content-md-center {
-            align-content: center !important;
-        }
-
-        .align-content-md-between {
-            align-content: space-between !important;
-        }
-
-        .align-content-md-around {
-            align-content: space-around !important;
-        }
-
-        .align-content-md-stretch {
-            align-content: stretch !important;
-        }
-
-        .align-self-md-auto {
-            align-self: auto !important;
-        }
-
-        .align-self-md-start {
-            align-self: flex-start !important;
-        }
-
-        .align-self-md-end {
-            align-self: flex-end !important;
-        }
-
-        .align-self-md-center {
-            align-self: center !important;
-        }
-
-        .align-self-md-baseline {
-            align-self: baseline !important;
-        }
-
-        .align-self-md-stretch {
-            align-self: stretch !important;
-        }
-
-        .order-md-first {
-            order: -1 !important;
-        }
-
-        .order-md-0 {
-            order: 0 !important;
-        }
-
-        .order-md-1 {
-            order: 1 !important;
-        }
-
-        .order-md-2 {
-            order: 2 !important;
-        }
-
-        .order-md-3 {
-            order: 3 !important;
-        }
-
-        .order-md-4 {
-            order: 4 !important;
-        }
-
-        .order-md-5 {
-            order: 5 !important;
-        }
-
-        .order-md-last {
-            order: 6 !important;
-        }
-
-        .m-md-0 {
-            margin: 0 !important;
-        }
-
-        .m-md-1 {
-            margin: 0.25rem !important;
-        }
-
-        .m-md-2 {
-            margin: 0.5rem !important;
-        }
-
-        .m-md-3 {
-            margin: 1rem !important;
-        }
-
-        .m-md-4 {
-            margin: 1.5rem !important;
-        }
-
-        .m-md-5 {
-            margin: 3rem !important;
-        }
-
-        .m-md-auto {
-            margin: auto !important;
-        }
-
-        .mx-md-0 {
-            margin-right: 0 !important;
-            margin-left: 0 !important;
-        }
-
-        .mx-md-1 {
-            margin-right: 0.25rem !important;
-            margin-left: 0.25rem !important;
-        }
-
-        .mx-md-2 {
-            margin-right: 0.5rem !important;
-            margin-left: 0.5rem !important;
-        }
-
-        .mx-md-3 {
-            margin-right: 1rem !important;
-            margin-left: 1rem !important;
-        }
-
-        .mx-md-4 {
-            margin-right: 1.5rem !important;
-            margin-left: 1.5rem !important;
-        }
-
-        .mx-md-5 {
-            margin-right: 3rem !important;
-            margin-left: 3rem !important;
-        }
-
-        .mx-md-auto {
-            margin-right: auto !important;
-            margin-left: auto !important;
-        }
-
-        .my-md-0 {
-            margin-top: 0 !important;
-            margin-bottom: 0 !important;
-        }
-
-        .my-md-1 {
-            margin-top: 0.25rem !important;
-            margin-bottom: 0.25rem !important;
-        }
-
-        .my-md-2 {
-            margin-top: 0.5rem !important;
-            margin-bottom: 0.5rem !important;
-        }
-
-        .my-md-3 {
-            margin-top: 1rem !important;
-            margin-bottom: 1rem !important;
-        }
-
-        .my-md-4 {
-            margin-top: 1.5rem !important;
-            margin-bottom: 1.5rem !important;
-        }
-
-        .my-md-5 {
-            margin-top: 3rem !important;
-            margin-bottom: 3rem !important;
-        }
-
-        .my-md-auto {
-            margin-top: auto !important;
-            margin-bottom: auto !important;
-        }
-
-        .mt-md-0 {
-            margin-top: 0 !important;
-        }
-
-        .mt-md-1 {
-            margin-top: 0.25rem !important;
-        }
-
-        .mt-md-2 {
-            margin-top: 0.5rem !important;
-        }
-
-        .mt-md-3 {
-            margin-top: 1rem !important;
-        }
-
-        .mt-md-4 {
-            margin-top: 1.5rem !important;
-        }
-
-        .mt-md-5 {
-            margin-top: 3rem !important;
-        }
-
-        .mt-md-auto {
-            margin-top: auto !important;
-        }
-
-        .me-md-0 {
-            margin-right: 0 !important;
-        }
-
-        .me-md-1 {
-            margin-right: 0.25rem !important;
-        }
-
-        .me-md-2 {
-            margin-right: 0.5rem !important;
-        }
-
-        .me-md-3 {
-            margin-right: 1rem !important;
-        }
-
-        .me-md-4 {
-            margin-right: 1.5rem !important;
-        }
-
-        .me-md-5 {
-            margin-right: 3rem !important;
-        }
-
-        .me-md-auto {
-            margin-right: auto !important;
-        }
-
-        .mb-md-0 {
-            margin-bottom: 0 !important;
-        }
-
-        .mb-md-1 {
-            margin-bottom: 0.25rem !important;
-        }
-
-        .mb-md-2 {
-            margin-bottom: 0.5rem !important;
-        }
-
-        .mb-md-3 {
-            margin-bottom: 1rem !important;
-        }
-
-        .mb-md-4 {
-            margin-bottom: 1.5rem !important;
-        }
-
-        .mb-md-5 {
-            margin-bottom: 3rem !important;
-        }
-
-        .mb-md-auto {
-            margin-bottom: auto !important;
-        }
-
-        .ms-md-0 {
-            margin-left: 0 !important;
-        }
-
-        .ms-md-1 {
-            margin-left: 0.25rem !important;
-        }
-
-        .ms-md-2 {
-            margin-left: 0.5rem !important;
-        }
-
-        .ms-md-3 {
-            margin-left: 1rem !important;
-        }
-
-        .ms-md-4 {
-            margin-left: 1.5rem !important;
-        }
-
-        .ms-md-5 {
-            margin-left: 3rem !important;
-        }
-
-        .ms-md-auto {
-            margin-left: auto !important;
-        }
-
-        .p-md-0 {
-            padding: 0 !important;
-        }
-
-        .p-md-1 {
-            padding: 0.25rem !important;
-        }
-
-        .p-md-2 {
-            padding: 0.5rem !important;
-        }
-
-        .p-md-3 {
-            padding: 1rem !important;
-        }
-
-        .p-md-4 {
-            padding: 1.5rem !important;
-        }
-
-        .p-md-5 {
-            padding: 3rem !important;
-        }
-
-        .px-md-0 {
-            padding-right: 0 !important;
-            padding-left: 0 !important;
-        }
-
-        .px-md-1 {
-            padding-right: 0.25rem !important;
-            padding-left: 0.25rem !important;
-        }
-
-        .px-md-2 {
-            padding-right: 0.5rem !important;
-            padding-left: 0.5rem !important;
-        }
-
-        .px-md-3 {
-            padding-right: 1rem !important;
-            padding-left: 1rem !important;
-        }
-
-        .px-md-4 {
-            padding-right: 1.5rem !important;
-            padding-left: 1.5rem !important;
-        }
-
-        .px-md-5 {
-            padding-right: 3rem !important;
-            padding-left: 3rem !important;
-        }
-
-        .py-md-0 {
-            padding-top: 0 !important;
-            padding-bottom: 0 !important;
-        }
-
-        .py-md-1 {
-            padding-top: 0.25rem !important;
-            padding-bottom: 0.25rem !important;
-        }
-
-        .py-md-2 {
-            padding-top: 0.5rem !important;
-            padding-bottom: 0.5rem !important;
-        }
-
-        .py-md-3 {
-            padding-top: 1rem !important;
-            padding-bottom: 1rem !important;
-        }
-
-        .py-md-4 {
-            padding-top: 1.5rem !important;
-            padding-bottom: 1.5rem !important;
-        }
-
-        .py-md-5 {
-            padding-top: 3rem !important;
-            padding-bottom: 3rem !important;
-        }
-
-        .pt-md-0 {
-            padding-top: 0 !important;
-        }
-
-        .pt-md-1 {
-            padding-top: 0.25rem !important;
-        }
-
-        .pt-md-2 {
-            padding-top: 0.5rem !important;
-        }
-
-        .pt-md-3 {
-            padding-top: 1rem !important;
-        }
-
-        .pt-md-4 {
-            padding-top: 1.5rem !important;
-        }
-
-        .pt-md-5 {
-            padding-top: 3rem !important;
-        }
-
-        .pe-md-0 {
-            padding-right: 0 !important;
-        }
-
-        .pe-md-1 {
-            padding-right: 0.25rem !important;
-        }
-
-        .pe-md-2 {
-            padding-right: 0.5rem !important;
-        }
-
-        .pe-md-3 {
-            padding-right: 1rem !important;
-        }
-
-        .pe-md-4 {
-            padding-right: 1.5rem !important;
-        }
-
-        .pe-md-5 {
-            padding-right: 3rem !important;
-        }
-
-        .pb-md-0 {
-            padding-bottom: 0 !important;
-        }
-
-        .pb-md-1 {
-            padding-bottom: 0.25rem !important;
-        }
-
-        .pb-md-2 {
-            padding-bottom: 0.5rem !important;
-        }
-
-        .pb-md-3 {
-            padding-bottom: 1rem !important;
-        }
-
-        .pb-md-4 {
-            padding-bottom: 1.5rem !important;
-        }
-
-        .pb-md-5 {
-            padding-bottom: 3rem !important;
-        }
-
-        .ps-md-0 {
-            padding-left: 0 !important;
-        }
-
-        .ps-md-1 {
-            padding-left: 0.25rem !important;
-        }
-
-        .ps-md-2 {
-            padding-left: 0.5rem !important;
-        }
-
-        .ps-md-3 {
-            padding-left: 1rem !important;
-        }
-
-        .ps-md-4 {
-            padding-left: 1.5rem !important;
-        }
-
-        .ps-md-5 {
-            padding-left: 3rem !important;
-        }
-
-        .gap-md-0 {
-            gap: 0 !important;
-        }
-
-        .gap-md-1 {
-            gap: 0.25rem !important;
-        }
-
-        .gap-md-2 {
-            gap: 0.5rem !important;
-        }
-
-        .gap-md-3 {
-            gap: 1rem !important;
-        }
-
-        .gap-md-4 {
-            gap: 1.5rem !important;
-        }
-
-        .gap-md-5 {
-            gap: 3rem !important;
-        }
-
-        .row-gap-md-0 {
-            row-gap: 0 !important;
-        }
-
-        .row-gap-md-1 {
-            row-gap: 0.25rem !important;
-        }
-
-        .row-gap-md-2 {
-            row-gap: 0.5rem !important;
-        }
-
-        .row-gap-md-3 {
-            row-gap: 1rem !important;
-        }
-
-        .row-gap-md-4 {
-            row-gap: 1.5rem !important;
-        }
-
-        .row-gap-md-5 {
-            row-gap: 3rem !important;
-        }
-
-        .column-gap-md-0 {
-            column-gap: 0 !important;
-        }
-
-        .column-gap-md-1 {
-            column-gap: 0.25rem !important;
-        }
-
-        .column-gap-md-2 {
-            column-gap: 0.5rem !important;
-        }
-
-        .column-gap-md-3 {
-            column-gap: 1rem !important;
-        }
-
-        .column-gap-md-4 {
-            column-gap: 1.5rem !important;
-        }
-
-        .column-gap-md-5 {
-            column-gap: 3rem !important;
-        }
-
-        .text-md-start {
-            text-align: left !important;
-        }
-
-        .text-md-end {
-            text-align: right !important;
-        }
-
-        .text-md-center {
-            text-align: center !important;
-        }
-    }
-
-    @media (min-width: 992px) {
-        .float-lg-start {
-            float: left !important;
-        }
-
-        .float-lg-end {
-            float: right !important;
-        }
-
-        .float-lg-none {
-            float: none !important;
-        }
-
-        .object-fit-lg-contain {
-            object-fit: contain !important;
-        }
-
-        .object-fit-lg-cover {
-            object-fit: cover !important;
-        }
-
-        .object-fit-lg-fill {
-            object-fit: fill !important;
-        }
-
-        .object-fit-lg-scale {
-            object-fit: scale-down !important;
-        }
-
-        .object-fit-lg-none {
-            object-fit: none !important;
-        }
-
-        .d-lg-inline {
-            display: inline !important;
-        }
-
-        .d-lg-inline-block {
-            display: inline-block !important;
-        }
-
-        .d-lg-block {
-            display: block !important;
-        }
-
-        .d-lg-grid {
-            display: grid !important;
-        }
-
-        .d-lg-inline-grid {
-            display: inline-grid !important;
-        }
-
-        .d-lg-table {
-            display: table !important;
-        }
-
-        .d-lg-table-row {
-            display: table-row !important;
-        }
-
-        .d-lg-table-cell {
-            display: table-cell !important;
-        }
-
-        .d-lg-flex {
-            display: flex !important;
-        }
-
-        .d-lg-inline-flex {
-            display: inline-flex !important;
-        }
-
-        .d-lg-none {
-            display: none !important;
-        }
-
-        .flex-lg-fill {
-            flex: 1 1 auto !important;
-        }
-
-        .flex-lg-row {
-            flex-direction: row !important;
-        }
-
-        .flex-lg-column {
-            flex-direction: column !important;
-        }
-
-        .flex-lg-row-reverse {
-            flex-direction: row-reverse !important;
-        }
-
-        .flex-lg-column-reverse {
-            flex-direction: column-reverse !important;
-        }
-
-        .flex-lg-grow-0 {
-            flex-grow: 0 !important;
-        }
-
-        .flex-lg-grow-1 {
-            flex-grow: 1 !important;
-        }
-
-        .flex-lg-shrink-0 {
-            flex-shrink: 0 !important;
-        }
-
-        .flex-lg-shrink-1 {
-            flex-shrink: 1 !important;
-        }
-
-        .flex-lg-wrap {
-            flex-wrap: wrap !important;
-        }
-
-        .flex-lg-nowrap {
-            flex-wrap: nowrap !important;
-        }
-
-        .flex-lg-wrap-reverse {
-            flex-wrap: wrap-reverse !important;
-        }
-
-        .justify-content-lg-start {
-            justify-content: flex-start !important;
-        }
-
-        .justify-content-lg-end {
-            justify-content: flex-end !important;
-        }
-
-        .justify-content-lg-center {
-            justify-content: center !important;
-        }
-
-        .justify-content-lg-between {
-            justify-content: space-between !important;
-        }
-
-        .justify-content-lg-around {
-            justify-content: space-around !important;
-        }
-
-        .justify-content-lg-evenly {
-            justify-content: space-evenly !important;
-        }
-
-        .align-items-lg-start {
-            align-items: flex-start !important;
-        }
-
-        .align-items-lg-end {
-            align-items: flex-end !important;
-        }
-
-        .align-items-lg-center {
-            align-items: center !important;
-        }
-
-        .align-items-lg-baseline {
-            align-items: baseline !important;
-        }
-
-        .align-items-lg-stretch {
-            align-items: stretch !important;
-        }
-
-        .align-content-lg-start {
-            align-content: flex-start !important;
-        }
-
-        .align-content-lg-end {
-            align-content: flex-end !important;
-        }
-
-        .align-content-lg-center {
-            align-content: center !important;
-        }
-
-        .align-content-lg-between {
-            align-content: space-between !important;
-        }
-
-        .align-content-lg-around {
-            align-content: space-around !important;
-        }
-
-        .align-content-lg-stretch {
-            align-content: stretch !important;
-        }
-
-        .align-self-lg-auto {
-            align-self: auto !important;
-        }
-
-        .align-self-lg-start {
-            align-self: flex-start !important;
-        }
-
-        .align-self-lg-end {
-            align-self: flex-end !important;
-        }
-
-        .align-self-lg-center {
-            align-self: center !important;
-        }
-
-        .align-self-lg-baseline {
-            align-self: baseline !important;
-        }
-
-        .align-self-lg-stretch {
-            align-self: stretch !important;
-        }
-
-        .order-lg-first {
-            order: -1 !important;
-        }
-
-        .order-lg-0 {
-            order: 0 !important;
-        }
-
-        .order-lg-1 {
-            order: 1 !important;
-        }
-
-        .order-lg-2 {
-            order: 2 !important;
-        }
-
-        .order-lg-3 {
-            order: 3 !important;
-        }
-
-        .order-lg-4 {
-            order: 4 !important;
-        }
-
-        .order-lg-5 {
-            order: 5 !important;
-        }
-
-        .order-lg-last {
-            order: 6 !important;
-        }
-
-        .m-lg-0 {
-            margin: 0 !important;
-        }
-
-        .m-lg-1 {
-            margin: 0.25rem !important;
-        }
-
-        .m-lg-2 {
-            margin: 0.5rem !important;
-        }
-
-        .m-lg-3 {
-            margin: 1rem !important;
-        }
-
-        .m-lg-4 {
-            margin: 1.5rem !important;
-        }
-
-        .m-lg-5 {
-            margin: 3rem !important;
-        }
-
-        .m-lg-auto {
-            margin: auto !important;
-        }
-
-        .mx-lg-0 {
-            margin-right: 0 !important;
-            margin-left: 0 !important;
-        }
-
-        .mx-lg-1 {
-            margin-right: 0.25rem !important;
-            margin-left: 0.25rem !important;
-        }
-
-        .mx-lg-2 {
-            margin-right: 0.5rem !important;
-            margin-left: 0.5rem !important;
-        }
-
-        .mx-lg-3 {
-            margin-right: 1rem !important;
-            margin-left: 1rem !important;
-        }
-
-        .mx-lg-4 {
-            margin-right: 1.5rem !important;
-            margin-left: 1.5rem !important;
-        }
-
-        .mx-lg-5 {
-            margin-right: 3rem !important;
-            margin-left: 3rem !important;
-        }
-
-        .mx-lg-auto {
-            margin-right: auto !important;
-            margin-left: auto !important;
-        }
-
-        .my-lg-0 {
-            margin-top: 0 !important;
-            margin-bottom: 0 !important;
-        }
-
-        .my-lg-1 {
-            margin-top: 0.25rem !important;
-            margin-bottom: 0.25rem !important;
-        }
-
-        .my-lg-2 {
-            margin-top: 0.5rem !important;
-            margin-bottom: 0.5rem !important;
-        }
-
-        .my-lg-3 {
-            margin-top: 1rem !important;
-            margin-bottom: 1rem !important;
-        }
-
-        .my-lg-4 {
-            margin-top: 1.5rem !important;
-            margin-bottom: 1.5rem !important;
-        }
-
-        .my-lg-5 {
-            margin-top: 3rem !important;
-            margin-bottom: 3rem !important;
-        }
-
-        .my-lg-auto {
-            margin-top: auto !important;
-            margin-bottom: auto !important;
-        }
-
-        .mt-lg-0 {
-            margin-top: 0 !important;
-        }
-
-        .mt-lg-1 {
-            margin-top: 0.25rem !important;
-        }
-
-        .mt-lg-2 {
-            margin-top: 0.5rem !important;
-        }
-
-        .mt-lg-3 {
-            margin-top: 1rem !important;
-        }
-
-        .mt-lg-4 {
-            margin-top: 1.5rem !important;
-        }
-
-        .mt-lg-5 {
-            margin-top: 3rem !important;
-        }
-
-        .mt-lg-auto {
-            margin-top: auto !important;
-        }
-
-        .me-lg-0 {
-            margin-right: 0 !important;
-        }
-
-        .me-lg-1 {
-            margin-right: 0.25rem !important;
-        }
-
-        .me-lg-2 {
-            margin-right: 0.5rem !important;
-        }
-
-        .me-lg-3 {
-            margin-right: 1rem !important;
-        }
-
-        .me-lg-4 {
-            margin-right: 1.5rem !important;
-        }
-
-        .me-lg-5 {
-            margin-right: 3rem !important;
-        }
-
-        .me-lg-auto {
-            margin-right: auto !important;
-        }
-
-        .mb-lg-0 {
-            margin-bottom: 0 !important;
-        }
-
-        .mb-lg-1 {
-            margin-bottom: 0.25rem !important;
-        }
-
-        .mb-lg-2 {
-            margin-bottom: 0.5rem !important;
-        }
-
-        .mb-lg-3 {
-            margin-bottom: 1rem !important;
-        }
-
-        .mb-lg-4 {
-            margin-bottom: 1.5rem !important;
-        }
-
-        .mb-lg-5 {
-            margin-bottom: 3rem !important;
-        }
-
-        .mb-lg-auto {
-            margin-bottom: auto !important;
-        }
-
-        .ms-lg-0 {
-            margin-left: 0 !important;
-        }
-
-        .ms-lg-1 {
-            margin-left: 0.25rem !important;
-        }
-
-        .ms-lg-2 {
-            margin-left: 0.5rem !important;
-        }
-
-        .ms-lg-3 {
-            margin-left: 1rem !important;
-        }
-
-        .ms-lg-4 {
-            margin-left: 1.5rem !important;
-        }
-
-        .ms-lg-5 {
-            margin-left: 3rem !important;
-        }
-
-        .ms-lg-auto {
-            margin-left: auto !important;
-        }
-
-        .p-lg-0 {
-            padding: 0 !important;
-        }
-
-        .p-lg-1 {
-            padding: 0.25rem !important;
-        }
-
-        .p-lg-2 {
-            padding: 0.5rem !important;
-        }
-
-        .p-lg-3 {
-            padding: 1rem !important;
-        }
-
-        .p-lg-4 {
-            padding: 1.5rem !important;
-        }
-
-        .p-lg-5 {
-            padding: 3rem !important;
-        }
-
-        .px-lg-0 {
-            padding-right: 0 !important;
-            padding-left: 0 !important;
-        }
-
-        .px-lg-1 {
-            padding-right: 0.25rem !important;
-            padding-left: 0.25rem !important;
-        }
-
-        .px-lg-2 {
-            padding-right: 0.5rem !important;
-            padding-left: 0.5rem !important;
-        }
-
-        .px-lg-3 {
-            padding-right: 1rem !important;
-            padding-left: 1rem !important;
-        }
-
-        .px-lg-4 {
-            padding-right: 1.5rem !important;
-            padding-left: 1.5rem !important;
-        }
-
-        .px-lg-5 {
-            padding-right: 3rem !important;
-            padding-left: 3rem !important;
-        }
-
-        .py-lg-0 {
-            padding-top: 0 !important;
-            padding-bottom: 0 !important;
-        }
-
-        .py-lg-1 {
-            padding-top: 0.25rem !important;
-            padding-bottom: 0.25rem !important;
-        }
-
-        .py-lg-2 {
-            padding-top: 0.5rem !important;
-            padding-bottom: 0.5rem !important;
-        }
-
-        .py-lg-3 {
-            padding-top: 1rem !important;
-            padding-bottom: 1rem !important;
-        }
-
-        .py-lg-4 {
-            padding-top: 1.5rem !important;
-            padding-bottom: 1.5rem !important;
-        }
-
-        .py-lg-5 {
-            padding-top: 3rem !important;
-            padding-bottom: 3rem !important;
-        }
-
-        .pt-lg-0 {
-            padding-top: 0 !important;
-        }
-
-        .pt-lg-1 {
-            padding-top: 0.25rem !important;
-        }
-
-        .pt-lg-2 {
-            padding-top: 0.5rem !important;
-        }
-
-        .pt-lg-3 {
-            padding-top: 1rem !important;
-        }
-
-        .pt-lg-4 {
-            padding-top: 1.5rem !important;
-        }
-
-        .pt-lg-5 {
-            padding-top: 3rem !important;
-        }
-
-        .pe-lg-0 {
-            padding-right: 0 !important;
-        }
-
-        .pe-lg-1 {
-            padding-right: 0.25rem !important;
-        }
-
-        .pe-lg-2 {
-            padding-right: 0.5rem !important;
-        }
-
-        .pe-lg-3 {
-            padding-right: 1rem !important;
-        }
-
-        .pe-lg-4 {
-            padding-right: 1.5rem !important;
-        }
-
-        .pe-lg-5 {
-            padding-right: 3rem !important;
-        }
-
-        .pb-lg-0 {
-            padding-bottom: 0 !important;
-        }
-
-        .pb-lg-1 {
-            padding-bottom: 0.25rem !important;
-        }
-
-        .pb-lg-2 {
-            padding-bottom: 0.5rem !important;
-        }
-
-        .pb-lg-3 {
-            padding-bottom: 1rem !important;
-        }
-
-        .pb-lg-4 {
-            padding-bottom: 1.5rem !important;
-        }
-
-        .pb-lg-5 {
-            padding-bottom: 3rem !important;
-        }
-
-        .ps-lg-0 {
-            padding-left: 0 !important;
-        }
-
-        .ps-lg-1 {
-            padding-left: 0.25rem !important;
-        }
-
-        .ps-lg-2 {
-            padding-left: 0.5rem !important;
-        }
-
-        .ps-lg-3 {
-            padding-left: 1rem !important;
-        }
-
-        .ps-lg-4 {
-            padding-left: 1.5rem !important;
-        }
-
-        .ps-lg-5 {
-            padding-left: 3rem !important;
-        }
-
-        .gap-lg-0 {
-            gap: 0 !important;
-        }
-
-        .gap-lg-1 {
-            gap: 0.25rem !important;
-        }
-
-        .gap-lg-2 {
-            gap: 0.5rem !important;
-        }
-
-        .gap-lg-3 {
-            gap: 1rem !important;
-        }
-
-        .gap-lg-4 {
-            gap: 1.5rem !important;
-        }
-
-        .gap-lg-5 {
-            gap: 3rem !important;
-        }
-
-        .row-gap-lg-0 {
-            row-gap: 0 !important;
-        }
-
-        .row-gap-lg-1 {
-            row-gap: 0.25rem !important;
-        }
-
-        .row-gap-lg-2 {
-            row-gap: 0.5rem !important;
-        }
-
-        .row-gap-lg-3 {
-            row-gap: 1rem !important;
-        }
-
-        .row-gap-lg-4 {
-            row-gap: 1.5rem !important;
-        }
-
-        .row-gap-lg-5 {
-            row-gap: 3rem !important;
-        }
-
-        .column-gap-lg-0 {
-            column-gap: 0 !important;
-        }
-
-        .column-gap-lg-1 {
-            column-gap: 0.25rem !important;
-        }
-
-        .column-gap-lg-2 {
-            column-gap: 0.5rem !important;
-        }
-
-        .column-gap-lg-3 {
-            column-gap: 1rem !important;
-        }
-
-        .column-gap-lg-4 {
-            column-gap: 1.5rem !important;
-        }
-
-        .column-gap-lg-5 {
-            column-gap: 3rem !important;
-        }
-
-        .text-lg-start {
-            text-align: left !important;
-        }
-
-        .text-lg-end {
-            text-align: right !important;
-        }
-
-        .text-lg-center {
-            text-align: center !important;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .float-xl-start {
-            float: left !important;
-        }
-
-        .float-xl-end {
-            float: right !important;
-        }
-
-        .float-xl-none {
-            float: none !important;
-        }
-
-        .object-fit-xl-contain {
-            object-fit: contain !important;
-        }
-
-        .object-fit-xl-cover {
-            object-fit: cover !important;
-        }
-
-        .object-fit-xl-fill {
-            object-fit: fill !important;
-        }
-
-        .object-fit-xl-scale {
-            object-fit: scale-down !important;
-        }
-
-        .object-fit-xl-none {
-            object-fit: none !important;
-        }
-
-        .d-xl-inline {
-            display: inline !important;
-        }
-
-        .d-xl-inline-block {
-            display: inline-block !important;
-        }
-
-        .d-xl-block {
-            display: block !important;
-        }
-
-        .d-xl-grid {
-            display: grid !important;
-        }
-
-        .d-xl-inline-grid {
-            display: inline-grid !important;
-        }
-
-        .d-xl-table {
-            display: table !important;
-        }
-
-        .d-xl-table-row {
-            display: table-row !important;
-        }
-
-        .d-xl-table-cell {
-            display: table-cell !important;
-        }
-
-        .d-xl-flex {
-            display: flex !important;
-        }
-
-        .d-xl-inline-flex {
-            display: inline-flex !important;
-        }
-
-        .d-xl-none {
-            display: none !important;
-        }
-
-        .flex-xl-fill {
-            flex: 1 1 auto !important;
-        }
-
-        .flex-xl-row {
-            flex-direction: row !important;
-        }
-
-        .flex-xl-column {
-            flex-direction: column !important;
-        }
-
-        .flex-xl-row-reverse {
-            flex-direction: row-reverse !important;
-        }
-
-        .flex-xl-column-reverse {
-            flex-direction: column-reverse !important;
-        }
-
-        .flex-xl-grow-0 {
-            flex-grow: 0 !important;
-        }
-
-        .flex-xl-grow-1 {
-            flex-grow: 1 !important;
-        }
-
-        .flex-xl-shrink-0 {
-            flex-shrink: 0 !important;
-        }
-
-        .flex-xl-shrink-1 {
-            flex-shrink: 1 !important;
-        }
-
-        .flex-xl-wrap {
-            flex-wrap: wrap !important;
-        }
-
-        .flex-xl-nowrap {
-            flex-wrap: nowrap !important;
-        }
-
-        .flex-xl-wrap-reverse {
-            flex-wrap: wrap-reverse !important;
-        }
-
-        .justify-content-xl-start {
-            justify-content: flex-start !important;
-        }
-
-        .justify-content-xl-end {
-            justify-content: flex-end !important;
-        }
-
-        .justify-content-xl-center {
-            justify-content: center !important;
-        }
-
-        .justify-content-xl-between {
-            justify-content: space-between !important;
-        }
-
-        .justify-content-xl-around {
-            justify-content: space-around !important;
-        }
-
-        .justify-content-xl-evenly {
-            justify-content: space-evenly !important;
-        }
-
-        .align-items-xl-start {
-            align-items: flex-start !important;
-        }
-
-        .align-items-xl-end {
-            align-items: flex-end !important;
-        }
-
-        .align-items-xl-center {
-            align-items: center !important;
-        }
-
-        .align-items-xl-baseline {
-            align-items: baseline !important;
-        }
-
-        .align-items-xl-stretch {
-            align-items: stretch !important;
-        }
-
-        .align-content-xl-start {
-            align-content: flex-start !important;
-        }
-
-        .align-content-xl-end {
-            align-content: flex-end !important;
-        }
-
-        .align-content-xl-center {
-            align-content: center !important;
-        }
-
-        .align-content-xl-between {
-            align-content: space-between !important;
-        }
-
-        .align-content-xl-around {
-            align-content: space-around !important;
-        }
-
-        .align-content-xl-stretch {
-            align-content: stretch !important;
-        }
-
-        .align-self-xl-auto {
-            align-self: auto !important;
-        }
-
-        .align-self-xl-start {
-            align-self: flex-start !important;
-        }
-
-        .align-self-xl-end {
-            align-self: flex-end !important;
-        }
-
-        .align-self-xl-center {
-            align-self: center !important;
-        }
-
-        .align-self-xl-baseline {
-            align-self: baseline !important;
-        }
-
-        .align-self-xl-stretch {
-            align-self: stretch !important;
-        }
-
-        .order-xl-first {
-            order: -1 !important;
-        }
-
-        .order-xl-0 {
-            order: 0 !important;
-        }
-
-        .order-xl-1 {
-            order: 1 !important;
-        }
-
-        .order-xl-2 {
-            order: 2 !important;
-        }
-
-        .order-xl-3 {
-            order: 3 !important;
-        }
-
-        .order-xl-4 {
-            order: 4 !important;
-        }
-
-        .order-xl-5 {
-            order: 5 !important;
-        }
-
-        .order-xl-last {
-            order: 6 !important;
-        }
-
-        .m-xl-0 {
-            margin: 0 !important;
-        }
-
-        .m-xl-1 {
-            margin: 0.25rem !important;
-        }
-
-        .m-xl-2 {
-            margin: 0.5rem !important;
-        }
-
-        .m-xl-3 {
-            margin: 1rem !important;
-        }
-
-        .m-xl-4 {
-            margin: 1.5rem !important;
-        }
-
-        .m-xl-5 {
-            margin: 3rem !important;
-        }
-
-        .m-xl-auto {
-            margin: auto !important;
-        }
-
-        .mx-xl-0 {
-            margin-right: 0 !important;
-            margin-left: 0 !important;
-        }
-
-        .mx-xl-1 {
-            margin-right: 0.25rem !important;
-            margin-left: 0.25rem !important;
-        }
-
-        .mx-xl-2 {
-            margin-right: 0.5rem !important;
-            margin-left: 0.5rem !important;
-        }
-
-        .mx-xl-3 {
-            margin-right: 1rem !important;
-            margin-left: 1rem !important;
-        }
-
-        .mx-xl-4 {
-            margin-right: 1.5rem !important;
-            margin-left: 1.5rem !important;
-        }
-
-        .mx-xl-5 {
-            margin-right: 3rem !important;
-            margin-left: 3rem !important;
-        }
-
-        .mx-xl-auto {
-            margin-right: auto !important;
-            margin-left: auto !important;
-        }
-
-        .my-xl-0 {
-            margin-top: 0 !important;
-            margin-bottom: 0 !important;
-        }
-
-        .my-xl-1 {
-            margin-top: 0.25rem !important;
-            margin-bottom: 0.25rem !important;
-        }
-
-        .my-xl-2 {
-            margin-top: 0.5rem !important;
-            margin-bottom: 0.5rem !important;
-        }
-
-        .my-xl-3 {
-            margin-top: 1rem !important;
-            margin-bottom: 1rem !important;
-        }
-
-        .my-xl-4 {
-            margin-top: 1.5rem !important;
-            margin-bottom: 1.5rem !important;
-        }
-
-        .my-xl-5 {
-            margin-top: 3rem !important;
-            margin-bottom: 3rem !important;
-        }
-
-        .my-xl-auto {
-            margin-top: auto !important;
-            margin-bottom: auto !important;
-        }
-
-        .mt-xl-0 {
-            margin-top: 0 !important;
-        }
-
-        .mt-xl-1 {
-            margin-top: 0.25rem !important;
-        }
-
-        .mt-xl-2 {
-            margin-top: 0.5rem !important;
-        }
-
-        .mt-xl-3 {
-            margin-top: 1rem !important;
-        }
-
-        .mt-xl-4 {
-            margin-top: 1.5rem !important;
-        }
-
-        .mt-xl-5 {
-            margin-top: 3rem !important;
-        }
-
-        .mt-xl-auto {
-            margin-top: auto !important;
-        }
-
-        .me-xl-0 {
-            margin-right: 0 !important;
-        }
-
-        .me-xl-1 {
-            margin-right: 0.25rem !important;
-        }
-
-        .me-xl-2 {
-            margin-right: 0.5rem !important;
-        }
-
-        .me-xl-3 {
-            margin-right: 1rem !important;
-        }
-
-        .me-xl-4 {
-            margin-right: 1.5rem !important;
-        }
-
-        .me-xl-5 {
-            margin-right: 3rem !important;
-        }
-
-        .me-xl-auto {
-            margin-right: auto !important;
-        }
-
-        .mb-xl-0 {
-            margin-bottom: 0 !important;
-        }
-
-        .mb-xl-1 {
-            margin-bottom: 0.25rem !important;
-        }
-
-        .mb-xl-2 {
-            margin-bottom: 0.5rem !important;
-        }
-
-        .mb-xl-3 {
-            margin-bottom: 1rem !important;
-        }
-
-        .mb-xl-4 {
-            margin-bottom: 1.5rem !important;
-        }
-
-        .mb-xl-5 {
-            margin-bottom: 3rem !important;
-        }
-
-        .mb-xl-auto {
-            margin-bottom: auto !important;
-        }
-
-        .ms-xl-0 {
-            margin-left: 0 !important;
-        }
-
-        .ms-xl-1 {
-            margin-left: 0.25rem !important;
-        }
-
-        .ms-xl-2 {
-            margin-left: 0.5rem !important;
-        }
-
-        .ms-xl-3 {
-            margin-left: 1rem !important;
-        }
-
-        .ms-xl-4 {
-            margin-left: 1.5rem !important;
-        }
-
-        .ms-xl-5 {
-            margin-left: 3rem !important;
-        }
-
-        .ms-xl-auto {
-            margin-left: auto !important;
-        }
-
-        .p-xl-0 {
-            padding: 0 !important;
-        }
-
-        .p-xl-1 {
-            padding: 0.25rem !important;
-        }
-
-        .p-xl-2 {
-            padding: 0.5rem !important;
-        }
-
-        .p-xl-3 {
-            padding: 1rem !important;
-        }
-
-        .p-xl-4 {
-            padding: 1.5rem !important;
-        }
-
-        .p-xl-5 {
-            padding: 3rem !important;
-        }
-
-        .px-xl-0 {
-            padding-right: 0 !important;
-            padding-left: 0 !important;
-        }
-
-        .px-xl-1 {
-            padding-right: 0.25rem !important;
-            padding-left: 0.25rem !important;
-        }
-
-        .px-xl-2 {
-            padding-right: 0.5rem !important;
-            padding-left: 0.5rem !important;
-        }
-
-        .px-xl-3 {
-            padding-right: 1rem !important;
-            padding-left: 1rem !important;
-        }
-
-        .px-xl-4 {
-            padding-right: 1.5rem !important;
-            padding-left: 1.5rem !important;
-        }
-
-        .px-xl-5 {
-            padding-right: 3rem !important;
-            padding-left: 3rem !important;
-        }
-
-        .py-xl-0 {
-            padding-top: 0 !important;
-            padding-bottom: 0 !important;
-        }
-
-        .py-xl-1 {
-            padding-top: 0.25rem !important;
-            padding-bottom: 0.25rem !important;
-        }
-
-        .py-xl-2 {
-            padding-top: 0.5rem !important;
-            padding-bottom: 0.5rem !important;
-        }
-
-        .py-xl-3 {
-            padding-top: 1rem !important;
-            padding-bottom: 1rem !important;
-        }
-
-        .py-xl-4 {
-            padding-top: 1.5rem !important;
-            padding-bottom: 1.5rem !important;
-        }
-
-        .py-xl-5 {
-            padding-top: 3rem !important;
-            padding-bottom: 3rem !important;
-        }
-
-        .pt-xl-0 {
-            padding-top: 0 !important;
-        }
-
-        .pt-xl-1 {
-            padding-top: 0.25rem !important;
-        }
-
-        .pt-xl-2 {
-            padding-top: 0.5rem !important;
-        }
-
-        .pt-xl-3 {
-            padding-top: 1rem !important;
-        }
-
-        .pt-xl-4 {
-            padding-top: 1.5rem !important;
-        }
-
-        .pt-xl-5 {
-            padding-top: 3rem !important;
-        }
-
-        .pe-xl-0 {
-            padding-right: 0 !important;
-        }
-
-        .pe-xl-1 {
-            padding-right: 0.25rem !important;
-        }
-
-        .pe-xl-2 {
-            padding-right: 0.5rem !important;
-        }
-
-        .pe-xl-3 {
-            padding-right: 1rem !important;
-        }
-
-        .pe-xl-4 {
-            padding-right: 1.5rem !important;
-        }
-
-        .pe-xl-5 {
-            padding-right: 3rem !important;
-        }
-
-        .pb-xl-0 {
-            padding-bottom: 0 !important;
-        }
-
-        .pb-xl-1 {
-            padding-bottom: 0.25rem !important;
-        }
-
-        .pb-xl-2 {
-            padding-bottom: 0.5rem !important;
-        }
-
-        .pb-xl-3 {
-            padding-bottom: 1rem !important;
-        }
-
-        .pb-xl-4 {
-            padding-bottom: 1.5rem !important;
-        }
-
-        .pb-xl-5 {
-            padding-bottom: 3rem !important;
-        }
-
-        .ps-xl-0 {
-            padding-left: 0 !important;
-        }
-
-        .ps-xl-1 {
-            padding-left: 0.25rem !important;
-        }
-
-        .ps-xl-2 {
-            padding-left: 0.5rem !important;
-        }
-
-        .ps-xl-3 {
-            padding-left: 1rem !important;
-        }
-
-        .ps-xl-4 {
-            padding-left: 1.5rem !important;
-        }
-
-        .ps-xl-5 {
-            padding-left: 3rem !important;
-        }
-
-        .gap-xl-0 {
-            gap: 0 !important;
-        }
-
-        .gap-xl-1 {
-            gap: 0.25rem !important;
-        }
-
-        .gap-xl-2 {
-            gap: 0.5rem !important;
-        }
-
-        .gap-xl-3 {
-            gap: 1rem !important;
-        }
-
-        .gap-xl-4 {
-            gap: 1.5rem !important;
-        }
-
-        .gap-xl-5 {
-            gap: 3rem !important;
-        }
-
-        .row-gap-xl-0 {
-            row-gap: 0 !important;
-        }
-
-        .row-gap-xl-1 {
-            row-gap: 0.25rem !important;
-        }
-
-        .row-gap-xl-2 {
-            row-gap: 0.5rem !important;
-        }
-
-        .row-gap-xl-3 {
-            row-gap: 1rem !important;
-        }
-
-        .row-gap-xl-4 {
-            row-gap: 1.5rem !important;
-        }
-
-        .row-gap-xl-5 {
-            row-gap: 3rem !important;
-        }
-
-        .column-gap-xl-0 {
-            column-gap: 0 !important;
-        }
-
-        .column-gap-xl-1 {
-            column-gap: 0.25rem !important;
-        }
-
-        .column-gap-xl-2 {
-            column-gap: 0.5rem !important;
-        }
-
-        .column-gap-xl-3 {
-            column-gap: 1rem !important;
-        }
-
-        .column-gap-xl-4 {
-            column-gap: 1.5rem !important;
-        }
-
-        .column-gap-xl-5 {
-            column-gap: 3rem !important;
-        }
-
-        .text-xl-start {
-            text-align: left !important;
-        }
-
-        .text-xl-end {
-            text-align: right !important;
-        }
-
-        .text-xl-center {
-            text-align: center !important;
-        }
-    }
-
-    @media (min-width: 1400px) {
-        .float-xxl-start {
-            float: left !important;
-        }
-
-        .float-xxl-end {
-            float: right !important;
-        }
-
-        .float-xxl-none {
-            float: none !important;
-        }
-
-        .object-fit-xxl-contain {
-            object-fit: contain !important;
-        }
-
-        .object-fit-xxl-cover {
-            object-fit: cover !important;
-        }
-
-        .object-fit-xxl-fill {
-            object-fit: fill !important;
-        }
-
-        .object-fit-xxl-scale {
-            object-fit: scale-down !important;
-        }
-
-        .object-fit-xxl-none {
-            object-fit: none !important;
-        }
-
-        .d-xxl-inline {
-            display: inline !important;
-        }
-
-        .d-xxl-inline-block {
-            display: inline-block !important;
-        }
-
-        .d-xxl-block {
-            display: block !important;
-        }
-
-        .d-xxl-grid {
-            display: grid !important;
-        }
-
-        .d-xxl-inline-grid {
-            display: inline-grid !important;
-        }
-
-        .d-xxl-table {
-            display: table !important;
-        }
-
-        .d-xxl-table-row {
-            display: table-row !important;
-        }
-
-        .d-xxl-table-cell {
-            display: table-cell !important;
-        }
-
-        .d-xxl-flex {
-            display: flex !important;
-        }
-
-        .d-xxl-inline-flex {
-            display: inline-flex !important;
-        }
-
-        .d-xxl-none {
-            display: none !important;
-        }
-
-        .flex-xxl-fill {
-            flex: 1 1 auto !important;
-        }
-
-        .flex-xxl-row {
-            flex-direction: row !important;
-        }
-
-        .flex-xxl-column {
-            flex-direction: column !important;
-        }
-
-        .flex-xxl-row-reverse {
-            flex-direction: row-reverse !important;
-        }
-
-        .flex-xxl-column-reverse {
-            flex-direction: column-reverse !important;
-        }
-
-        .flex-xxl-grow-0 {
-            flex-grow: 0 !important;
-        }
-
-        .flex-xxl-grow-1 {
-            flex-grow: 1 !important;
-        }
-
-        .flex-xxl-shrink-0 {
-            flex-shrink: 0 !important;
-        }
-
-        .flex-xxl-shrink-1 {
-            flex-shrink: 1 !important;
-        }
-
-        .flex-xxl-wrap {
-            flex-wrap: wrap !important;
-        }
-
-        .flex-xxl-nowrap {
-            flex-wrap: nowrap !important;
-        }
-
-        .flex-xxl-wrap-reverse {
-            flex-wrap: wrap-reverse !important;
-        }
-
-        .justify-content-xxl-start {
-            justify-content: flex-start !important;
-        }
-
-        .justify-content-xxl-end {
-            justify-content: flex-end !important;
-        }
-
-        .justify-content-xxl-center {
-            justify-content: center !important;
-        }
-
-        .justify-content-xxl-between {
-            justify-content: space-between !important;
-        }
-
-        .justify-content-xxl-around {
-            justify-content: space-around !important;
-        }
-
-        .justify-content-xxl-evenly {
-            justify-content: space-evenly !important;
-        }
-
-        .align-items-xxl-start {
-            align-items: flex-start !important;
-        }
-
-        .align-items-xxl-end {
-            align-items: flex-end !important;
-        }
-
-        .align-items-xxl-center {
-            align-items: center !important;
-        }
-
-        .align-items-xxl-baseline {
-            align-items: baseline !important;
-        }
-
-        .align-items-xxl-stretch {
-            align-items: stretch !important;
-        }
-
-        .align-content-xxl-start {
-            align-content: flex-start !important;
-        }
-
-        .align-content-xxl-end {
-            align-content: flex-end !important;
-        }
-
-        .align-content-xxl-center {
-            align-content: center !important;
-        }
-
-        .align-content-xxl-between {
-            align-content: space-between !important;
-        }
-
-        .align-content-xxl-around {
-            align-content: space-around !important;
-        }
-
-        .align-content-xxl-stretch {
-            align-content: stretch !important;
-        }
-
-        .align-self-xxl-auto {
-            align-self: auto !important;
-        }
-
-        .align-self-xxl-start {
-            align-self: flex-start !important;
-        }
-
-        .align-self-xxl-end {
-            align-self: flex-end !important;
-        }
-
-        .align-self-xxl-center {
-            align-self: center !important;
-        }
-
-        .align-self-xxl-baseline {
-            align-self: baseline !important;
-        }
-
-        .align-self-xxl-stretch {
-            align-self: stretch !important;
-        }
-
-        .order-xxl-first {
-            order: -1 !important;
-        }
-
-        .order-xxl-0 {
-            order: 0 !important;
-        }
-
-        .order-xxl-1 {
-            order: 1 !important;
-        }
-
-        .order-xxl-2 {
-            order: 2 !important;
-        }
-
-        .order-xxl-3 {
-            order: 3 !important;
-        }
-
-        .order-xxl-4 {
-            order: 4 !important;
-        }
-
-        .order-xxl-5 {
-            order: 5 !important;
-        }
-
-        .order-xxl-last {
-            order: 6 !important;
-        }
-
-        .m-xxl-0 {
-            margin: 0 !important;
-        }
-
-        .m-xxl-1 {
-            margin: 0.25rem !important;
-        }
-
-        .m-xxl-2 {
-            margin: 0.5rem !important;
-        }
-
-        .m-xxl-3 {
-            margin: 1rem !important;
-        }
-
-        .m-xxl-4 {
-            margin: 1.5rem !important;
-        }
-
-        .m-xxl-5 {
-            margin: 3rem !important;
-        }
-
-        .m-xxl-auto {
-            margin: auto !important;
-        }
-
-        .mx-xxl-0 {
-            margin-right: 0 !important;
-            margin-left: 0 !important;
-        }
-
-        .mx-xxl-1 {
-            margin-right: 0.25rem !important;
-            margin-left: 0.25rem !important;
-        }
-
-        .mx-xxl-2 {
-            margin-right: 0.5rem !important;
-            margin-left: 0.5rem !important;
-        }
-
-        .mx-xxl-3 {
-            margin-right: 1rem !important;
-            margin-left: 1rem !important;
-        }
-
-        .mx-xxl-4 {
-            margin-right: 1.5rem !important;
-            margin-left: 1.5rem !important;
-        }
-
-        .mx-xxl-5 {
-            margin-right: 3rem !important;
-            margin-left: 3rem !important;
-        }
-
-        .mx-xxl-auto {
-            margin-right: auto !important;
-            margin-left: auto !important;
-        }
-
-        .my-xxl-0 {
-            margin-top: 0 !important;
-            margin-bottom: 0 !important;
-        }
-
-        .my-xxl-1 {
-            margin-top: 0.25rem !important;
-            margin-bottom: 0.25rem !important;
-        }
-
-        .my-xxl-2 {
-            margin-top: 0.5rem !important;
-            margin-bottom: 0.5rem !important;
-        }
-
-        .my-xxl-3 {
-            margin-top: 1rem !important;
-            margin-bottom: 1rem !important;
-        }
-
-        .my-xxl-4 {
-            margin-top: 1.5rem !important;
-            margin-bottom: 1.5rem !important;
-        }
-
-        .my-xxl-5 {
-            margin-top: 3rem !important;
-            margin-bottom: 3rem !important;
-        }
-
-        .my-xxl-auto {
-            margin-top: auto !important;
-            margin-bottom: auto !important;
-        }
-
-        .mt-xxl-0 {
-            margin-top: 0 !important;
-        }
-
-        .mt-xxl-1 {
-            margin-top: 0.25rem !important;
-        }
-
-        .mt-xxl-2 {
-            margin-top: 0.5rem !important;
-        }
-
-        .mt-xxl-3 {
-            margin-top: 1rem !important;
-        }
-
-        .mt-xxl-4 {
-            margin-top: 1.5rem !important;
-        }
-
-        .mt-xxl-5 {
-            margin-top: 3rem !important;
-        }
-
-        .mt-xxl-auto {
-            margin-top: auto !important;
-        }
-
-        .me-xxl-0 {
-            margin-right: 0 !important;
-        }
-
-        .me-xxl-1 {
-            margin-right: 0.25rem !important;
-        }
-
-        .me-xxl-2 {
-            margin-right: 0.5rem !important;
-        }
-
-        .me-xxl-3 {
-            margin-right: 1rem !important;
-        }
-
-        .me-xxl-4 {
-            margin-right: 1.5rem !important;
-        }
-
-        .me-xxl-5 {
-            margin-right: 3rem !important;
-        }
-
-        .me-xxl-auto {
-            margin-right: auto !important;
-        }
-
-        .mb-xxl-0 {
-            margin-bottom: 0 !important;
-        }
-
-        .mb-xxl-1 {
-            margin-bottom: 0.25rem !important;
-        }
-
-        .mb-xxl-2 {
-            margin-bottom: 0.5rem !important;
-        }
-
-        .mb-xxl-3 {
-            margin-bottom: 1rem !important;
-        }
-
-        .mb-xxl-4 {
-            margin-bottom: 1.5rem !important;
-        }
-
-        .mb-xxl-5 {
-            margin-bottom: 3rem !important;
-        }
-
-        .mb-xxl-auto {
-            margin-bottom: auto !important;
-        }
-
-        .ms-xxl-0 {
-            margin-left: 0 !important;
-        }
-
-        .ms-xxl-1 {
-            margin-left: 0.25rem !important;
-        }
-
-        .ms-xxl-2 {
-            margin-left: 0.5rem !important;
-        }
-
-        .ms-xxl-3 {
-            margin-left: 1rem !important;
-        }
-
-        .ms-xxl-4 {
-            margin-left: 1.5rem !important;
-        }
-
-        .ms-xxl-5 {
-            margin-left: 3rem !important;
-        }
-
-        .ms-xxl-auto {
-            margin-left: auto !important;
-        }
-
-        .p-xxl-0 {
-            padding: 0 !important;
-        }
-
-        .p-xxl-1 {
-            padding: 0.25rem !important;
-        }
-
-        .p-xxl-2 {
-            padding: 0.5rem !important;
-        }
-
-        .p-xxl-3 {
-            padding: 1rem !important;
-        }
-
-        .p-xxl-4 {
-            padding: 1.5rem !important;
-        }
-
-        .p-xxl-5 {
-            padding: 3rem !important;
-        }
-
-        .px-xxl-0 {
-            padding-right: 0 !important;
-            padding-left: 0 !important;
-        }
-
-        .px-xxl-1 {
-            padding-right: 0.25rem !important;
-            padding-left: 0.25rem !important;
-        }
-
-        .px-xxl-2 {
-            padding-right: 0.5rem !important;
-            padding-left: 0.5rem !important;
-        }
-
-        .px-xxl-3 {
-            padding-right: 1rem !important;
-            padding-left: 1rem !important;
-        }
-
-        .px-xxl-4 {
-            padding-right: 1.5rem !important;
-            padding-left: 1.5rem !important;
-        }
-
-        .px-xxl-5 {
-            padding-right: 3rem !important;
-            padding-left: 3rem !important;
-        }
-
-        .py-xxl-0 {
-            padding-top: 0 !important;
-            padding-bottom: 0 !important;
-        }
-
-        .py-xxl-1 {
-            padding-top: 0.25rem !important;
-            padding-bottom: 0.25rem !important;
-        }
-
-        .py-xxl-2 {
-            padding-top: 0.5rem !important;
-            padding-bottom: 0.5rem !important;
-        }
-
-        .py-xxl-3 {
-            padding-top: 1rem !important;
-            padding-bottom: 1rem !important;
-        }
-
-        .py-xxl-4 {
-            padding-top: 1.5rem !important;
-            padding-bottom: 1.5rem !important;
-        }
-
-        .py-xxl-5 {
-            padding-top: 3rem !important;
-            padding-bottom: 3rem !important;
-        }
-
-        .pt-xxl-0 {
-            padding-top: 0 !important;
-        }
-
-        .pt-xxl-1 {
-            padding-top: 0.25rem !important;
-        }
-
-        .pt-xxl-2 {
-            padding-top: 0.5rem !important;
-        }
-
-        .pt-xxl-3 {
-            padding-top: 1rem !important;
-        }
-
-        .pt-xxl-4 {
-            padding-top: 1.5rem !important;
-        }
-
-        .pt-xxl-5 {
-            padding-top: 3rem !important;
-        }
-
-        .pe-xxl-0 {
-            padding-right: 0 !important;
-        }
-
-        .pe-xxl-1 {
-            padding-right: 0.25rem !important;
-        }
-
-        .pe-xxl-2 {
-            padding-right: 0.5rem !important;
-        }
-
-        .pe-xxl-3 {
-            padding-right: 1rem !important;
-        }
-
-        .pe-xxl-4 {
-            padding-right: 1.5rem !important;
-        }
-
-        .pe-xxl-5 {
-            padding-right: 3rem !important;
-        }
-
-        .pb-xxl-0 {
-            padding-bottom: 0 !important;
-        }
-
-        .pb-xxl-1 {
-            padding-bottom: 0.25rem !important;
-        }
-
-        .pb-xxl-2 {
-            padding-bottom: 0.5rem !important;
-        }
-
-        .pb-xxl-3 {
-            padding-bottom: 1rem !important;
-        }
-
-        .pb-xxl-4 {
-            padding-bottom: 1.5rem !important;
-        }
-
-        .pb-xxl-5 {
-            padding-bottom: 3rem !important;
-        }
-
-        .ps-xxl-0 {
-            padding-left: 0 !important;
-        }
-
-        .ps-xxl-1 {
-            padding-left: 0.25rem !important;
-        }
-
-        .ps-xxl-2 {
-            padding-left: 0.5rem !important;
-        }
-
-        .ps-xxl-3 {
-            padding-left: 1rem !important;
-        }
-
-        .ps-xxl-4 {
-            padding-left: 1.5rem !important;
-        }
-
-        .ps-xxl-5 {
-            padding-left: 3rem !important;
-        }
-
-        .gap-xxl-0 {
-            gap: 0 !important;
-        }
-
-        .gap-xxl-1 {
-            gap: 0.25rem !important;
-        }
-
-        .gap-xxl-2 {
-            gap: 0.5rem !important;
-        }
-
-        .gap-xxl-3 {
-            gap: 1rem !important;
-        }
-
-        .gap-xxl-4 {
-            gap: 1.5rem !important;
-        }
-
-        .gap-xxl-5 {
-            gap: 3rem !important;
-        }
-
-        .row-gap-xxl-0 {
-            row-gap: 0 !important;
-        }
-
-        .row-gap-xxl-1 {
-            row-gap: 0.25rem !important;
-        }
-
-        .row-gap-xxl-2 {
-            row-gap: 0.5rem !important;
-        }
-
-        .row-gap-xxl-3 {
-            row-gap: 1rem !important;
-        }
-
-        .row-gap-xxl-4 {
-            row-gap: 1.5rem !important;
-        }
-
-        .row-gap-xxl-5 {
-            row-gap: 3rem !important;
-        }
-
-        .column-gap-xxl-0 {
-            column-gap: 0 !important;
-        }
-
-        .column-gap-xxl-1 {
-            column-gap: 0.25rem !important;
-        }
-
-        .column-gap-xxl-2 {
-            column-gap: 0.5rem !important;
-        }
-
-        .column-gap-xxl-3 {
-            column-gap: 1rem !important;
-        }
-
-        .column-gap-xxl-4 {
-            column-gap: 1.5rem !important;
-        }
-
-        .column-gap-xxl-5 {
-            column-gap: 3rem !important;
-        }
-
-        .text-xxl-start {
-            text-align: left !important;
-        }
-
-        .text-xxl-end {
-            text-align: right !important;
-        }
-
-        .text-xxl-center {
-            text-align: center !important;
-        }
-    }
-
-    @media (min-width: 1200px) {
-        .fs-1 {
-            font-size: 2.5rem !important;
-        }
-
-        .fs-2 {
-            font-size: 2rem !important;
-        }
-
-        .fs-3 {
-            font-size: 1.75rem !important;
-        }
-
-        .fs-4 {
-            font-size: 1.5rem !important;
-        }
-    }
-
-    @media print {
-        .d-print-inline {
-            display: inline !important;
-        }
-
-        .d-print-inline-block {
-            display: inline-block !important;
-        }
-
-        .d-print-block {
-            display: block !important;
-        }
-
-        .d-print-grid {
-            display: grid !important;
-        }
-
-        .d-print-inline-grid {
-            display: inline-grid !important;
-        }
-
-        .d-print-table {
-            display: table !important;
-        }
-
-        .d-print-table-row {
-            display: table-row !important;
-        }
-
-        .d-print-table-cell {
-            display: table-cell !important;
-        }
-
-        .d-print-flex {
-            display: flex !important;
-        }
-
-        .d-print-inline-flex {
-            display: inline-flex !important;
-        }
-
-        .d-print-none {
-            display: none !important;
-        }
-    }
-
-    </style>
-    <script src="https://kit.fontawesome.com/d8d5f3840a.js" crossorigin="anonymous"></script>
-</head>
-<body style="background-color: rgb(21, 152, 149); margin-top: auto; margin-bottom: auto;">
-<div id="root">
-    <div class="App" style="overflow: hidden;">
-        <div class="px-0 container-fluid">
-            <nav class="navbar navbar-expand-md navbar-white bg-white">
-                <div class="container">
-                    <a href="http://localhost:3000/home" class="navbar-brand">
-                        <span class="ikona">
-                        <img id="background-img" src="logo.png" width="60" height="60" class=""></span>
-                        <span class="mx-3 ikona"><span class="svetlo">Tour</span><span class="temno">Mate</span></span>
-                    </a>
-                    <button aria-controls="navbarScroll" type="button" aria-label="Toggle navigation"
-                            class="navbar-toggler collapsed"><span class="navbar-toggler-icon"></span></button>
-                    <div class="navbar-collapse collapse" id="navbarScroll">
-                        <div class="ms-auto navbar-nav navbar-nav-scroll">
-                            <a href="http://localhost:3000/home"
-                               data-rr-ui-event-key="/home"
-                               class="m-2 nav-link">Home</a><a
-                                href="http://localhost:3000/login#features" data-rr-ui-event-key="#features"
-                                class="m-2 nav-link">Features</a><a href="http://localhost:3000/login#pricing"
-                                                                    data-rr-ui-event-key="#pricing"
-                                                                    class="m-2 nav-link">
-                            <button type="button" class="btn btn-primary"></button>
-                        </a>
-                            <button type="button" class="m-2 btn btn-primary btn-md"
-                                    style="background-color: rgb(21, 152, 149);">
-                                <svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 16 16"
-                                     height="1.5em" width="1.5em" xmlns="http://www.w3.org/2000/svg">
-                                    <path d="M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3Zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z"></path>
-                                </svg>
-                                Најави се
-                            </button>
-                        </div>
-                    </div>
-                </div>
-            </nav>
-            <br></div>
-        <div class="mt-5 container">
-            <div class="container" style="width: 40%;">
-                <div class="rounded-5 m-5 my-auto mx-auto py-5 px-5 container"
-                     style="background-color: rgb(255, 255, 255);">
-                    <form class="" action="/login" method="post">
-                        <div class="mb-3"><label class="form-label" for="formBasicEmail">Е-адреса</label><input
-                                placeholder="Enter email" name="username" type="email" id="formBasicEmail"
-                                class="form-control" value="darsov2@gmail.com"><small class="text-muted form-text">Вашите
-                            податоци никогаш нема да бидат споделени.</small></div>
-                        <div class="mb-3"><label class="form-label" for="formBasicPassword">Лозинка</label><input
-                                placeholder="Password" name="password" type="password" id="formBasicPassword"
-                                class="form-control" value="orelorel123"></div>
-                        <div class="mb-3">
-                            <div class="form-check"><input type="checkbox" id="formBasicCheckbox"
-                                                           class="form-check-input"><label title=""
-                                                                                           for="formBasicCheckbox"
-                                                                                           class="form-check-label">Check
-                                me out</label></div>
-                            <div class="row px-5 my-3 align-self-center">
-                                <div class="col">
-                                    <a href="/oauth2/authorization/facebook">
-                                        <i class="fa-brands fa-facebook" style="color: rgb(21, 152, 149); font-size: 1.8em"></i>
-                                    </a>
-                                </div>
-                                <div class="col">
-                                    <a href="/oauth2/authorization/google">
-                                        <i class="fa-brands fa-google" style="color: rgb(21, 152, 149); font-size: 1.8em"></i>
-                                    </a>
-                                </div>
-                                <div class="col">
-                                    <a href="/oauth2/authorization/github">
-                                        <i class="fa-brands fa-github" style="color: rgb(21, 152, 149); font-size: 1.8em"></i>
-                                    </a>
-                                </div>
-                            </div>
-                        </div>
-                        <a href="http://localhost:3000/register" style="text-decoration: none;"><small
-                                class="text-muted form-text">Регистрирај се</small></a>
-                        <div class="my-1">
-                            <button type="submit" class="btn btn-primary btn-md"
-                                    style="background-color: rgb(21, 152, 149);"><span class="ikona my-1"><svg
-                                    stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 1024 1024"
-                                    height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path
-                                    d="M832 464h-68V240c0-70.7-57.3-128-128-128H388c-70.7 0-128 57.3-128 128v224h-68c-17.7 0-32 14.3-32 32v384c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V496c0-17.7-14.3-32-32-32zM540 701v53c0 4.4-3.6 8-8 8h-40c-4.4 0-8-3.6-8-8v-53a48.01 48.01 0 1 1 56 0zm152-237H332V240c0-30.9 25.1-56 56-56h248c30.9 0 56 25.1 56 56v224z"></path></svg></span><span
-                                    class="ikona mx-3">Најави се</span></button>
-                        </div>
-                    </form>
-                </div>
-            </div>
-        </div>
-    </div>
-</div>
-</body>
-</html>
