diff --git a/djangocms_frontend/contrib/navigation/cms_plugins.py b/djangocms_frontend/contrib/navigation/cms_plugins.py index 897a9fd2..9deef2a8 100644 --- a/djangocms_frontend/contrib/navigation/cms_plugins.py +++ b/djangocms_frontend/contrib/navigation/cms_plugins.py @@ -23,7 +23,7 @@ class NavigationPlugin( CMSUIPlugin, ): """ - Creates a Navbar + The NavigationPlugin class is a plugin used in Django CMS to create navigation menus or off-canvas menus. """ name = _("Navigation") @@ -36,7 +36,6 @@ class NavigationPlugin( "NavLinkPlugin", "PageTreePlugin", "NavBrandPlugin", - "NavContainerPlugin", ] fieldsets = [ @@ -71,13 +70,18 @@ class PageTreePlugin( AttributesMixin, CMSUIPlugin, ): + """ + + The PageTreePlugin class is a plugin for Django CMS that allows users to display a hierarchical + tree-like structure of pages on the frontend. + """ name = _("Page tree") module = _("Frontend") model = models.PageTree form = forms.PageTreeForm change_form_template = "djangocms_frontend/admin/page_tree.html" allow_children = False - parent_classes = ["NavigationPlugin", "NavContainerPlugin"] + parent_classes = ["NavigationPlugin",] fieldsets = [ ( None, @@ -102,13 +106,18 @@ class NavBrandPlugin( LinkPluginMixin, CMSUIPlugin, ): + """ + The `NavBrandPlugin` class is a plugin used in Django CMS to create a navigation brand element. + This plugin allows the user to define a brand logo or text that will be displayed in the + navigation header. Content is added through child plugins. + """ name = _("Brand") module = _("Frontend") model = models.NavBrand form = forms.NavBrandForm change_form_template = "djangocms_frontend/admin/brand.html" allow_children = True - parent_classes = ["NavigationPlugin", "NavContainerPlugin"] + parent_classes = ["NavigationPlugin",] link_fieldset_position = -1 fieldsets = [ @@ -130,13 +139,15 @@ class NavContainerPlugin( AttributesMixin, CMSUIPlugin, ): + """ + The `NavContainerPlugin` class is a deprecated plugin without functionality. It will be removed. + """ name = _("Navigation container") module = _("Frontend") model = models.NavContainer - form = forms.NavContainerForm - change_form_template = "djangocms_frontend/admin/nav_container.html" + change_form_template = "djangocms_frontend/admin/deprecated.html" allow_children = True - parent_classes = ["NavigationPlugin"] + parent_classes = [""] # No parent classes child_classes = [ "NavLinkPlugin", "PageTreePlugin", @@ -150,24 +161,33 @@ class NavContainerPlugin( ), ] - def get_render_template(self, context, instance, placeholder): - return get_template_path( - "navigation", context.get("nav_template", default_template), "nav_container" - ) - @plugin_pool.register_plugin class NavLinkPlugin( mixin_factory("NavLink"), LinkPlugin, ): + """ + A plugin that allows creating navigation links for the frontend. + + Attributes: + ----------- + - `name` (str): The name of the plugin, displayed in the plugin list when editing a page. + - `module` (str): The module where the plugin belongs, displayed in the plugin list when editing a page. + - `model` (Model): The Django model used to store the plugin's data. + - `form` (Form): The form used to render the plugin's settings in the admin interface. + - `change_form_template` (str): The path to the template used to render the plugin's change form in the admin interface. + - `allow_children` (bool): Whether the plugin allows having child plugins. + - `parent_classes` (list): List of parent plugin classes that this plugin can be nested within. + - `child_classes` (list): List of child plugin classes that can be nested within this plugin. + """ name = _("Navigation link") module = _("Frontend") model = models.NavLink form = forms.NavLinkForm change_form_template = "djangocms_frontend/admin/navlink.html" allow_children = True - parent_classes = ["NavigationPlugin", "NavContainerPlugin", "NavLinkPlugin"] + parent_classes = ["NavigationPlugin", "NavLinkPlugin"] child_classes = [ "NavLinkPlugin", "GridContainerPlugin", diff --git a/djangocms_frontend/contrib/navigation/forms.py b/djangocms_frontend/contrib/navigation/forms.py index ee3a5f93..2e6ed8bd 100644 --- a/djangocms_frontend/contrib/navigation/forms.py +++ b/djangocms_frontend/contrib/navigation/forms.py @@ -108,18 +108,5 @@ class Meta: attributes = AttributesFormField() -class NavContainerForm(mixin_factory("NavContainer"), EntangledModelForm): - class Meta: - model = FrontendUIItem - entangled_fields = { - "config": [ - "attributes", - ] - } - untangled_fields = () - - attributes = AttributesFormField() - - class NavLinkForm(mixin_factory("NavLink"), LinkForm): link_is_optional = True diff --git a/djangocms_frontend/contrib/navigation/frameworks/bootstrap5.py b/djangocms_frontend/contrib/navigation/frameworks/bootstrap5.py index 5e9e4b78..5698683f 100644 --- a/djangocms_frontend/contrib/navigation/frameworks/bootstrap5.py +++ b/djangocms_frontend/contrib/navigation/frameworks/bootstrap5.py @@ -5,6 +5,8 @@ def render(self, context, instance, placeholder): f"navbar-{instance.config.get('navbar_design', '')}", f"navbar-expand-{instance.config.get('navbar_breakpoint', '')}", ) + if instance.config.get("navbar_design", "") == "dark": + instance.add_classes("bg-dark") return super().render(context, instance, placeholder) diff --git a/djangocms_frontend/contrib/navigation/models.py b/djangocms_frontend/contrib/navigation/models.py index ef583348..90580e6d 100644 --- a/djangocms_frontend/contrib/navigation/models.py +++ b/djangocms_frontend/contrib/navigation/models.py @@ -23,6 +23,9 @@ class Meta: proxy = True verbose_name = _("Navigation container") + def get_short_description(self): + return _("(deprecated)") + class NavLink(Link): class Meta: diff --git a/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/admin/nav_container.html b/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/admin/nav_container.html deleted file mode 100644 index 9ccbe992..00000000 --- a/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/admin/nav_container.html +++ /dev/null @@ -1,3 +0,0 @@ -{% extends "djangocms_frontend/admin/base.html" %} - -{% block custom_class %}djangocms-frontend-nav-container{% endblock %} diff --git a/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/bootstrap5/navigation/default/brand.html b/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/bootstrap5/navigation/default/brand.html index 1cd8da16..24b13134 100644 --- a/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/bootstrap5/navigation/default/brand.html +++ b/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/bootstrap5/navigation/default/brand.html @@ -1,6 +1,6 @@ -{% load cms_tags sekizai_tags %}{% spaceless %}{% with link=instance.get_link %}{% if link %}{% else %} <{{ instance.tag_type }}{{ instance.get_attributes }}>{% endif %} +{% load cms_tags sekizai_tags %}{% spaceless %}{% with link=instance.get_link %}{% if link %}{% else %} {% endif %} {% for plugin in instance.child_plugin_instances %} {% with parentloop=forloop parent=instance %}{% render_plugin plugin %}{% endwith %} {% empty %}{{ instance.simple_content }}{% endfor %} -{% if link %}{% else %}{{ instance.tag_type }}>{% endif %}{% endwith %} +{% if link %}{% else %}{% endif %}{% endwith %} {% endspaceless %} diff --git a/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/bootstrap5/navigation/default/icon.html b/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/bootstrap5/navigation/default/icon.html new file mode 100644 index 00000000..10db3950 --- /dev/null +++ b/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/bootstrap5/navigation/default/icon.html @@ -0,0 +1,2 @@ +{% if "iconClass" in icon_class %}{% load icon_tags %}{% add_css_for_icon icon_class %}{{ icon_class.iconText }} +{% else %}{% endif %} diff --git a/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/bootstrap5/navigation/default/link.html b/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/bootstrap5/navigation/default/link.html index b23ff0a4..6aea9f78 100644 --- a/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/bootstrap5/navigation/default/link.html +++ b/djangocms_frontend/contrib/navigation/templates/djangocms_frontend/bootstrap5/navigation/default/link.html @@ -6,8 +6,10 @@ {% else %}
title
attribute will only be set if the checkbox is selected."
+"Optional title of the plugin for easier identification. Its title"
+"code> attribute will only be set if the checkbox is selected."
msgstr ""
"Titre optionnel du plugin pour l'identifier. L'attribut title
"
"sera défini uniquement si la case est cochée."
@@ -236,8 +235,8 @@ msgstr "Intégrer au parent"
#: contrib/accordion/forms.py:52
msgid ""
-"Removes the default background-color, some borders, and some rounded corners"
-" to render accordions edge-to-edge with their parent container "
+"Removes the default background-color, some borders, and some rounded corners "
+"to render accordions edge-to-edge with their parent container "
msgstr ""
"Supprimer la couleur de fond, les bordures et les coins arrondis pour "
"afficher l'accordéon sur toute la largeur du conteneur parent"
@@ -398,11 +397,10 @@ msgstr "Occuper toute la hauteur"
#: contrib/card/forms.py:152
msgid ""
-"If checked cards in one row will automatically extend to the full row "
-"height."
+"If checked cards in one row will automatically extend to the full row height."
msgstr ""
-"Lorsque cette case est cochée, les encarts sur une ligne occuperont toute la"
-" hauteur de la ligne."
+"Lorsque cette case est cochée, les encarts sur une ligne occuperont toute la "
+"hauteur de la ligne."
#: contrib/card/forms.py:186
msgid "Inner type"
@@ -471,8 +469,8 @@ msgstr "Intervalle"
#: contrib/carousel/forms.py:67
msgid ""
-"The amount of time to delay between automatically cycling an item. If false,"
-" carousel will not automatically cycle."
+"The amount of time to delay between automatically cycling an item. If false, "
+"carousel will not automatically cycle."
msgstr ""
"Le délai avant le défilement automatique d'un slide. Indiquez 0 pour ne pas "
"que les slides défilent automatiquement."
@@ -744,8 +742,8 @@ msgid ""
"should fill the full width without margins or padding."
msgstr ""
"Définit si la grille doit utiliser une largeur fixe, une largeur fluide ou "
-"si le conteneur doit remplir toute la largeur sans marges externes ni marges"
-" internes."
+"si le conteneur doit remplir toute la largeur sans marges externes ni marges "
+"internes."
#: contrib/grid/forms.py:97
msgid "Create columns"
@@ -782,8 +780,8 @@ msgstr "Alignement de la colonne"
msgid ""
"Column size needs to be empty, \"auto\", or a number between 1 and %(cols)d"
msgstr ""
-"La taille de la colonne doit être vide, \"auto\", ou un nombre compris entre"
-" 1 et %(cols)d"
+"La taille de la colonne doit être vide, \"auto\", ou un nombre compris entre "
+"1 et %(cols)d"
#: contrib/grid/models.py:29
msgid "GridContainer"
@@ -834,31 +832,31 @@ msgstr "Réinitialiser"
msgid "Icon"
msgstr "Icône"
-#: contrib/icon/conf.py:54
+#: contrib/icon/conf.py:51
msgid "Regular"
msgstr "Standard"
-#: contrib/icon/conf.py:55
+#: contrib/icon/conf.py:52
msgid "x 2"
msgstr "x 2"
-#: contrib/icon/conf.py:56
+#: contrib/icon/conf.py:53
msgid "x 3"
msgstr "x 3"
-#: contrib/icon/conf.py:57
+#: contrib/icon/conf.py:54
msgid "x 4"
msgstr "x 4"
-#: contrib/icon/conf.py:58
+#: contrib/icon/conf.py:55
msgid "x 5"
msgstr "x 5"
-#: contrib/icon/conf.py:59
+#: contrib/icon/conf.py:56
msgid "x 8"
msgstr "x 8"
-#: contrib/icon/conf.py:60
+#: contrib/icon/conf.py:57
msgid "x 12"
msgstr "x 12"
@@ -895,12 +893,16 @@ msgid "Cropping"
msgstr "Recadrage"
#: contrib/image/forms.py:25
-msgid "Align left"
-msgstr "Aligner à gauche"
+#, fuzzy
+#| msgid "Icon left"
+msgid "Float left"
+msgstr "Icône à gauche"
#: contrib/image/forms.py:26
-msgid "Align right"
-msgstr "Aligner à droite"
+#, fuzzy
+#| msgid "Icon right"
+msgid "Float right"
+msgstr "Icône à droite"
#: contrib/image/forms.py:27
msgid "Align center"
@@ -960,15 +962,16 @@ msgid ""
"them into view. "
msgstr ""
"À utiliser pour les images situées en dessous de la limite de « scroll ». "
-"Chargera les images seulement si le visiteur les fait apparaître en défilant"
-" dans la page."
+"Chargera les images seulement si le visiteur les fait apparaître en défilant "
+"dans la page."
#: contrib/image/forms.py:131
msgid "Width"
msgstr "Largeur"
#: contrib/image/forms.py:135
-msgid "The image width as number in pixels. Example: \"720\" and not \"720px\"."
+msgid ""
+"The image width as number in pixels. Example: \"720\" and not \"720px\"."
msgstr ""
"La largeur de l'image en pixels. Un nombre (sans unité), par exemple : "
"\"720\"."
@@ -978,72 +981,72 @@ msgid "Height"
msgstr "Hauteur"
#: contrib/image/forms.py:143
-msgid "The image height as number in pixels. Example: \"720\" and not \"720px\"."
+msgid ""
+"The image height as number in pixels. Example: \"720\" and not \"720px\"."
msgstr ""
"La hauteur de l'image en pixels. Un nombre (sans unité), par exemple : "
"\"720\"."
-#: contrib/image/forms.py:150
+#: contrib/image/forms.py:151
msgid "Aligns the image according to the selected option."
msgstr "Aligne l'image en fonction de l'option choisie."
-#: contrib/image/forms.py:153 contrib/utilities/forms.py:167
+#: contrib/image/forms.py:154 contrib/utilities/forms.py:167
msgid "Link attributes"
msgstr "Attributs du lien"
-#: contrib/image/forms.py:154
+#: contrib/image/forms.py:155
msgid "Attributes apply to the link."
msgstr "Les attributs s'appliquent sur la balise link."
-#: contrib/image/forms.py:160
+#: contrib/image/forms.py:161
msgid "Automatic scaling"
msgstr "Redimensionnement automatique"
-#: contrib/image/forms.py:163
+#: contrib/image/forms.py:164
msgid "Uses the placeholder dimensions to automatically calculate the size."
msgstr ""
"Utilise les dimensions de la zone de la page pour calculer automatiquement "
"la taille."
-#: contrib/image/forms.py:169
+#: contrib/image/forms.py:170
msgid "Use original image"
msgstr "Utiliser l'image d'origine"
-#: contrib/image/forms.py:171
+#: contrib/image/forms.py:172
msgid "Outputs the raw image without cropping."
msgstr "Affiche l'image d'origine sans la recadrer."
-#: contrib/image/forms.py:176
+#: contrib/image/forms.py:177
msgid "Crop image"
msgstr "Recadrer l'image"
-#: contrib/image/forms.py:179
+#: contrib/image/forms.py:180
msgid ""
-"Crops the image according to the thumbnail settings provided in the "
-"template."
+"Crops the image according to the thumbnail settings provided in the template."
msgstr ""
"Recadre l'image d'après les paramètres de miniature fournis dans le gabarit "
"de la page."
-#: contrib/image/forms.py:183
+#: contrib/image/forms.py:184
msgid "Upscale image"
msgstr "Permettre l'agrandissement de l'image"
-#: contrib/image/forms.py:186
+#: contrib/image/forms.py:187
msgid ""
"Upscales the image to the size of the thumbnail settings in the template."
msgstr ""
"Agrandi l'image jusqu'à atteindre la taille de la miniature définie dans le "
"gabarit de la page."
-#: contrib/image/forms.py:190
+#: contrib/image/forms.py:191
msgid "Use responsive image"
msgstr "Image « responsive »"
-#: contrib/image/forms.py:194
+#: contrib/image/forms.py:195
msgid ""
-"Uses responsive image technique to choose better image to display based upon"
-" screen viewport. This configuration only applies to uploaded images "
+"Uses responsive image technique to choose better image to display based upon "
+"screen viewport. This configuration only applies to uploaded images "
"(external pictures will not be affected). "
msgstr ""
"Utilise la technique de l'image « responsive » pour choisir la meilleure "
@@ -1051,11 +1054,11 @@ msgstr ""
"s'applique uniquement aux images téléchargées (les images externes ne sont "
"pas concernées)."
-#: contrib/image/forms.py:203
+#: contrib/image/forms.py:204
msgid "Thumbnail options"
msgstr "Options de miniature"
-#: contrib/image/forms.py:206
+#: contrib/image/forms.py:207
msgid ""
"Overrides width, height, and crop; scales up to the provided preset "
"dimensions."
@@ -1063,52 +1066,51 @@ msgstr ""
"Remplace les valeurs de largeur, hauteur, recadrage et agrandissement par "
"celles fournies par ce réglage."
-#: contrib/image/forms.py:210
+#: contrib/image/forms.py:211
msgid "Responsive"
msgstr "Responsive"
-#: contrib/image/forms.py:213
+#: contrib/image/forms.py:214
msgid "Adds the .img-fluid class to make the image responsive."
msgstr "Ajoute la classe CSS .img-fluid pour rendre l'image « responsive »"
-#: contrib/image/forms.py:216
+#: contrib/image/forms.py:217
msgid "Rounded"
msgstr "Coins arrondis"
-#: contrib/image/forms.py:219
+#: contrib/image/forms.py:220
msgid "Adds the .rounded class for round corners."
msgstr "Ajoute la classe CSS .rounded pour rendre les coins arrondis."
-#: contrib/image/forms.py:222
+#: contrib/image/forms.py:223
msgid "Thumbnail"
msgstr "Miniature"
-#: contrib/image/forms.py:225
+#: contrib/image/forms.py:226
msgid "Adds the .img-thumbnail class."
msgstr "Ajoute la classe CSS .img-thumbnail."
-#: contrib/image/forms.py:246
+#: contrib/image/forms.py:247
msgid ""
"You have given more than one external, internal, or file link target. Only "
"one option is allowed."
msgstr ""
-"Seulement un champ parmi : lien externe, lien interne, lien vers un fichier,"
-" doit être rempli."
+"Seulement un champ parmi : lien externe, lien interne, lien vers un fichier, "
+"doit être rempli."
-#: contrib/image/forms.py:255
-msgid ""
-"You need to add either an image, or a URL linking to an external image."
+#: contrib/image/forms.py:256
+msgid "You need to add either an image, or a URL linking to an external image."
msgstr ""
"Vous devez soit charger une image ou fournir une URL vers une image externe."
-#: contrib/image/forms.py:281
+#: contrib/image/forms.py:282
#, python-brace-format
msgid ""
"Invalid cropping settings. You cannot combine \"{field_a}\" with "
"\"{field_b}\"."
msgstr ""
-"Paramètres de recadrage invalides. Vous ne pouvez pas utiliser en même temps"
-" \"{field_a}\" et \"{field_b}\"."
+"Paramètres de recadrage invalides. Vous ne pouvez pas utiliser en même temps "
+"\"{field_a}\" et \"{field_b}\"."
#: contrib/jumbotron/cms_plugins.py:31 contrib/jumbotron/models.py:14
msgid "Jumbotron"
@@ -1122,8 +1124,8 @@ msgstr "Fluide"
msgid "Makes the jumbotron fill the full width of the container or window."
msgstr "Le Jumbotron occupe toute la largeur du conteneur ou de la fenêtre."
-#: contrib/link/apps.py:7 contrib/link/constants.py:5
-#: contrib/link/models.py:11 contrib/link/models.py:114
+#: contrib/link/apps.py:7 contrib/link/constants.py:5 contrib/link/models.py:11
+#: contrib/link/models.py:114
msgid "Link"
msgstr "Lien"
@@ -1203,8 +1205,8 @@ msgid ""
"Appends the value only after the internal or external link. Do not "
"include a preceding \"#\" symbol."
msgstr ""
-"Ajoute la valeur uniquement après le lien interne ou externe. Ne "
-"pas inclure le symbole \"# ;\" qui précède."
+"Ajoute la valeur uniquement après le lien interne ou externe. Ne pas"
+"em> inclure le symbole \"# ;\" qui précède."
#: contrib/link/forms.py:205
msgid "Email address"
@@ -1358,9 +1360,11 @@ msgstr "Arborescence de page"
msgid "Brand"
msgstr "Marque"
-#: contrib/navigation/cms_plugins.py:133 contrib/navigation/models.py:24
-msgid "Navigation container"
-msgstr "Conteneur de navigation"
+#: contrib/navigation/cms_plugins.py:133
+#, fuzzy
+#| msgid "Collapse container"
+msgid "Collapsible container"
+msgstr "Conteneur de l'élément repliable"
#: contrib/navigation/cms_plugins.py:164
msgid "Navigation link"
@@ -1391,8 +1395,12 @@ msgstr ""
#: contrib/navigation/forms.py:106
msgid "Enter brand name or add child plugins for brand icon or image"
msgstr ""
-"Entrez un nom de marque ou ajoutez des plugins enfants pour afficher un logo"
-" ou une image"
+"Entrez un nom de marque ou ajoutez des plugins enfants pour afficher un logo "
+"ou une image"
+
+#: contrib/navigation/models.py:24
+msgid "Navigation container"
+msgstr "Conteneur de navigation"
#: contrib/navigation/models.py:30
msgid "Navigation Link"
@@ -1437,8 +1445,8 @@ msgstr "Index"
#: contrib/tabs/forms.py:67
msgid "Index of element to open on page load starting at 1."
msgstr ""
-"Index de l'élément à ouvrir au chargement de la page (en numérotant à partir"
-" de 1)."
+"Index de l'élément à ouvrir au chargement de la page (en numérotant à partir "
+"de 1)."
#: contrib/tabs/forms.py:70
msgid "Animation effect"
@@ -1502,8 +1510,8 @@ msgid ""
"Padding does not have an auto spacing. Either switch to a defined size or "
"change the spacing property."
msgstr ""
-"Les marges internes n'ont pas d'espacement automatique. Il faut soit définir"
-" une taille, soit changer la propriété de l'espacement."
+"Les marges internes n'ont pas d'espacement automatique. Il faut soit définir "
+"une taille, soit changer la propriété de l'espacement."
#: contrib/utilities/forms.py:101 settings.py:38
msgid "Heading 1"
@@ -1535,8 +1543,8 @@ msgstr "ID"
#: contrib/utilities/forms.py:128
msgid ""
-"Fill in unique ID for table of contents. If empty heading will not appear in"
-" table of contents."
+"Fill in unique ID for table of contents. If empty heading will not appear in "
+"table of contents."
msgstr ""
"Remplir un identifiant unique qui sera utile pour la table des matières. Si "
"le titre est vide, il n'apparaîtra pas dans la table des matières."
@@ -1560,8 +1568,8 @@ msgstr ""
msgid ""
"Attributes apply to the link for each entry in the table of contents."
msgstr ""
-"Les attributs s'appliquent au lien pour chaque entrée de la table des"
-" matières."
+"Les attributs s'appliquent au lien pour chaque entrée de la table des "
+"matières."
#: contrib/utilities/forms.py:173
msgid "Item attributes"
@@ -1572,8 +1580,8 @@ msgid ""
"Attributes apply to the list items for each entry in the table of "
"contents."
msgstr ""
-"Les attributs s'appliquent aux élément de liste pour chaque entrée de"
-" la table des matières."
+"Les attributs s'appliquent aux élément de liste pour chaque entrée de "
+"la table des matières."
#: fields.py:94
msgid "Please select at least one device size"
@@ -1678,7 +1686,8 @@ msgstr "Très très grand"
#: helpers.py:112
#, python-brace-format
-msgid "Read more in the documentation."
+msgid ""
+"Read more in the documentation."
msgstr ""
"Lire la documentation pour en "
"savoir plus."
@@ -1696,3 +1705,9 @@ msgstr ""
#: settings.py:73
msgid "Offcanvas"
msgstr "Déroulante"
+
+#~ msgid "Align left"
+#~ msgstr "Aligner à gauche"
+
+#~ msgid "Align right"
+#~ msgstr "Aligner à droite"
diff --git a/djangocms_frontend/locale/nl/LC_MESSAGES/django.po b/djangocms_frontend/locale/nl/LC_MESSAGES/django.po
index 7cc4fef3..1536d99f 100644
--- a/djangocms_frontend/locale/nl/LC_MESSAGES/django.po
+++ b/djangocms_frontend/locale/nl/LC_MESSAGES/django.po
@@ -2,24 +2,24 @@
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR , YEAR.
-#
+#
# Translators:
# Fabian Braun , 2023
# Stefan van den Eertwegh , 2023
-#
+#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-10-04 07:43+0200\n"
+"POT-Creation-Date: 2024-02-28 23:03+0100\n"
"PO-Revision-Date: 2023-01-20 15:48+0000\n"
"Last-Translator: Stefan van den Eertwegh , 2023\n"
"Language-Team: Dutch (https://app.transifex.com/divio/teams/58664/nl/)\n"
+"Language: nl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Language: nl\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: common/attributes.py:9
@@ -53,8 +53,7 @@ msgstr "Achtergrond opacity"
msgid "Opacity of card background color (only if no outline selected)"
msgstr ""
-#: common/bootstrap5/background.py:66
-#: contrib/alert/frameworks/bootstrap5.py:42
+#: common/bootstrap5/background.py:66 contrib/alert/frameworks/bootstrap5.py:42
msgid "Shadow"
msgstr "Schaduw"
@@ -72,8 +71,7 @@ msgstr "Toon element op apparaat"
#: common/bootstrap5/responsive.py:60
msgid "Select only devices on which this element should be shown."
-msgstr ""
-"Selecteer alleen apparaten waarop dit element moet worden weergegeven."
+msgstr "Selecteer alleen apparaten waarop dit element moet worden weergegeven."
#: common/bootstrap5/sizing.py:8 common/spacing.py:11
#: contrib/utilities/forms.py:51 frameworks/bootstrap5.py:90
@@ -99,11 +97,9 @@ msgstr "Verticale grootte"
#: common/bootstrap5/sizing.py:60
msgid ""
-"Sets the vertical size relative to the surrounding container or the "
-"viewport."
+"Sets the vertical size relative to the surrounding container or the viewport."
msgstr ""
-"Sets the vertical size relative to the surrounding container or the "
-"viewport."
+"Sets the vertical size relative to the surrounding container or the viewport."
#: common/spacing.py:84
msgid "Please choose a side to which the spacing should be applied."
@@ -154,8 +150,8 @@ msgstr "Pas padding op apparaat toe"
#: common/spacing.py:236
msgid ""
-"Select only devices on which the padding should be applied. On other devices"
-" larger than the first selected device the padding will be set to zero."
+"Select only devices on which the padding should be applied. On other devices "
+"larger than the first selected device the padding will be set to zero."
msgstr ""
#: common/title.py:40
@@ -168,8 +164,8 @@ msgstr "Titel"
#: common/title.py:67
msgid ""
-"Optional title of the plugin for easier identification. Its "
-"title
attribute will only be set if the checkbox is selected."
+"Optional title of the plugin for easier identification. Its title"
+"code> attribute will only be set if the checkbox is selected."
msgstr ""
#: contrib/accordion/cms_plugins.py:21 contrib/accordion/models.py:14
@@ -224,8 +220,8 @@ msgstr ""
#: contrib/accordion/forms.py:52
msgid ""
-"Removes the default background-color, some borders, and some rounded corners"
-" to render accordions edge-to-edge with their parent container "
+"Removes the default background-color, some borders, and some rounded corners "
+"to render accordions edge-to-edge with their parent container "
msgstr ""
#: contrib/accordion/forms.py:78 contrib/card/constants.py:16
@@ -381,8 +377,7 @@ msgstr "Volledige hoogte"
#: contrib/card/forms.py:152
msgid ""
-"If checked cards in one row will automatically extend to the full row "
-"height."
+"If checked cards in one row will automatically extend to the full row height."
msgstr ""
#: contrib/card/forms.py:186
@@ -452,8 +447,8 @@ msgstr "Interval"
#: contrib/carousel/forms.py:67
msgid ""
-"The amount of time to delay between automatically cycling an item. If false,"
-" carousel will not automatically cycle."
+"The amount of time to delay between automatically cycling an item. If false, "
+"carousel will not automatically cycle."
msgstr ""
#: contrib/carousel/forms.py:72 contrib/carousel/models.py:25
@@ -799,31 +794,31 @@ msgstr "Reset"
msgid "Icon"
msgstr "Icoon"
-#: contrib/icon/conf.py:54
+#: contrib/icon/conf.py:51
msgid "Regular"
msgstr "Regulier"
-#: contrib/icon/conf.py:55
+#: contrib/icon/conf.py:52
msgid "x 2"
msgstr "x 2"
-#: contrib/icon/conf.py:56
+#: contrib/icon/conf.py:53
msgid "x 3"
msgstr "x 3"
-#: contrib/icon/conf.py:57
+#: contrib/icon/conf.py:54
msgid "x 4"
msgstr "x 4"
-#: contrib/icon/conf.py:58
+#: contrib/icon/conf.py:55
msgid "x 5"
msgstr "x 5"
-#: contrib/icon/conf.py:59
+#: contrib/icon/conf.py:56
msgid "x 8"
msgstr "x 8"
-#: contrib/icon/conf.py:60
+#: contrib/icon/conf.py:57
msgid "x 12"
msgstr "x 12"
@@ -860,12 +855,16 @@ msgid "Cropping"
msgstr "Bijsnijden"
#: contrib/image/forms.py:25
-msgid "Align left"
-msgstr "Links uitlijnen"
+#, fuzzy
+#| msgid "Icon left"
+msgid "Float left"
+msgstr "Icoon links"
#: contrib/image/forms.py:26
-msgid "Align right"
-msgstr "Rechts uitlijnen"
+#, fuzzy
+#| msgid "Icon right"
+msgid "Float right"
+msgstr "Icoon rechts"
#: contrib/image/forms.py:27
msgid "Align center"
@@ -928,7 +927,8 @@ msgid "Width"
msgstr "Breedte"
#: contrib/image/forms.py:135
-msgid "The image width as number in pixels. Example: \"720\" and not \"720px\"."
+msgid ""
+"The image width as number in pixels. Example: \"720\" and not \"720px\"."
msgstr ""
#: contrib/image/forms.py:139
@@ -936,118 +936,117 @@ msgid "Height"
msgstr "Hoogte"
#: contrib/image/forms.py:143
-msgid "The image height as number in pixels. Example: \"720\" and not \"720px\"."
+msgid ""
+"The image height as number in pixels. Example: \"720\" and not \"720px\"."
msgstr ""
"De afbeelding-hoogte als nummer in pixels. Voorbeeld: \"720\" en niet "
"\"720px\"."
-#: contrib/image/forms.py:150
+#: contrib/image/forms.py:151
msgid "Aligns the image according to the selected option."
msgstr "Uitlijn de afbeelding volgens de geselecteerde optie."
-#: contrib/image/forms.py:153 contrib/utilities/forms.py:167
+#: contrib/image/forms.py:154 contrib/utilities/forms.py:167
msgid "Link attributes"
msgstr "Link attributen"
-#: contrib/image/forms.py:154
+#: contrib/image/forms.py:155
msgid "Attributes apply to the link."
msgstr "Attributes apply to the link."
-#: contrib/image/forms.py:160
+#: contrib/image/forms.py:161
msgid "Automatic scaling"
msgstr "Automatisch schalen"
-#: contrib/image/forms.py:163
+#: contrib/image/forms.py:164
msgid "Uses the placeholder dimensions to automatically calculate the size."
msgstr "Uses the placeholder dimensions to automatically calculate the size."
-#: contrib/image/forms.py:169
+#: contrib/image/forms.py:170
msgid "Use original image"
msgstr "Gebruik originele afbeelding"
-#: contrib/image/forms.py:171
+#: contrib/image/forms.py:172
msgid "Outputs the raw image without cropping."
msgstr "Outputs the raw image without cropping."
-#: contrib/image/forms.py:176
+#: contrib/image/forms.py:177
msgid "Crop image"
msgstr "Afbeelding bijsnijden"
-#: contrib/image/forms.py:179
+#: contrib/image/forms.py:180
msgid ""
-"Crops the image according to the thumbnail settings provided in the "
-"template."
+"Crops the image according to the thumbnail settings provided in the template."
msgstr ""
-"Snij de afbeelding bij volgens de thumbnail instellingen mits gebruikt in de"
-" template."
+"Snij de afbeelding bij volgens de thumbnail instellingen mits gebruikt in de "
+"template."
-#: contrib/image/forms.py:183
+#: contrib/image/forms.py:184
msgid "Upscale image"
msgstr "Upscale afbeelding"
-#: contrib/image/forms.py:186
+#: contrib/image/forms.py:187
msgid ""
"Upscales the image to the size of the thumbnail settings in the template."
msgstr ""
"Upscales the image to the size of the thumbnail settings in the template."
-#: contrib/image/forms.py:190
+#: contrib/image/forms.py:191
msgid "Use responsive image"
msgstr "Gebruik afbeelding responsive"
-#: contrib/image/forms.py:194
+#: contrib/image/forms.py:195
msgid ""
-"Uses responsive image technique to choose better image to display based upon"
-" screen viewport. This configuration only applies to uploaded images "
+"Uses responsive image technique to choose better image to display based upon "
+"screen viewport. This configuration only applies to uploaded images "
"(external pictures will not be affected). "
msgstr ""
-#: contrib/image/forms.py:203
+#: contrib/image/forms.py:204
msgid "Thumbnail options"
msgstr "Thumbnail opties"
-#: contrib/image/forms.py:206
+#: contrib/image/forms.py:207
msgid ""
"Overrides width, height, and crop; scales up to the provided preset "
"dimensions."
msgstr ""
-#: contrib/image/forms.py:210
+#: contrib/image/forms.py:211
msgid "Responsive"
msgstr "Responsive"
-#: contrib/image/forms.py:213
+#: contrib/image/forms.py:214
msgid "Adds the .img-fluid class to make the image responsive."
msgstr ""
-#: contrib/image/forms.py:216
+#: contrib/image/forms.py:217
msgid "Rounded"
msgstr "Afgerond"
-#: contrib/image/forms.py:219
+#: contrib/image/forms.py:220
msgid "Adds the .rounded class for round corners."
msgstr ""
-#: contrib/image/forms.py:222
+#: contrib/image/forms.py:223
msgid "Thumbnail"
msgstr "Thumbnail"
-#: contrib/image/forms.py:225
+#: contrib/image/forms.py:226
msgid "Adds the .img-thumbnail class."
msgstr ""
-#: contrib/image/forms.py:246
+#: contrib/image/forms.py:247
msgid ""
"You have given more than one external, internal, or file link target. Only "
"one option is allowed."
msgstr ""
-#: contrib/image/forms.py:255
-msgid ""
-"You need to add either an image, or a URL linking to an external image."
+#: contrib/image/forms.py:256
+msgid "You need to add either an image, or a URL linking to an external image."
msgstr ""
-#: contrib/image/forms.py:281
+#: contrib/image/forms.py:282
#, python-brace-format
msgid ""
"Invalid cropping settings. You cannot combine \"{field_a}\" with "
@@ -1066,8 +1065,8 @@ msgstr ""
msgid "Makes the jumbotron fill the full width of the container or window."
msgstr ""
-#: contrib/link/apps.py:7 contrib/link/constants.py:5
-#: contrib/link/models.py:11 contrib/link/models.py:114
+#: contrib/link/apps.py:7 contrib/link/constants.py:5 contrib/link/models.py:11
+#: contrib/link/models.py:114
msgid "Link"
msgstr "Link"
@@ -1294,9 +1293,11 @@ msgstr "Pagina tree"
msgid "Brand"
msgstr "Brand"
-#: contrib/navigation/cms_plugins.py:133 contrib/navigation/models.py:24
-msgid "Navigation container"
-msgstr "Navigatie container"
+#: contrib/navigation/cms_plugins.py:133
+#, fuzzy
+#| msgid "Collapse container"
+msgid "Collapsible container"
+msgstr "Collaps container"
#: contrib/navigation/cms_plugins.py:164
msgid "Navigation link"
@@ -1326,6 +1327,10 @@ msgstr ""
msgid "Enter brand name or add child plugins for brand icon or image"
msgstr ""
+#: contrib/navigation/models.py:24
+msgid "Navigation container"
+msgstr "Navigatie container"
+
#: contrib/navigation/models.py:30
msgid "Navigation Link"
msgstr "Navigatie Link"
@@ -1461,8 +1466,8 @@ msgstr "ID"
#: contrib/utilities/forms.py:128
msgid ""
-"Fill in unique ID for table of contents. If empty heading will not appear in"
-" table of contents."
+"Fill in unique ID for table of contents. If empty heading will not appear in "
+"table of contents."
msgstr ""
#: contrib/utilities/forms.py:132
@@ -1594,7 +1599,8 @@ msgstr "XX groot"
#: helpers.py:112
#, python-brace-format
-msgid "Read more in the documentation."
+msgid ""
+"Read more in the documentation."
msgstr "Lees meer in de documentatie."
#: models.py:24
@@ -1608,3 +1614,9 @@ msgstr ""
#: settings.py:73
msgid "Offcanvas"
msgstr ""
+
+#~ msgid "Align left"
+#~ msgstr "Links uitlijnen"
+
+#~ msgid "Align right"
+#~ msgstr "Rechts uitlijnen"
diff --git a/djangocms_frontend/locale/sq/LC_MESSAGES/django.po b/djangocms_frontend/locale/sq/LC_MESSAGES/django.po
index 59bed8c0..aa5f05c4 100644
--- a/djangocms_frontend/locale/sq/LC_MESSAGES/django.po
+++ b/djangocms_frontend/locale/sq/LC_MESSAGES/django.po
@@ -12,7 +12,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-10-04 07:43+0200\n"
+"POT-Creation-Date: 2024-02-28 23:03+0100\n"
"PO-Revision-Date: 2023-01-20 15:48+0000\n"
"Last-Translator: Besnik Bleta , 2023\n"
"Language-Team: Albanian (https://app.transifex.com/divio/teams/58664/sq/)\n"
@@ -826,31 +826,31 @@ msgstr "Riktheje te parazgjedhje"
msgid "Icon"
msgstr ""
-#: contrib/icon/conf.py:54
+#: contrib/icon/conf.py:51
msgid "Regular"
msgstr ""
-#: contrib/icon/conf.py:55
+#: contrib/icon/conf.py:52
msgid "x 2"
msgstr ""
-#: contrib/icon/conf.py:56
+#: contrib/icon/conf.py:53
msgid "x 3"
msgstr ""
-#: contrib/icon/conf.py:57
+#: contrib/icon/conf.py:54
msgid "x 4"
msgstr ""
-#: contrib/icon/conf.py:58
+#: contrib/icon/conf.py:55
msgid "x 5"
msgstr ""
-#: contrib/icon/conf.py:59
+#: contrib/icon/conf.py:56
msgid "x 8"
msgstr ""
-#: contrib/icon/conf.py:60
+#: contrib/icon/conf.py:57
msgid "x 12"
msgstr ""
@@ -887,12 +887,16 @@ msgid "Cropping"
msgstr "Qethje"
#: contrib/image/forms.py:25
-msgid "Align left"
-msgstr "Vëre majtas"
+#, fuzzy
+#| msgid "Icon left"
+msgid "Float left"
+msgstr "Ikonë majtas"
#: contrib/image/forms.py:26
-msgid "Align right"
-msgstr "Vëre djathtas"
+#, fuzzy
+#| msgid "Icon right"
+msgid "Float right"
+msgstr "Ikonë djathas"
#: contrib/image/forms.py:27
msgid "Align center"
@@ -972,58 +976,58 @@ msgid ""
"The image height as number in pixels. Example: \"720\" and not \"720px\"."
msgstr "Lartësia e figurës si numër pikselash. Shembull: “720” dhe jo “720px”."
-#: contrib/image/forms.py:150
+#: contrib/image/forms.py:151
msgid "Aligns the image according to the selected option."
msgstr "E drejton figurën sipas mundësisë së përzgjedhur."
-#: contrib/image/forms.py:153 contrib/utilities/forms.py:167
+#: contrib/image/forms.py:154 contrib/utilities/forms.py:167
msgid "Link attributes"
msgstr "Atribute lidhjeje"
-#: contrib/image/forms.py:154
+#: contrib/image/forms.py:155
msgid "Attributes apply to the link."
msgstr "Atribute që aplikohen mbi lidhjen."
-#: contrib/image/forms.py:160
+#: contrib/image/forms.py:161
msgid "Automatic scaling"
msgstr "Përshkallëzim automatik"
-#: contrib/image/forms.py:163
+#: contrib/image/forms.py:164
msgid "Uses the placeholder dimensions to automatically calculate the size."
msgstr ""
"Përdor përmasat e vendmbajtëses për të llogaritur automatikisht madhësinë."
-#: contrib/image/forms.py:169
+#: contrib/image/forms.py:170
msgid "Use original image"
msgstr "Përdor figurën origjinale"
-#: contrib/image/forms.py:171
+#: contrib/image/forms.py:172
msgid "Outputs the raw image without cropping."
msgstr "Jep figurën e papërpunuar pa qethje."
-#: contrib/image/forms.py:176
+#: contrib/image/forms.py:177
msgid "Crop image"
msgstr "Qetheni figurën"
-#: contrib/image/forms.py:179
+#: contrib/image/forms.py:180
msgid ""
"Crops the image according to the thumbnail settings provided in the template."
msgstr "E qeth figurën sipas rregullimeve miniaturash të dhëna te gjedhja."
-#: contrib/image/forms.py:183
+#: contrib/image/forms.py:184
msgid "Upscale image"
msgstr ""
-#: contrib/image/forms.py:186
+#: contrib/image/forms.py:187
msgid ""
"Upscales the image to the size of the thumbnail settings in the template."
msgstr ""
-#: contrib/image/forms.py:190
+#: contrib/image/forms.py:191
msgid "Use responsive image"
msgstr "Përdor figurë reaguese"
-#: contrib/image/forms.py:194
+#: contrib/image/forms.py:195
msgid ""
"Uses responsive image technique to choose better image to display based upon "
"screen viewport. This configuration only applies to uploaded images "
@@ -1033,11 +1037,11 @@ msgstr ""
"shfaqje, bazuar në ekranin e parjes. Ky formësim zbatohet vetëm mbi figurat "
"e ngarkuara (fotot e jashtme nuk do të preken prej kësaj). "
-#: contrib/image/forms.py:203
+#: contrib/image/forms.py:204
msgid "Thumbnail options"
msgstr "Mundësi miniaturash"
-#: contrib/image/forms.py:206
+#: contrib/image/forms.py:207
msgid ""
"Overrides width, height, and crop; scales up to the provided preset "
"dimensions."
@@ -1045,31 +1049,31 @@ msgstr ""
"Anashkalon gjerësi, lartësi dhe qethje, e bën sa përmasat e paracaktuara të "
"dhëna."
-#: contrib/image/forms.py:210
+#: contrib/image/forms.py:211
msgid "Responsive"
msgstr "Reaguese"
-#: contrib/image/forms.py:213
+#: contrib/image/forms.py:214
msgid "Adds the .img-fluid class to make the image responsive."
msgstr "Shton klasën .img-fluid për ta bërë figurën reaguese."
-#: contrib/image/forms.py:216
+#: contrib/image/forms.py:217
msgid "Rounded"
msgstr "Rrumbullake"
-#: contrib/image/forms.py:219
+#: contrib/image/forms.py:220
msgid "Adds the .rounded class for round corners."
msgstr "Shton klasën .rounded për cepa të rrumbullakët."
-#: contrib/image/forms.py:222
+#: contrib/image/forms.py:223
msgid "Thumbnail"
msgstr "Miniaturë"
-#: contrib/image/forms.py:225
+#: contrib/image/forms.py:226
msgid "Adds the .img-thumbnail class."
msgstr "Shton .img-thumbnail class."
-#: contrib/image/forms.py:246
+#: contrib/image/forms.py:247
msgid ""
"You have given more than one external, internal, or file link target. Only "
"one option is allowed."
@@ -1077,13 +1081,13 @@ msgstr ""
"Keni dhënë më shumë se një objektiv të jashtëm, të brendshëm, ose lidhje për "
"te kartelë. Lejohet vetëm një mundësi."
-#: contrib/image/forms.py:255
+#: contrib/image/forms.py:256
msgid "You need to add either an image, or a URL linking to an external image."
msgstr ""
"Lypset të shtoni ose një figurë, ose një URL që shpie te një figurë e "
"jashtme."
-#: contrib/image/forms.py:281
+#: contrib/image/forms.py:282
#, python-brace-format
msgid ""
"Invalid cropping settings. You cannot combine \"{field_a}\" with "
@@ -1337,9 +1341,11 @@ msgstr "Pemë faqeje"
msgid "Brand"
msgstr "Markë"
-#: contrib/navigation/cms_plugins.py:133 contrib/navigation/models.py:24
-msgid "Navigation container"
-msgstr "Kontejner Menuje Lëvizjesh"
+#: contrib/navigation/cms_plugins.py:133
+#, fuzzy
+#| msgid "Collapse container"
+msgid "Collapsible container"
+msgstr "Tkurre kontejnerin"
#: contrib/navigation/cms_plugins.py:164
msgid "Navigation link"
@@ -1370,6 +1376,10 @@ msgstr ""
msgid "Enter brand name or add child plugins for brand icon or image"
msgstr "Jepni emër marke, ose shtoni shtojca pjellë për ikonë ose figurë marke"
+#: contrib/navigation/models.py:24
+msgid "Navigation container"
+msgstr "Kontejner Menuje Lëvizjesh"
+
#: contrib/navigation/models.py:30
msgid "Navigation Link"
msgstr "Lidhje Lëvizjeje"
@@ -1663,5 +1673,11 @@ msgstr "S’ka rregullime të tjera për këtë shtojcë. Ju lutemi, shtypni “
msgid "Offcanvas"
msgstr ""
+#~ msgid "Align left"
+#~ msgstr "Vëre majtas"
+
+#~ msgid "Align right"
+#~ msgstr "Vëre djathtas"
+
#~ msgid "Template"
#~ msgstr "Gjedhe"
diff --git a/djangocms_frontend/static/djangocms_frontend/css/base.css b/djangocms_frontend/static/djangocms_frontend/css/base.css
index 3e437e26..adddcd18 100644
--- a/djangocms_frontend/static/djangocms_frontend/css/base.css
+++ b/djangocms_frontend/static/djangocms_frontend/css/base.css
@@ -5,4 +5,4 @@
/private/sass instead
*/
-@charset "UTF-8";:root{--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-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--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:0.8125rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-bg:#fff;--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-2xl:2rem;--bs-border-radius-pill:50rem;--bs-link-color:#0d6efd;--bs-link-hover-color:#0a58ca;--bs-code-color:#d63384;--bs-highlight-bg:#fff3cd}.btn{--bs-btn-padding-x:0.75rem;--bs-btn-padding-y:0.375rem;--bs-btn-font-size:0.8125rem;--bs-btn-font-weight:400;--bs-btn-line-height:1.5;--bs-btn-color:#212529;--bs-btn-bg:transparent;--bs-btn-border-width:1px;--bs-btn-border-color:transparent;--bs-btn-border-radius:0.375rem;--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;-ms-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 .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .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,.btn.active,.btn.show,.btn:first-child:active,:not(.btn-check)+.btn:active{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,.btn.active:focus-visible,.btn.show:focus-visible,.btn:first-child:active:focus-visible,:not(.btn-check)+.btn:active: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:none;--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{--bs-btn-padding-y:0.5rem;--bs-btn-padding-x:1rem;--bs-btn-font-size:1.015625rem;--bs-btn-border-radius:0.5rem}.btn-sm{--bs-btn-padding-y:0.25rem;--bs-btn-padding-x:0.5rem;--bs-btn-font-size:0.7109375rem;--bs-btn-border-radius:0.25rem}.link-primary{color:#0d6efd!important}.link-primary:focus,.link-primary:hover{color:#0a58ca!important}.link-secondary{color:#6c757d!important}.link-secondary:focus,.link-secondary:hover{color:#565e64!important}.link-success{color:#198754!important}.link-success:focus,.link-success:hover{color:#146c43!important}.link-info{color:#0dcaf0!important}.link-info:focus,.link-info:hover{color:#3dd5f3!important}.link-warning{color:#ffc107!important}.link-warning:focus,.link-warning:hover{color:#ffcd39!important}.link-danger{color:#dc3545!important}.link-danger:focus,.link-danger:hover{color:#b02a37!important}.link-light{color:#f8f9fa!important}.link-light:focus,.link-light:hover{color:#f9fafb!important}.link-dark{color:#212529!important}.link-dark:focus,.link-dark:hover{color:#1a1e21!important}.nav{--bs-nav-link-padding-x:1rem;--bs-nav-link-padding-y:0.3rem;--bs-nav-link-color:var(--bs-link-color);--bs-nav-link-hover-color:var(--bs-link-hover-color);--bs-nav-link-disabled-color:#6c757d;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;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;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{transition:none}}.nav-link:focus,.nav-link:hover{color:var(--bs-nav-link-hover-color)}.nav-link.disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width:1px;--bs-nav-tabs-border-color:#dee2e6;--bs-nav-tabs-border-radius:0.375rem;--bs-nav-tabs-link-hover-border-color:#e9ecef #e9ecef #dee2e6;--bs-nav-tabs-link-active-color:#495057;--bs-nav-tabs-link-active-bg:#fff;--bs-nav-tabs-link-active-border-color:#dee2e6 #dee2e6 #fff;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));background:0 0;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:focus,.nav-tabs .nav-link:hover{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-item.show .nav-link,.nav-tabs .nav-link.active{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:4px;--bs-nav-pills-link-active-color:#fff;--bs-nav-pills-link-active-bg:#0bf}.nav-pills .nav-link{background:0 0;border:0;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-fill .nav-item,.nav-fill>.nav-link{-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;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}.icon{display:inline-block;vertical-align:top;width:1em;height:1em;background-position:center;background-repeat:no-repeat}.icon svg{display:block;width:100%;height:100%}.icon-info{width:.9em;font-size:110%!important}.icon-white{color:#fff}.icon-white svg{fill:#fff}.icon-black{color:#000}.icon-black svg{fill:#000}.icon-primary{color:#0bf}.icon-primary svg{fill:#0bf}.djangocms-icon .icon>input{float:left;position:relative;top:12px}.djangocms-icon .caret{margin-left:8px}.aligned .frontend-button-group label{min-width:unset}.frontend-button-group .btn{box-sizing:border-box;cursor:pointer;-webkit-appearance:none;margin:2px;overflow:hidden;text-overflow:ellipsis}.frontend-button-group .btn.active{outline:3px solid #0bf;border-color:#fff!important}.frontend-button-group .btn-default.active{border-radius:0;background-color:#0bf!important}.frontend-button-group-context-colors>div,.frontend-button-group-context-size>div{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;min-height:75px}.frontend-button-group-context-colors .btn{-ms-flex-preferred-size:calc(25% - 4px);flex-basis:calc(25% - 4px)}@media (min-width:820px){.frontend-button-group-context-colors .btn{-ms-flex-preferred-size:calc(20% - 4px);flex-basis:calc(20% - 4px)}}.frontend-button-group-icons .icon,.frontend-grid-icons .icon{font-size:24px}.frontend-button-group-icons .icon-flex-align-center,.frontend-button-group-icons .icon-flex-align-end,.frontend-button-group-icons .icon-flex-align-start,.frontend-grid-icons .icon-flex-align-center,.frontend-grid-icons .icon-flex-align-end,.frontend-grid-icons .icon-flex-align-start{transform:scale(1.4)}.frontend-button-group-icons .icon-flex-content-around,.frontend-button-group-icons .icon-flex-content-between,.frontend-grid-icons .icon-flex-content-around,.frontend-grid-icons .icon-flex-content-between{transform:scale(1.6)}.frontend-button-group-icons .icon-flex-self-center,.frontend-button-group-icons .icon-flex-self-end,.frontend-button-group-icons .icon-flex-self-start,.frontend-grid-icons .icon-flex-self-center,.frontend-grid-icons .icon-flex-self-end,.frontend-grid-icons .icon-flex-self-start{transform:scale(1.4)}.frontend-button-group-icons .icon-align-reset,.frontend-button-group-icons .icon-no-selection,.frontend-grid-icons .icon-align-reset,.frontend-grid-icons .icon-no-selection{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-align-items-start,.frontend-button-group-icons .icon-flex-align-start,.frontend-grid-icons .icon-align-items-start,.frontend-grid-icons .icon-flex-align-start{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-align-items-center,.frontend-button-group-icons .icon-flex-align-center,.frontend-grid-icons .icon-align-items-center,.frontend-grid-icons .icon-flex-align-center{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-align-items-end,.frontend-button-group-icons .icon-flex-align-end,.frontend-grid-icons .icon-align-items-end,.frontend-grid-icons .icon-flex-align-end{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-flex-content-start,.frontend-button-group-icons .icon-justify-content-start,.frontend-button-group-icons .icon-start,.frontend-grid-icons .icon-flex-content-start,.frontend-grid-icons .icon-justify-content-start,.frontend-grid-icons .icon-start{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-center,.frontend-button-group-icons .icon-flex-content-center,.frontend-button-group-icons .icon-justify-content-center,.frontend-grid-icons .icon-center,.frontend-grid-icons .icon-flex-content-center,.frontend-grid-icons .icon-justify-content-center{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-end,.frontend-button-group-icons .icon-flex-content-end,.frontend-button-group-icons .icon-justify-content-end,.frontend-grid-icons .icon-end,.frontend-grid-icons .icon-flex-content-end,.frontend-grid-icons .icon-justify-content-end{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-flex-content-around,.frontend-button-group-icons .icon-justify-content-around,.frontend-grid-icons .icon-flex-content-around,.frontend-grid-icons .icon-justify-content-around{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.6)}.frontend-button-group-icons .icon-flex-content-between,.frontend-button-group-icons .icon-justify-content-between,.frontend-grid-icons .icon-flex-content-between,.frontend-grid-icons .icon-justify-content-between{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.6)}.frontend-button-group-icons .icon-nav-fill,.frontend-grid-icons .icon-nav-fill{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-nav-justified,.frontend-grid-icons .icon-nav-justified{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-flex-column,.frontend-grid-icons .icon-flex-column{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-align-self-start,.frontend-button-group-icons .icon-flex-self-start,.frontend-grid-icons .icon-align-self-start,.frontend-grid-icons .icon-flex-self-start{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-align-self-center,.frontend-button-group-icons .icon-flex-self-center,.frontend-grid-icons .icon-align-self-center,.frontend-grid-icons .icon-flex-self-center{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-align-self-end,.frontend-button-group-icons .icon-flex-self-end,.frontend-grid-icons .icon-align-self-end,.frontend-grid-icons .icon-flex-self-end{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-size-sm,.frontend-button-group-icons .icon-size-xs,.frontend-button-group-icons .icon-sm,.frontend-button-group-icons .icon-xs,.frontend-grid-icons .icon-size-sm,.frontend-grid-icons .icon-size-xs,.frontend-grid-icons .icon-sm,.frontend-grid-icons .icon-xs{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-size-sm,.frontend-button-group-icons .icon-sm,.frontend-grid-icons .icon-size-sm,.frontend-grid-icons .icon-sm{transform:rotate(-90deg)}.frontend-button-group-icons .icon-md,.frontend-button-group-icons .icon-size-md,.frontend-grid-icons .icon-md,.frontend-grid-icons .icon-size-md{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-lg,.frontend-button-group-icons .icon-size-lg,.frontend-grid-icons .icon-lg,.frontend-grid-icons .icon-size-lg{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-size-xl,.frontend-button-group-icons .icon-xl,.frontend-grid-icons .icon-size-xl,.frontend-grid-icons .icon-xl{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-size-xxl,.frontend-button-group-icons .icon-xxl,.frontend-grid-icons .icon-size-xxl,.frontend-grid-icons .icon-xxl{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-mb,.frontend-grid-icons .icon-mb{transform:scale(1.3);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-me,.frontend-grid-icons .icon-me{transform:scale(1.3);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-ms,.frontend-grid-icons .icon-ms{transform:scale(1.3);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-mt,.frontend-grid-icons .icon-mt{transform:scale(1.3);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-mx,.frontend-grid-icons .icon-mx{transform:scale(1.3);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-my,.frontend-grid-icons .icon-my{transform:scale(1.3);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-pb,.frontend-grid-icons .icon-pb{transform:scale(1.5);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-pe,.frontend-grid-icons .icon-pe{transform:scale(1.5);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-ps,.frontend-grid-icons .icon-ps{transform:scale(1.5);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-pt,.frontend-grid-icons .icon-pt{transform:scale(1.5);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-px,.frontend-grid-icons .icon-px{transform:scale(1.5);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-py,.frontend-grid-icons .icon-py{transform:scale(1.5);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.icon-info{background-image:url('data:image/svg+xml;utf8,')}.module{margin:0 0 20px}.djangocms-frontend-row .form-row.field-create .icon{position:absolute;font-size:30px;margin-top:28px;margin-left:4px}.djangocms-frontend-row .form-row.field-create input[name=create]{width:130px!important;padding-right:5px!important;text-align:right}.djangocms-frontend-column .form-row.field-xs_col,.djangocms-frontend-column .form-row.field-xs_me,.djangocms-frontend-column .form-row.field-xs_ms,.djangocms-frontend-column .form-row.field-xs_offset,.djangocms-frontend-column .form-row.field-xs_order,.djangocms-frontend-row .form-row.field-row_cols_xs{position:relative;display:-ms-flexbox;display:flex;padding:0;min-width:800px}.djangocms-frontend-column .form-row.field-xs_col .field-box:first-child,.djangocms-frontend-column .form-row.field-xs_me .field-box:first-child,.djangocms-frontend-column .form-row.field-xs_ms .field-box:first-child,.djangocms-frontend-column .form-row.field-xs_offset .field-box:first-child,.djangocms-frontend-column .form-row.field-xs_order .field-box:first-child,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box:first-child{width:115px!important}.djangocms-frontend-column .form-row.field-xs_col .field-box,.djangocms-frontend-column .form-row.field-xs_col .fieldBox,.djangocms-frontend-column .form-row.field-xs_me .field-box,.djangocms-frontend-column .form-row.field-xs_me .fieldBox,.djangocms-frontend-column .form-row.field-xs_ms .field-box,.djangocms-frontend-column .form-row.field-xs_ms .fieldBox,.djangocms-frontend-column .form-row.field-xs_offset .field-box,.djangocms-frontend-column .form-row.field-xs_offset .fieldBox,.djangocms-frontend-column .form-row.field-xs_order .field-box,.djangocms-frontend-column .form-row.field-xs_order .fieldBox,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box,.djangocms-frontend-row .form-row.field-row_cols_xs .fieldBox{position:relative;box-sizing:content-box;width:86px!important;-ms-flex:none;flex:none;padding:15px 10px;margin:0!important;border-bottom:1px solid #eee;float:left!important}.djangocms-frontend-column .form-row.field-xs_col .field-box input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_col .fieldBox input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_me .field-box input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_me .fieldBox input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_ms .field-box input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_ms .fieldBox input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_offset .field-box input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_offset .fieldBox input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_order .field-box input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_order .fieldBox input:not([type=checkbox]),.djangocms-frontend-row .form-row.field-row_cols_xs .field-box input:not([type=checkbox]),.djangocms-frontend-row .form-row.field-row_cols_xs .fieldBox input:not([type=checkbox]){text-align:right;padding-right:5px!important;box-sizing:border-box;width:100%}.djangocms-frontend-column .form-row.field-xs_col .field-box label,.djangocms-frontend-column .form-row.field-xs_col .fieldBox label,.djangocms-frontend-column .form-row.field-xs_me .field-box label,.djangocms-frontend-column .form-row.field-xs_me .fieldBox label,.djangocms-frontend-column .form-row.field-xs_ms .field-box label,.djangocms-frontend-column .form-row.field-xs_ms .fieldBox label,.djangocms-frontend-column .form-row.field-xs_offset .field-box label,.djangocms-frontend-column .form-row.field-xs_offset .fieldBox label,.djangocms-frontend-column .form-row.field-xs_order .field-box label,.djangocms-frontend-column .form-row.field-xs_order .fieldBox label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box label,.djangocms-frontend-row .form-row.field-row_cols_xs .fieldBox label{font-size:12px!important;font-weight:400!important;color:#ccc!important;position:absolute;left:15px;bottom:17px;text-transform:lowercase}.djangocms-frontend-column .form-row.field-xs_col .field-box .disabled,.djangocms-frontend-column .form-row.field-xs_col .fieldBox .disabled,.djangocms-frontend-column .form-row.field-xs_me .field-box .disabled,.djangocms-frontend-column .form-row.field-xs_me .fieldBox .disabled,.djangocms-frontend-column .form-row.field-xs_ms .field-box .disabled,.djangocms-frontend-column .form-row.field-xs_ms .fieldBox .disabled,.djangocms-frontend-column .form-row.field-xs_offset .field-box .disabled,.djangocms-frontend-column .form-row.field-xs_offset .fieldBox .disabled,.djangocms-frontend-column .form-row.field-xs_order .field-box .disabled,.djangocms-frontend-column .form-row.field-xs_order .fieldBox .disabled,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box .disabled,.djangocms-frontend-row .form-row.field-row_cols_xs .fieldBox .disabled{color:#ccc;background:#eee}.djangocms-frontend-column .form-row.field-xs_col .field-box:last-child,.djangocms-frontend-column .form-row.field-xs_col .fieldBox:last-child,.djangocms-frontend-column .form-row.field-xs_me .field-box:last-child,.djangocms-frontend-column .form-row.field-xs_me .fieldBox:last-child,.djangocms-frontend-column .form-row.field-xs_ms .field-box:last-child,.djangocms-frontend-column .form-row.field-xs_ms .fieldBox:last-child,.djangocms-frontend-column .form-row.field-xs_offset .field-box:last-child,.djangocms-frontend-column .form-row.field-xs_offset .fieldBox:last-child,.djangocms-frontend-column .form-row.field-xs_order .field-box:last-child,.djangocms-frontend-column .form-row.field-xs_order .fieldBox:last-child,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box:last-child,.djangocms-frontend-row .form-row.field-row_cols_xs .fieldBox:last-child{border-right:none}.djangocms-frontend-column .form-row.field-xs_col .errors,.djangocms-frontend-column .form-row.field-xs_me .errors,.djangocms-frontend-column .form-row.field-xs_ms .errors,.djangocms-frontend-column .form-row.field-xs_offset .errors,.djangocms-frontend-column .form-row.field-xs_order .errors,.djangocms-frontend-row .form-row.field-row_cols_xs .errors{margin-bottom:0}.djangocms-frontend-column .form-row.field-xs_col .errorlist,.djangocms-frontend-column .form-row.field-xs_me .errorlist,.djangocms-frontend-column .form-row.field-xs_ms .errorlist,.djangocms-frontend-column .form-row.field-xs_offset .errorlist,.djangocms-frontend-column .form-row.field-xs_order .errorlist,.djangocms-frontend-row .form-row.field-row_cols_xs .errorlist{position:absolute!important;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}.djangocms-frontend-column .form-row.field-xs_col.field-xs_me .field-box,.djangocms-frontend-column .form-row.field-xs_me.field-xs_me .field-box,.djangocms-frontend-column .form-row.field-xs_ms.field-xs_me .field-box,.djangocms-frontend-column .form-row.field-xs_offset.field-xs_me .field-box,.djangocms-frontend-column .form-row.field-xs_order.field-xs_me .field-box,.djangocms-frontend-row .form-row.field-row_cols_xs.field-xs_me .field-box{border-bottom:none}.djangocms-frontend-column .form-row.field-xs_col .field-box-label,.djangocms-frontend-column .form-row.field-xs_me .field-box-label,.djangocms-frontend-column .form-row.field-xs_ms .field-box-label,.djangocms-frontend-column .form-row.field-xs_offset .field-box-label,.djangocms-frontend-column .form-row.field-xs_order .field-box-label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box-label{display:-ms-flexbox;display:flex;margin-top:auto;color:#999}.djangocms-frontend-column .form-row.field-xs_col .field-box-label a,.djangocms-frontend-column .form-row.field-xs_me .field-box-label a,.djangocms-frontend-column .form-row.field-xs_ms .field-box-label a,.djangocms-frontend-column .form-row.field-xs_offset .field-box-label a,.djangocms-frontend-column .form-row.field-xs_order .field-box-label a,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box-label a{width:100%;margin-top:auto;color:#999}.djangocms-frontend-column .form-row.field-xs_col .field-box-label a a,.djangocms-frontend-column .form-row.field-xs_me .field-box-label a a,.djangocms-frontend-column .form-row.field-xs_ms .field-box-label a a,.djangocms-frontend-column .form-row.field-xs_offset .field-box-label a a,.djangocms-frontend-column .form-row.field-xs_order .field-box-label a a,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box-label a a{width:100%;margin-top:auto}.djangocms-frontend-column .form-row.field-xs_col .field-lg_me,.djangocms-frontend-column .form-row.field-xs_col .field-lg_ms,.djangocms-frontend-column .form-row.field-xs_col .field-md_me,.djangocms-frontend-column .form-row.field-xs_col .field-md_ms,.djangocms-frontend-column .form-row.field-xs_col .field-sm_me,.djangocms-frontend-column .form-row.field-xs_col .field-sm_ms,.djangocms-frontend-column .form-row.field-xs_col .field-xl_me,.djangocms-frontend-column .form-row.field-xs_col .field-xl_ms,.djangocms-frontend-column .form-row.field-xs_col .field-xs_me,.djangocms-frontend-column .form-row.field-xs_col .field-xs_ms,.djangocms-frontend-column .form-row.field-xs_col .field-xxl_me,.djangocms-frontend-column .form-row.field-xs_col .field-xxl_ms,.djangocms-frontend-column .form-row.field-xs_me .field-lg_me,.djangocms-frontend-column .form-row.field-xs_me .field-lg_ms,.djangocms-frontend-column .form-row.field-xs_me .field-md_me,.djangocms-frontend-column .form-row.field-xs_me .field-md_ms,.djangocms-frontend-column .form-row.field-xs_me .field-sm_me,.djangocms-frontend-column .form-row.field-xs_me .field-sm_ms,.djangocms-frontend-column .form-row.field-xs_me .field-xl_me,.djangocms-frontend-column .form-row.field-xs_me .field-xl_ms,.djangocms-frontend-column .form-row.field-xs_me .field-xs_me,.djangocms-frontend-column .form-row.field-xs_me .field-xs_ms,.djangocms-frontend-column .form-row.field-xs_me .field-xxl_me,.djangocms-frontend-column .form-row.field-xs_me .field-xxl_ms,.djangocms-frontend-column .form-row.field-xs_ms .field-lg_me,.djangocms-frontend-column .form-row.field-xs_ms .field-lg_ms,.djangocms-frontend-column .form-row.field-xs_ms .field-md_me,.djangocms-frontend-column .form-row.field-xs_ms .field-md_ms,.djangocms-frontend-column .form-row.field-xs_ms .field-sm_me,.djangocms-frontend-column .form-row.field-xs_ms .field-sm_ms,.djangocms-frontend-column .form-row.field-xs_ms .field-xl_me,.djangocms-frontend-column .form-row.field-xs_ms .field-xl_ms,.djangocms-frontend-column .form-row.field-xs_ms .field-xs_me,.djangocms-frontend-column .form-row.field-xs_ms .field-xs_ms,.djangocms-frontend-column .form-row.field-xs_ms .field-xxl_me,.djangocms-frontend-column .form-row.field-xs_ms .field-xxl_ms,.djangocms-frontend-column .form-row.field-xs_offset .field-lg_me,.djangocms-frontend-column .form-row.field-xs_offset .field-lg_ms,.djangocms-frontend-column .form-row.field-xs_offset .field-md_me,.djangocms-frontend-column .form-row.field-xs_offset .field-md_ms,.djangocms-frontend-column .form-row.field-xs_offset .field-sm_me,.djangocms-frontend-column .form-row.field-xs_offset .field-sm_ms,.djangocms-frontend-column .form-row.field-xs_offset .field-xl_me,.djangocms-frontend-column .form-row.field-xs_offset .field-xl_ms,.djangocms-frontend-column .form-row.field-xs_offset .field-xs_me,.djangocms-frontend-column .form-row.field-xs_offset .field-xs_ms,.djangocms-frontend-column .form-row.field-xs_offset .field-xxl_me,.djangocms-frontend-column .form-row.field-xs_offset .field-xxl_ms,.djangocms-frontend-column .form-row.field-xs_order .field-lg_me,.djangocms-frontend-column .form-row.field-xs_order .field-lg_ms,.djangocms-frontend-column .form-row.field-xs_order .field-md_me,.djangocms-frontend-column .form-row.field-xs_order .field-md_ms,.djangocms-frontend-column .form-row.field-xs_order .field-sm_me,.djangocms-frontend-column .form-row.field-xs_order .field-sm_ms,.djangocms-frontend-column .form-row.field-xs_order .field-xl_me,.djangocms-frontend-column .form-row.field-xs_order .field-xl_ms,.djangocms-frontend-column .form-row.field-xs_order .field-xs_me,.djangocms-frontend-column .form-row.field-xs_order .field-xs_ms,.djangocms-frontend-column .form-row.field-xs_order .field-xxl_me,.djangocms-frontend-column .form-row.field-xs_order .field-xxl_ms,.djangocms-frontend-row .form-row.field-row_cols_xs .field-lg_me,.djangocms-frontend-row .form-row.field-row_cols_xs .field-lg_ms,.djangocms-frontend-row .form-row.field-row_cols_xs .field-md_me,.djangocms-frontend-row .form-row.field-row_cols_xs .field-md_ms,.djangocms-frontend-row .form-row.field-row_cols_xs .field-sm_me,.djangocms-frontend-row .form-row.field-row_cols_xs .field-sm_ms,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xl_me,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xl_ms,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xs_me,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xs_ms,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xxl_me,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xxl_ms{text-align:left}.djangocms-frontend-column .form-row.field-xs_col .field-lg_me label,.djangocms-frontend-column .form-row.field-xs_col .field-lg_ms label,.djangocms-frontend-column .form-row.field-xs_col .field-md_me label,.djangocms-frontend-column .form-row.field-xs_col .field-md_ms label,.djangocms-frontend-column .form-row.field-xs_col .field-sm_me label,.djangocms-frontend-column .form-row.field-xs_col .field-sm_ms label,.djangocms-frontend-column .form-row.field-xs_col .field-xl_me label,.djangocms-frontend-column .form-row.field-xs_col .field-xl_ms label,.djangocms-frontend-column .form-row.field-xs_col .field-xs_me label,.djangocms-frontend-column .form-row.field-xs_col .field-xs_ms label,.djangocms-frontend-column .form-row.field-xs_col .field-xxl_me label,.djangocms-frontend-column .form-row.field-xs_col .field-xxl_ms label,.djangocms-frontend-column .form-row.field-xs_me .field-lg_me label,.djangocms-frontend-column .form-row.field-xs_me .field-lg_ms label,.djangocms-frontend-column .form-row.field-xs_me .field-md_me label,.djangocms-frontend-column .form-row.field-xs_me .field-md_ms label,.djangocms-frontend-column .form-row.field-xs_me .field-sm_me label,.djangocms-frontend-column .form-row.field-xs_me .field-sm_ms label,.djangocms-frontend-column .form-row.field-xs_me .field-xl_me label,.djangocms-frontend-column .form-row.field-xs_me .field-xl_ms label,.djangocms-frontend-column .form-row.field-xs_me .field-xs_me label,.djangocms-frontend-column .form-row.field-xs_me .field-xs_ms label,.djangocms-frontend-column .form-row.field-xs_me .field-xxl_me label,.djangocms-frontend-column .form-row.field-xs_me .field-xxl_ms label,.djangocms-frontend-column .form-row.field-xs_ms .field-lg_me label,.djangocms-frontend-column .form-row.field-xs_ms .field-lg_ms label,.djangocms-frontend-column .form-row.field-xs_ms .field-md_me label,.djangocms-frontend-column .form-row.field-xs_ms .field-md_ms label,.djangocms-frontend-column .form-row.field-xs_ms .field-sm_me label,.djangocms-frontend-column .form-row.field-xs_ms .field-sm_ms label,.djangocms-frontend-column .form-row.field-xs_ms .field-xl_me label,.djangocms-frontend-column .form-row.field-xs_ms .field-xl_ms label,.djangocms-frontend-column .form-row.field-xs_ms .field-xs_me label,.djangocms-frontend-column .form-row.field-xs_ms .field-xs_ms label,.djangocms-frontend-column .form-row.field-xs_ms .field-xxl_me label,.djangocms-frontend-column .form-row.field-xs_ms .field-xxl_ms label,.djangocms-frontend-column .form-row.field-xs_offset .field-lg_me label,.djangocms-frontend-column .form-row.field-xs_offset .field-lg_ms label,.djangocms-frontend-column .form-row.field-xs_offset .field-md_me label,.djangocms-frontend-column .form-row.field-xs_offset .field-md_ms label,.djangocms-frontend-column .form-row.field-xs_offset .field-sm_me label,.djangocms-frontend-column .form-row.field-xs_offset .field-sm_ms label,.djangocms-frontend-column .form-row.field-xs_offset .field-xl_me label,.djangocms-frontend-column .form-row.field-xs_offset .field-xl_ms label,.djangocms-frontend-column .form-row.field-xs_offset .field-xs_me label,.djangocms-frontend-column .form-row.field-xs_offset .field-xs_ms label,.djangocms-frontend-column .form-row.field-xs_offset .field-xxl_me label,.djangocms-frontend-column .form-row.field-xs_offset .field-xxl_ms label,.djangocms-frontend-column .form-row.field-xs_order .field-lg_me label,.djangocms-frontend-column .form-row.field-xs_order .field-lg_ms label,.djangocms-frontend-column .form-row.field-xs_order .field-md_me label,.djangocms-frontend-column .form-row.field-xs_order .field-md_ms label,.djangocms-frontend-column .form-row.field-xs_order .field-sm_me label,.djangocms-frontend-column .form-row.field-xs_order .field-sm_ms label,.djangocms-frontend-column .form-row.field-xs_order .field-xl_me label,.djangocms-frontend-column .form-row.field-xs_order .field-xl_ms label,.djangocms-frontend-column .form-row.field-xs_order .field-xs_me label,.djangocms-frontend-column .form-row.field-xs_order .field-xs_ms label,.djangocms-frontend-column .form-row.field-xs_order .field-xxl_me label,.djangocms-frontend-column .form-row.field-xs_order .field-xxl_ms label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-lg_me label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-lg_ms label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-md_me label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-md_ms label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-sm_me label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-sm_ms label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xl_me label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xl_ms label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xs_me label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xs_ms label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xxl_me label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xxl_ms label{left:30px;bottom:14px}.djangocms-frontend-column .form-row.field-xs_col .field-lg_me input,.djangocms-frontend-column .form-row.field-xs_col .field-lg_ms input,.djangocms-frontend-column .form-row.field-xs_col .field-md_me input,.djangocms-frontend-column .form-row.field-xs_col .field-md_ms input,.djangocms-frontend-column .form-row.field-xs_col .field-sm_me input,.djangocms-frontend-column .form-row.field-xs_col .field-sm_ms input,.djangocms-frontend-column .form-row.field-xs_col .field-xl_me input,.djangocms-frontend-column .form-row.field-xs_col .field-xl_ms input,.djangocms-frontend-column .form-row.field-xs_col .field-xs_me input,.djangocms-frontend-column .form-row.field-xs_col .field-xs_ms input,.djangocms-frontend-column .form-row.field-xs_col .field-xxl_me input,.djangocms-frontend-column .form-row.field-xs_col .field-xxl_ms input,.djangocms-frontend-column .form-row.field-xs_me .field-lg_me input,.djangocms-frontend-column .form-row.field-xs_me .field-lg_ms input,.djangocms-frontend-column .form-row.field-xs_me .field-md_me input,.djangocms-frontend-column .form-row.field-xs_me .field-md_ms input,.djangocms-frontend-column .form-row.field-xs_me .field-sm_me input,.djangocms-frontend-column .form-row.field-xs_me .field-sm_ms input,.djangocms-frontend-column .form-row.field-xs_me .field-xl_me input,.djangocms-frontend-column .form-row.field-xs_me .field-xl_ms input,.djangocms-frontend-column .form-row.field-xs_me .field-xs_me input,.djangocms-frontend-column .form-row.field-xs_me .field-xs_ms input,.djangocms-frontend-column .form-row.field-xs_me .field-xxl_me input,.djangocms-frontend-column .form-row.field-xs_me .field-xxl_ms input,.djangocms-frontend-column .form-row.field-xs_ms .field-lg_me input,.djangocms-frontend-column .form-row.field-xs_ms .field-lg_ms input,.djangocms-frontend-column .form-row.field-xs_ms .field-md_me input,.djangocms-frontend-column .form-row.field-xs_ms .field-md_ms input,.djangocms-frontend-column .form-row.field-xs_ms .field-sm_me input,.djangocms-frontend-column .form-row.field-xs_ms .field-sm_ms input,.djangocms-frontend-column .form-row.field-xs_ms .field-xl_me input,.djangocms-frontend-column .form-row.field-xs_ms .field-xl_ms input,.djangocms-frontend-column .form-row.field-xs_ms .field-xs_me input,.djangocms-frontend-column .form-row.field-xs_ms .field-xs_ms input,.djangocms-frontend-column .form-row.field-xs_ms .field-xxl_me input,.djangocms-frontend-column .form-row.field-xs_ms .field-xxl_ms input,.djangocms-frontend-column .form-row.field-xs_offset .field-lg_me input,.djangocms-frontend-column .form-row.field-xs_offset .field-lg_ms input,.djangocms-frontend-column .form-row.field-xs_offset .field-md_me input,.djangocms-frontend-column .form-row.field-xs_offset .field-md_ms input,.djangocms-frontend-column .form-row.field-xs_offset .field-sm_me input,.djangocms-frontend-column .form-row.field-xs_offset .field-sm_ms input,.djangocms-frontend-column .form-row.field-xs_offset .field-xl_me input,.djangocms-frontend-column .form-row.field-xs_offset .field-xl_ms input,.djangocms-frontend-column .form-row.field-xs_offset .field-xs_me input,.djangocms-frontend-column .form-row.field-xs_offset .field-xs_ms input,.djangocms-frontend-column .form-row.field-xs_offset .field-xxl_me input,.djangocms-frontend-column .form-row.field-xs_offset .field-xxl_ms input,.djangocms-frontend-column .form-row.field-xs_order .field-lg_me input,.djangocms-frontend-column .form-row.field-xs_order .field-lg_ms input,.djangocms-frontend-column .form-row.field-xs_order .field-md_me input,.djangocms-frontend-column .form-row.field-xs_order .field-md_ms input,.djangocms-frontend-column .form-row.field-xs_order .field-sm_me input,.djangocms-frontend-column .form-row.field-xs_order .field-sm_ms input,.djangocms-frontend-column .form-row.field-xs_order .field-xl_me input,.djangocms-frontend-column .form-row.field-xs_order .field-xl_ms input,.djangocms-frontend-column .form-row.field-xs_order .field-xs_me input,.djangocms-frontend-column .form-row.field-xs_order .field-xs_ms input,.djangocms-frontend-column .form-row.field-xs_order .field-xxl_me input,.djangocms-frontend-column .form-row.field-xs_order .field-xxl_ms input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-lg_me input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-lg_ms input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-md_me input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-md_ms input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-sm_me input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-sm_ms input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xl_me input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xl_ms input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xs_me input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xs_ms input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xxl_me input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xxl_ms input{position:relative;box-sizing:border-box;top:-3px}.grid-reset{position:absolute;right:5px;top:0}.icon-thead{text-align:center;margin-bottom:15px}.icon-thead .icon{font-size:30px}.icon-thead .icon-size-sm{transform:rotate(90deg)}.icon-title{display:block;font-size:12px;color:#999;padding:5px 0 0}.djangocms-frontend-preview{position:fixed;top:0;right:0;z-index:10;text-align:center;border-radius:0 0 0 3px;padding:10px 20px 27px;border:1px solid var(--dca-gray,var(--hairline-color,#ccc));border-top:none;border-right:none;background:var(--body-bg,#fff)}@media (prefers-color-scheme:dark){.djangocms-frontend-preview{background:var(--body-bg,#000)}}.djangocms-frontend-preview h2{font-size:14px;min-width:150px;margin:0 0 12px}.djangocms-frontend-preview .b4-preview{margin:0 0 -15px}.djangocms-frontend-preview .b4-close{position:absolute;right:10px;top:8px;z-index:100;display:block;color:#5e5e5e;font-size:12px;line-height:20px;font-weight:700;text-transform:uppercase;width:20px;height:20px;border-radius:3px;background:#ddd}.djangocms-frontend-preview .b4-close:hover{color:#fff!important;text-decoration:none;background:#0bf}.djangocms-frontend-preview .btn>span{vertical-align:middle}.djangocms-frontend-preview .btn>span>.icon{vertical-align:middle}.djangocms-frontend-preview .btn>span svg,.djangocms-frontend-preview .btn>span use{fill:currentColor}.djangocms-frontend-blockquote textarea{height:110px}#id_link_type{padding:0;margin:0;border:none}#id_link_type li{padding:0;margin:0 15px 5px 0;border:none}#id_link_type label input{position:relative;top:-4px}a[data-pk]{position:relative}a[data-pk]:after{content:attr(data-pk);visibility:hidden;width:auto;font-weight:400;font-size:80%;background-color:var(--dca-white,var(--body-bg,#fff));color:var(--dca-gray,var(--body-fg,#333));border:solid 1px var(--dca-gray,var(--body-fg,#333));text-align:center;padding:5px 10px;position:absolute;z-index:1;top:110%;left:50%;margin-left:-50%}a[data-pk]:hover:after{visibility:visible}.djangocms-admin-style .form-row.field-plugin_title input[name=plugin_title_0]{margin-bottom:.5em!important}.djangocms-admin-style .form-row.field-plugin_title input[name=plugin_title_1]{width:calc(100% - 2em)!important}body:not(.djangocms-admin-style) .form-row.field-plugin_title input[name=plugin_title_1]{width:calc(100% - 200px - 1em)!important;margin-left:1em}.frontend-icon-picker{text-align:center;display:inline-block}.frontend-icon-picker .icon-container{position:relative;margin-bottom:.5em;margin-left:auto;margin-right:auto;width:7em;height:7em;border:1px var(--dca-gray-light,var(--border-color,#d3d3d3)) solid;transition:background-color .15s,color .15s}.frontend-icon-picker .icon-container .icon-preview{width:7em;height:7em;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}.frontend-icon-picker .icon-container .icon-preview .icon-box{font-size:500%;line-height:1.3;margin:0;text-align:center}.frontend-icon-picker .icon-container .icon-preview .icon-box i,.frontend-icon-picker .icon-container .icon-preview .icon-box span{font-size:unset}.frontend-icon-picker .icon-container .icon-preview .empty-box{text-align:center;overflow:hidden;text-overflow:ellipsis;line-height:1;font-size:100%}.frontend-icon-picker .icon-container .icon-preview .empty-box.hidden{display:none}.frontend-icon-picker .icon-container .icon-preview:hover{background:var(--dca-gray-light,var(--border-color,#d3d3d3));cursor:pointer}.frontend-icon-picker .icon-container .icon-close-indicator{display:block;border-radius:50%;color:var(--dca-black,var(--body-fg,#000));background-color:var(--dca-white,var(--body-bg,#fff));padding:.5rem;border:1px solid var(--dca-black,var(--body-fg,#000));transform:translate(-50%,-50%);top:0;left:100%;width:.6em;height:.6em;line-height:.5em;position:absolute;transition:background-color .15s}.frontend-icon-picker .icon-container .icon-close-indicator:before{content:"×"}.frontend-icon-picker .icon-container .icon-close-indicator:hover{background:var(--delete-button-bg,red);color:var(--delete-button-fg,#fff);cursor:pointer}.uip-modal{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-ms-user-select:none;user-select:none;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.uip-modal *,.uip-modal :after,.uip-modal :before{box-sizing:border-box}.uip-modal.uip-close{opacity:0;visibility:hidden;transition:all .4s ease-in-out}.uip-modal.uip-open{opacity:1;visibility:visible;transition:all .4s ease-in-out}.uip-modal .uip-modal--content{position:absolute;border-radius:3px;box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:var(--dca-gray-lightest,var(--darkened-bg,#f8f8f8));width:100%;margin:auto;left:0;right:0;margin-bottom:2em}.uip-modal .uip-modal--content .uip-modal--header{padding:15px 15px;background-color:var(--dca-white,var(--bg-color,#fff));box-shadow:0 0 8px rgba(0,0,0,.1);position:relative;z-index:1;font-size:15px;color:var(--dca-gray,var(--body-quiet-color,#666));font-weight:500;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.uip-modal .uip-modal--content .uip-modal--header .uip-modal--header-logo-title{padding-top:2px;line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.uip-modal .uip-modal--content .uip-modal--header .uip-modal--header-close-btn{cursor:pointer}.uip-modal .uip-modal--content .uip-modal--body{font-size:12px;line-height:1.5;box-sizing:border-box;padding:0;height:70vh;display:-ms-flexbox;display:flex;min-height:50px;max-height:85vh;overflow:auto}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar{-ms-flex-negative:0;flex-shrink:0;max-width:25%}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs{margin-top:30px}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item{padding:15px;font-size:14px;color:var(--dca-gray,var(--body-quiet-color,#666));text-align:left;cursor:pointer;position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;text-transform:capitalize}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item i{font-size:20px;padding-right:15px;color:var(--dca-gray-lighter,var(--border-color,#ccc))}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item img{padding-right:15px}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item.universal-active{background-color:var(--dca-white,var(--bg-color,#fff));box-shadow:0 6px 20px 0 rgba(0,0,0,.1)}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item.universal-active:after{content:"";position:absolute;height:100%;width:5px;top:0;left:0;background-color:#0bf}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item.universal-active i{color:#0bf}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item:only-child{display:none}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding:30px 80px 0;width:100%}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner{overflow:auto;margin:25px -15px 0;padding:0 15px 15px}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview{display:-ms-grid;display:grid;grid-gap:20px;margin:20px 0}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item{position:relative;padding:10px;background-color:var(--dca-white,var(--bg-color,#fff));box-shadow:0 1px 12px rgba(0,0,0,.05);border-radius:3px;cursor:pointer;transition:all .3s;overflow:hidden}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item:hover{box-shadow:0 1px 14px rgba(0,0,0,.16)}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item.universal-selected{box-shadow:0 1px 12px rgba(0,0,0,.05),0 0 0 3px #0bf}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item .uip-icon-item-inner{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;padding:1px}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item .uip-icon-item-inner .uip-icon-item__icon,.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item .uip-icon-item-inner i{font-size:25px;color:var(--dca-gray-darkest,var(--body-fg,#333))}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item .uip-icon-item-inner .uip-icon-item-name{color:var(--dca-gray,var(--body-quiet-color,#666));font-size:11px;padding:13px 0 0;max-width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;text-transform:capitalize}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-search{position:relative}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-search input{width:100%;padding:8px 15px;background-color:var(--dca-white,var(--bg-color,#fff));border:none}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-search input:-ms-input-placeholder{font-style:italic}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-search input::placeholder{font-style:italic}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-search img{position:absolute;top:50%;transform:translateY(-50%);right:10px}.uip-modal .uip-modal--footer{border-top:1px solid var(--dca-gray-lighter,var(--border-color,#ccc));text-align:center;background-color:var(--dca-white,var(--bg-color,#fff));border:none;display:none;-ms-flex-pack:end;justify-content:flex-end;padding:5px;box-shadow:0 0 8px rgba(0,0,0,.1);position:relative;display:-ms-flexbox;display:flex}.uip-modal .uip-modal--footer button.uip-insert-icon-button{padding:10px 35px!important;color:var(--dca-white,var(--bg-color,#fff))!important;background-color:#0bf!important;border:none;cursor:pointer;outline:0}.uip-modal .uip-modal--footer .universal-button{height:40px;margin-left:5px}.uip-modal .uip-modal--footer .universal-button-success{padding:12px 36px;color:var(--dca-white,var(--bg-color,#fff));width:initial}.uip-modal .uip-modal--footer .universal-button-success:hover{background-color:#0bf}@media (min-width:1440px){body:not(.cms-admin-modal) .uip-modal .uip-modal--content{max-width:1200px}}@media (max-width:1439px){body:not(.cms-admin-modal) .uip-modal .uip-modal--content{max-width:990px}.uip-modal--icon-preview-wrap{padding:30px 50px 0}}@media (max-width:1023px){body:not(.cms-admin-modal) .uip-modal .uip-modal--content{max-width:740px}}@media (max-width:767px){.uip-modal--icon-preview-wrap{padding:15px!important}.uip-modal--sidebar{display:none}}@media (min-width:1440px){.uip-modal--icon-preview{-ms-grid-columns:(1fr)[7];grid-template-columns:repeat(7,1fr)}}@media (max-width:1439px){.uip-modal--icon-preview{-ms-grid-columns:(1fr)[6];grid-template-columns:repeat(6,1fr)}}@media (max-width:1024px){.uip-modal--icon-preview{-ms-grid-columns:(1fr)[5];grid-template-columns:repeat(5,1fr)}}@media (max-width:767px){.uip-modal--icon-preview{-ms-grid-columns:(1fr)[4];grid-template-columns:repeat(4,1fr)}}@media (max-width:479px){.uip-modal--icon-preview{-ms-grid-columns:(1fr)[3];grid-template-columns:repeat(3,1fr)}}@media (max-width:1439px){.uip-modal--sidebar-tab-item{padding:15px 15px 15px 25px;font-size:11px}.uip-modal--sidebar-tab-item i{font-size:15px}}@media (max-width:1024px){.uip-modal--sidebar-tab-item i,.uip-modal--sidebar-tab-item img{display:none}}.sr-only{position:absolute!important;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}ul.nav{margin-bottom:1em}ul.nav>li.nav-item{list-style-type:none;padding:inherit}.colM ul:not(.object-tools).nav{margin-top:0;margin-bottom:20px}ul.nav .nav-item{margin-right:1rem}ul.nav .nav-link{position:relative;text-decoration:none}ul.nav .nav-link span.indicator{display:none;border-radius:50%;padding:.5rem;border:1px solid var(--dca-white,var(--body-bg,#fff));transform:translate(-50%,-50%);top:0;left:100%;position:absolute}ul.nav .nav-link span.indicator.error{background-color:var(--bs-danger)}ul.nav .nav-link span.indicator.attributes{background-color:var(--bs-info);display:block}ul.nav .nav-link.error>span.indicator{display:block}ul.nav.nav-pills .nav-link:not(.active){border-style:solid;border-width:1px}body:not(.djangocms-admin-style) ul.djangocms-frontend.nav-tabs+div.tab-content .tab-pane{border-left-style:solid;border-bottom-style:solid;border-right-style:solid;border-left-color:var(--hairline-color);border-bottom-color:var(--hairline-color);border-right-color:var(--hairline-color);border-width:1px}body:not(.djangocms-admin-style) ul.djangocms-frontend.nav-tabs+div.tab-content .tab-pane fieldset:last-child{margin-bottom:0}div.tab-pk{-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center;color:var(--dca-gray-darker,var(--body-fg,#333));font-size:80%;margin-left:auto}.djangocms-admin-style .colM ul.nav:not(.object-tools):not(.messagelist){margin-top:0}.djangocms-admin-style .colM ul.nav:not(.object-tools):not(.messagelist) li.nav-item{border-top:none}input[type=number].auto-field+span{display:none;position:absolute;bottom:0;right:0;text-align:right;margin-right:31px;margin-bottom:23px;cursor:pointer}body:not(.djangocms-admin-style) input[type=number].auto-field+span{margin-bottom:23px}@media (max-width:1024px){body:not(.djangocms-admin-style) input[type=number].auto-field+span{margin-bottom:24px}}input[type=number].auto-field+span:after{content:"auto"}input[type=number].auto-field.auto{color:var(--dca-white,var(--body-bg,#fff));caret-color:var(--dca-black,var(--body-fg,#000))}input[type=number].auto-field.auto+span{display:block}
\ No newline at end of file
+@charset "UTF-8";:root{--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-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--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:0.8125rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-bg:#fff;--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-2xl:2rem;--bs-border-radius-pill:50rem;--bs-link-color:#0d6efd;--bs-link-hover-color:#0a58ca;--bs-code-color:#d63384;--bs-highlight-bg:#fff3cd}.btn{--bs-btn-padding-x:0.75rem;--bs-btn-padding-y:0.375rem;--bs-btn-font-size:0.8125rem;--bs-btn-font-weight:400;--bs-btn-line-height:1.5;--bs-btn-color:#212529;--bs-btn-bg:transparent;--bs-btn-border-width:1px;--bs-btn-border-color:transparent;--bs-btn-border-radius:0.375rem;--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;-ms-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 .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .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,.btn.active,.btn.show,.btn:first-child:active,:not(.btn-check)+.btn:active{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,.btn.active:focus-visible,.btn.show:focus-visible,.btn:first-child:active:focus-visible,:not(.btn-check)+.btn:active: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:none;--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{--bs-btn-padding-y:0.5rem;--bs-btn-padding-x:1rem;--bs-btn-font-size:1.015625rem;--bs-btn-border-radius:0.5rem}.btn-sm{--bs-btn-padding-y:0.25rem;--bs-btn-padding-x:0.5rem;--bs-btn-font-size:0.7109375rem;--bs-btn-border-radius:0.25rem}.link-primary{color:#0d6efd!important}.link-primary:focus,.link-primary:hover{color:#0a58ca!important}.link-secondary{color:#6c757d!important}.link-secondary:focus,.link-secondary:hover{color:#565e64!important}.link-success{color:#198754!important}.link-success:focus,.link-success:hover{color:#146c43!important}.link-info{color:#0dcaf0!important}.link-info:focus,.link-info:hover{color:#3dd5f3!important}.link-warning{color:#ffc107!important}.link-warning:focus,.link-warning:hover{color:#ffcd39!important}.link-danger{color:#dc3545!important}.link-danger:focus,.link-danger:hover{color:#b02a37!important}.link-light{color:#f8f9fa!important}.link-light:focus,.link-light:hover{color:#f9fafb!important}.link-dark{color:#212529!important}.link-dark:focus,.link-dark:hover{color:#1a1e21!important}.nav{--bs-nav-link-padding-x:1rem;--bs-nav-link-padding-y:0.3rem;--bs-nav-link-color:var(--bs-link-color);--bs-nav-link-hover-color:var(--bs-link-hover-color);--bs-nav-link-disabled-color:#6c757d;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;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;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{transition:none}}.nav-link:focus,.nav-link:hover{color:var(--bs-nav-link-hover-color)}.nav-link.disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width:1px;--bs-nav-tabs-border-color:#dee2e6;--bs-nav-tabs-border-radius:0.375rem;--bs-nav-tabs-link-hover-border-color:#e9ecef #e9ecef #dee2e6;--bs-nav-tabs-link-active-color:#495057;--bs-nav-tabs-link-active-bg:#fff;--bs-nav-tabs-link-active-border-color:#dee2e6 #dee2e6 #fff;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));background:0 0;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:focus,.nav-tabs .nav-link:hover{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-item.show .nav-link,.nav-tabs .nav-link.active{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:4px;--bs-nav-pills-link-active-color:#fff;--bs-nav-pills-link-active-bg:#0bf}.nav-pills .nav-link{background:0 0;border:0;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-fill .nav-item,.nav-fill>.nav-link{-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;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}.icon{display:inline-block;vertical-align:top;width:1em;height:1em;background-position:center;background-repeat:no-repeat}.icon svg{display:block;width:100%;height:100%}.icon-info{width:.9em;font-size:110%!important}.icon-white{color:#fff}.icon-white svg{fill:#fff}.icon-black{color:#000}.icon-black svg{fill:#000}.icon-primary{color:#0bf}.icon-primary svg{fill:#0bf}.djangocms-icon .icon>input{float:left;position:relative;top:12px}.djangocms-icon .caret{margin-inline-start:8px}.aligned .frontend-button-group label{min-width:unset}.frontend-button-group .btn{box-sizing:border-box;cursor:pointer;-webkit-appearance:none;margin:2px;overflow:hidden;text-overflow:ellipsis}.frontend-button-group .btn.active{outline:3px solid #0bf;border-color:#fff!important}.frontend-button-group .btn-default.active{border-radius:0;background-color:#0bf!important}.frontend-button-group-context-colors>div,.frontend-button-group-context-size>div{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;min-height:75px}.frontend-button-group-context-colors .btn{-ms-flex-preferred-size:calc(25% - 4px);flex-basis:calc(25% - 4px)}@media (min-width:820px){.frontend-button-group-context-colors .btn{-ms-flex-preferred-size:calc(20% - 4px);flex-basis:calc(20% - 4px)}}.frontend-button-group-icons .icon,.frontend-grid-icons .icon{font-size:24px}.frontend-button-group-icons .icon-flex-align-center,.frontend-button-group-icons .icon-flex-align-end,.frontend-button-group-icons .icon-flex-align-start,.frontend-grid-icons .icon-flex-align-center,.frontend-grid-icons .icon-flex-align-end,.frontend-grid-icons .icon-flex-align-start{transform:scale(1.4)}.frontend-button-group-icons .icon-flex-content-around,.frontend-button-group-icons .icon-flex-content-between,.frontend-grid-icons .icon-flex-content-around,.frontend-grid-icons .icon-flex-content-between{transform:scale(1.6)}.frontend-button-group-icons .icon-flex-self-center,.frontend-button-group-icons .icon-flex-self-end,.frontend-button-group-icons .icon-flex-self-start,.frontend-grid-icons .icon-flex-self-center,.frontend-grid-icons .icon-flex-self-end,.frontend-grid-icons .icon-flex-self-start{transform:scale(1.4)}.frontend-button-group-icons .icon-align-reset,.frontend-button-group-icons .icon-no-selection,.frontend-grid-icons .icon-align-reset,.frontend-grid-icons .icon-no-selection{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-align-items-start,.frontend-button-group-icons .icon-flex-align-start,.frontend-grid-icons .icon-align-items-start,.frontend-grid-icons .icon-flex-align-start{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-align-items-center,.frontend-button-group-icons .icon-flex-align-center,.frontend-grid-icons .icon-align-items-center,.frontend-grid-icons .icon-flex-align-center{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-align-items-end,.frontend-button-group-icons .icon-flex-align-end,.frontend-grid-icons .icon-align-items-end,.frontend-grid-icons .icon-flex-align-end{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-flex-content-start,.frontend-button-group-icons .icon-justify-content-start,.frontend-button-group-icons .icon-start,.frontend-grid-icons .icon-flex-content-start,.frontend-grid-icons .icon-justify-content-start,.frontend-grid-icons .icon-start{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-center,.frontend-button-group-icons .icon-flex-content-center,.frontend-button-group-icons .icon-justify-content-center,.frontend-grid-icons .icon-center,.frontend-grid-icons .icon-flex-content-center,.frontend-grid-icons .icon-justify-content-center{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-end,.frontend-button-group-icons .icon-flex-content-end,.frontend-button-group-icons .icon-justify-content-end,.frontend-grid-icons .icon-end,.frontend-grid-icons .icon-flex-content-end,.frontend-grid-icons .icon-justify-content-end{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-flex-content-around,.frontend-button-group-icons .icon-justify-content-around,.frontend-grid-icons .icon-flex-content-around,.frontend-grid-icons .icon-justify-content-around{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.6)}.frontend-button-group-icons .icon-flex-content-between,.frontend-button-group-icons .icon-justify-content-between,.frontend-grid-icons .icon-flex-content-between,.frontend-grid-icons .icon-justify-content-between{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.6)}.frontend-button-group-icons .icon-nav-fill,.frontend-grid-icons .icon-nav-fill{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-nav-justified,.frontend-grid-icons .icon-nav-justified{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-flex-column,.frontend-grid-icons .icon-flex-column{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-align-self-start,.frontend-button-group-icons .icon-flex-self-start,.frontend-grid-icons .icon-align-self-start,.frontend-grid-icons .icon-flex-self-start{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-align-self-center,.frontend-button-group-icons .icon-flex-self-center,.frontend-grid-icons .icon-align-self-center,.frontend-grid-icons .icon-flex-self-center{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-align-self-end,.frontend-button-group-icons .icon-flex-self-end,.frontend-grid-icons .icon-align-self-end,.frontend-grid-icons .icon-flex-self-end{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16));transform:scale(1.4)}.frontend-button-group-icons .icon-size-sm,.frontend-button-group-icons .icon-size-xs,.frontend-button-group-icons .icon-sm,.frontend-button-group-icons .icon-xs,.frontend-grid-icons .icon-size-sm,.frontend-grid-icons .icon-size-xs,.frontend-grid-icons .icon-sm,.frontend-grid-icons .icon-xs{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-size-sm,.frontend-button-group-icons .icon-sm,.frontend-grid-icons .icon-size-sm,.frontend-grid-icons .icon-sm{transform:rotate(-90deg)}.frontend-button-group-icons .icon-md,.frontend-button-group-icons .icon-size-md,.frontend-grid-icons .icon-md,.frontend-grid-icons .icon-size-md{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-lg,.frontend-button-group-icons .icon-size-lg,.frontend-grid-icons .icon-lg,.frontend-grid-icons .icon-size-lg{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-size-xl,.frontend-button-group-icons .icon-xl,.frontend-grid-icons .icon-size-xl,.frontend-grid-icons .icon-xl{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-size-xxl,.frontend-button-group-icons .icon-xxl,.frontend-grid-icons .icon-size-xxl,.frontend-grid-icons .icon-xxl{background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 16))}.frontend-button-group-icons .icon-mb,.frontend-grid-icons .icon-mb{transform:scale(1.3);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-me,.frontend-grid-icons .icon-me{transform:scale(1.3);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-ms,.frontend-grid-icons .icon-ms{transform:scale(1.3);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-mt,.frontend-grid-icons .icon-mt{transform:scale(1.3);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-mx,.frontend-grid-icons .icon-mx{transform:scale(1.3);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-my,.frontend-grid-icons .icon-my{transform:scale(1.3);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-pb,.frontend-grid-icons .icon-pb{transform:scale(1.5);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-pe,.frontend-grid-icons .icon-pe{transform:scale(1.5);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-ps,.frontend-grid-icons .icon-ps{transform:scale(1.5);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-pt,.frontend-grid-icons .icon-pt{transform:scale(1.5);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-px,.frontend-grid-icons .icon-px{transform:scale(1.5);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.frontend-button-group-icons .icon-py,.frontend-grid-icons .icon-py{transform:scale(1.5);background-image:url('data:image/svg+xml;utf8,');filter:brightness(calc(var(--dca-light-mode, 1) + var(--dca-dark-mode, 0) * 100))}.icon-info{background-image:url('data:image/svg+xml;utf8,')}.module{margin:0 0 20px}.djangocms-frontend-row .form-row.field-create .icon{position:absolute;font-size:30px;margin-block-start:28px;margin-inline-start:4px}.djangocms-frontend-row .form-row.field-create input[name=create]{width:130px!important;padding-inline-end:5px!important;text-align:start}.djangocms-frontend-column .form-row.field-xs_col,.djangocms-frontend-column .form-row.field-xs_me,.djangocms-frontend-column .form-row.field-xs_ms,.djangocms-frontend-column .form-row.field-xs_offset,.djangocms-frontend-column .form-row.field-xs_order,.djangocms-frontend-row .form-row.field-row_cols_xs{position:relative;display:-ms-flexbox;display:flex;padding:0;min-width:800px}.djangocms-frontend-column .form-row.field-xs_col .field-box:first-child,.djangocms-frontend-column .form-row.field-xs_me .field-box:first-child,.djangocms-frontend-column .form-row.field-xs_ms .field-box:first-child,.djangocms-frontend-column .form-row.field-xs_offset .field-box:first-child,.djangocms-frontend-column .form-row.field-xs_order .field-box:first-child,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box:first-child{width:115px!important}.djangocms-frontend-column .form-row.field-xs_col .field-box,.djangocms-frontend-column .form-row.field-xs_col .fieldBox,.djangocms-frontend-column .form-row.field-xs_me .field-box,.djangocms-frontend-column .form-row.field-xs_me .fieldBox,.djangocms-frontend-column .form-row.field-xs_ms .field-box,.djangocms-frontend-column .form-row.field-xs_ms .fieldBox,.djangocms-frontend-column .form-row.field-xs_offset .field-box,.djangocms-frontend-column .form-row.field-xs_offset .fieldBox,.djangocms-frontend-column .form-row.field-xs_order .field-box,.djangocms-frontend-column .form-row.field-xs_order .fieldBox,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box,.djangocms-frontend-row .form-row.field-row_cols_xs .fieldBox{position:relative;box-sizing:content-box;width:86px!important;-ms-flex:none;flex:none;padding:15px 10px;margin:0!important;border-bottom:1px solid #eee;float:left!important}.djangocms-frontend-column .form-row.field-xs_col .field-box input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_col .fieldBox input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_me .field-box input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_me .fieldBox input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_ms .field-box input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_ms .fieldBox input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_offset .field-box input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_offset .fieldBox input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_order .field-box input:not([type=checkbox]),.djangocms-frontend-column .form-row.field-xs_order .fieldBox input:not([type=checkbox]),.djangocms-frontend-row .form-row.field-row_cols_xs .field-box input:not([type=checkbox]),.djangocms-frontend-row .form-row.field-row_cols_xs .fieldBox input:not([type=checkbox]){text-align:end;padding-inline-end:5px!important;box-sizing:border-box;width:100%}.djangocms-frontend-column .form-row.field-xs_col .field-box label,.djangocms-frontend-column .form-row.field-xs_col .fieldBox label,.djangocms-frontend-column .form-row.field-xs_me .field-box label,.djangocms-frontend-column .form-row.field-xs_me .fieldBox label,.djangocms-frontend-column .form-row.field-xs_ms .field-box label,.djangocms-frontend-column .form-row.field-xs_ms .fieldBox label,.djangocms-frontend-column .form-row.field-xs_offset .field-box label,.djangocms-frontend-column .form-row.field-xs_offset .fieldBox label,.djangocms-frontend-column .form-row.field-xs_order .field-box label,.djangocms-frontend-column .form-row.field-xs_order .fieldBox label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box label,.djangocms-frontend-row .form-row.field-row_cols_xs .fieldBox label{font-size:12px!important;font-weight:400!important;color:#ccc!important;position:absolute;inset-inline-start:15px;inset-block-end:17px;text-transform:lowercase}.djangocms-frontend-column .form-row.field-xs_col .field-box .disabled,.djangocms-frontend-column .form-row.field-xs_col .fieldBox .disabled,.djangocms-frontend-column .form-row.field-xs_me .field-box .disabled,.djangocms-frontend-column .form-row.field-xs_me .fieldBox .disabled,.djangocms-frontend-column .form-row.field-xs_ms .field-box .disabled,.djangocms-frontend-column .form-row.field-xs_ms .fieldBox .disabled,.djangocms-frontend-column .form-row.field-xs_offset .field-box .disabled,.djangocms-frontend-column .form-row.field-xs_offset .fieldBox .disabled,.djangocms-frontend-column .form-row.field-xs_order .field-box .disabled,.djangocms-frontend-column .form-row.field-xs_order .fieldBox .disabled,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box .disabled,.djangocms-frontend-row .form-row.field-row_cols_xs .fieldBox .disabled{color:#ccc;background:#eee}.djangocms-frontend-column .form-row.field-xs_col .field-box:last-child,.djangocms-frontend-column .form-row.field-xs_col .fieldBox:last-child,.djangocms-frontend-column .form-row.field-xs_me .field-box:last-child,.djangocms-frontend-column .form-row.field-xs_me .fieldBox:last-child,.djangocms-frontend-column .form-row.field-xs_ms .field-box:last-child,.djangocms-frontend-column .form-row.field-xs_ms .fieldBox:last-child,.djangocms-frontend-column .form-row.field-xs_offset .field-box:last-child,.djangocms-frontend-column .form-row.field-xs_offset .fieldBox:last-child,.djangocms-frontend-column .form-row.field-xs_order .field-box:last-child,.djangocms-frontend-column .form-row.field-xs_order .fieldBox:last-child,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box:last-child,.djangocms-frontend-row .form-row.field-row_cols_xs .fieldBox:last-child{border-inline-end:none}.djangocms-frontend-column .form-row.field-xs_col .errors,.djangocms-frontend-column .form-row.field-xs_me .errors,.djangocms-frontend-column .form-row.field-xs_ms .errors,.djangocms-frontend-column .form-row.field-xs_offset .errors,.djangocms-frontend-column .form-row.field-xs_order .errors,.djangocms-frontend-row .form-row.field-row_cols_xs .errors{margin-bottom:0}.djangocms-frontend-column .form-row.field-xs_col .errorlist,.djangocms-frontend-column .form-row.field-xs_me .errorlist,.djangocms-frontend-column .form-row.field-xs_ms .errorlist,.djangocms-frontend-column .form-row.field-xs_offset .errorlist,.djangocms-frontend-column .form-row.field-xs_order .errorlist,.djangocms-frontend-row .form-row.field-row_cols_xs .errorlist{position:absolute!important;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}.djangocms-frontend-column .form-row.field-xs_col.field-xs_me .field-box,.djangocms-frontend-column .form-row.field-xs_me.field-xs_me .field-box,.djangocms-frontend-column .form-row.field-xs_ms.field-xs_me .field-box,.djangocms-frontend-column .form-row.field-xs_offset.field-xs_me .field-box,.djangocms-frontend-column .form-row.field-xs_order.field-xs_me .field-box,.djangocms-frontend-row .form-row.field-row_cols_xs.field-xs_me .field-box{border-bottom:none}.djangocms-frontend-column .form-row.field-xs_col .field-box-label,.djangocms-frontend-column .form-row.field-xs_me .field-box-label,.djangocms-frontend-column .form-row.field-xs_ms .field-box-label,.djangocms-frontend-column .form-row.field-xs_offset .field-box-label,.djangocms-frontend-column .form-row.field-xs_order .field-box-label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box-label{display:-ms-flexbox;display:flex;margin-top:auto;color:#999}.djangocms-frontend-column .form-row.field-xs_col .field-box-label a,.djangocms-frontend-column .form-row.field-xs_me .field-box-label a,.djangocms-frontend-column .form-row.field-xs_ms .field-box-label a,.djangocms-frontend-column .form-row.field-xs_offset .field-box-label a,.djangocms-frontend-column .form-row.field-xs_order .field-box-label a,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box-label a{width:100%;margin-top:auto;color:#999}.djangocms-frontend-column .form-row.field-xs_col .field-box-label a a,.djangocms-frontend-column .form-row.field-xs_me .field-box-label a a,.djangocms-frontend-column .form-row.field-xs_ms .field-box-label a a,.djangocms-frontend-column .form-row.field-xs_offset .field-box-label a a,.djangocms-frontend-column .form-row.field-xs_order .field-box-label a a,.djangocms-frontend-row .form-row.field-row_cols_xs .field-box-label a a{width:100%;margin-top:auto}.djangocms-frontend-column .form-row.field-xs_col .field-lg_me,.djangocms-frontend-column .form-row.field-xs_col .field-lg_ms,.djangocms-frontend-column .form-row.field-xs_col .field-md_me,.djangocms-frontend-column .form-row.field-xs_col .field-md_ms,.djangocms-frontend-column .form-row.field-xs_col .field-sm_me,.djangocms-frontend-column .form-row.field-xs_col .field-sm_ms,.djangocms-frontend-column .form-row.field-xs_col .field-xl_me,.djangocms-frontend-column .form-row.field-xs_col .field-xl_ms,.djangocms-frontend-column .form-row.field-xs_col .field-xs_me,.djangocms-frontend-column .form-row.field-xs_col .field-xs_ms,.djangocms-frontend-column .form-row.field-xs_col .field-xxl_me,.djangocms-frontend-column .form-row.field-xs_col .field-xxl_ms,.djangocms-frontend-column .form-row.field-xs_me .field-lg_me,.djangocms-frontend-column .form-row.field-xs_me .field-lg_ms,.djangocms-frontend-column .form-row.field-xs_me .field-md_me,.djangocms-frontend-column .form-row.field-xs_me .field-md_ms,.djangocms-frontend-column .form-row.field-xs_me .field-sm_me,.djangocms-frontend-column .form-row.field-xs_me .field-sm_ms,.djangocms-frontend-column .form-row.field-xs_me .field-xl_me,.djangocms-frontend-column .form-row.field-xs_me .field-xl_ms,.djangocms-frontend-column .form-row.field-xs_me .field-xs_me,.djangocms-frontend-column .form-row.field-xs_me .field-xs_ms,.djangocms-frontend-column .form-row.field-xs_me .field-xxl_me,.djangocms-frontend-column .form-row.field-xs_me .field-xxl_ms,.djangocms-frontend-column .form-row.field-xs_ms .field-lg_me,.djangocms-frontend-column .form-row.field-xs_ms .field-lg_ms,.djangocms-frontend-column .form-row.field-xs_ms .field-md_me,.djangocms-frontend-column .form-row.field-xs_ms .field-md_ms,.djangocms-frontend-column .form-row.field-xs_ms .field-sm_me,.djangocms-frontend-column .form-row.field-xs_ms .field-sm_ms,.djangocms-frontend-column .form-row.field-xs_ms .field-xl_me,.djangocms-frontend-column .form-row.field-xs_ms .field-xl_ms,.djangocms-frontend-column .form-row.field-xs_ms .field-xs_me,.djangocms-frontend-column .form-row.field-xs_ms .field-xs_ms,.djangocms-frontend-column .form-row.field-xs_ms .field-xxl_me,.djangocms-frontend-column .form-row.field-xs_ms .field-xxl_ms,.djangocms-frontend-column .form-row.field-xs_offset .field-lg_me,.djangocms-frontend-column .form-row.field-xs_offset .field-lg_ms,.djangocms-frontend-column .form-row.field-xs_offset .field-md_me,.djangocms-frontend-column .form-row.field-xs_offset .field-md_ms,.djangocms-frontend-column .form-row.field-xs_offset .field-sm_me,.djangocms-frontend-column .form-row.field-xs_offset .field-sm_ms,.djangocms-frontend-column .form-row.field-xs_offset .field-xl_me,.djangocms-frontend-column .form-row.field-xs_offset .field-xl_ms,.djangocms-frontend-column .form-row.field-xs_offset .field-xs_me,.djangocms-frontend-column .form-row.field-xs_offset .field-xs_ms,.djangocms-frontend-column .form-row.field-xs_offset .field-xxl_me,.djangocms-frontend-column .form-row.field-xs_offset .field-xxl_ms,.djangocms-frontend-column .form-row.field-xs_order .field-lg_me,.djangocms-frontend-column .form-row.field-xs_order .field-lg_ms,.djangocms-frontend-column .form-row.field-xs_order .field-md_me,.djangocms-frontend-column .form-row.field-xs_order .field-md_ms,.djangocms-frontend-column .form-row.field-xs_order .field-sm_me,.djangocms-frontend-column .form-row.field-xs_order .field-sm_ms,.djangocms-frontend-column .form-row.field-xs_order .field-xl_me,.djangocms-frontend-column .form-row.field-xs_order .field-xl_ms,.djangocms-frontend-column .form-row.field-xs_order .field-xs_me,.djangocms-frontend-column .form-row.field-xs_order .field-xs_ms,.djangocms-frontend-column .form-row.field-xs_order .field-xxl_me,.djangocms-frontend-column .form-row.field-xs_order .field-xxl_ms,.djangocms-frontend-row .form-row.field-row_cols_xs .field-lg_me,.djangocms-frontend-row .form-row.field-row_cols_xs .field-lg_ms,.djangocms-frontend-row .form-row.field-row_cols_xs .field-md_me,.djangocms-frontend-row .form-row.field-row_cols_xs .field-md_ms,.djangocms-frontend-row .form-row.field-row_cols_xs .field-sm_me,.djangocms-frontend-row .form-row.field-row_cols_xs .field-sm_ms,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xl_me,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xl_ms,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xs_me,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xs_ms,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xxl_me,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xxl_ms{text-align:start}.djangocms-frontend-column .form-row.field-xs_col .field-lg_me label,.djangocms-frontend-column .form-row.field-xs_col .field-lg_ms label,.djangocms-frontend-column .form-row.field-xs_col .field-md_me label,.djangocms-frontend-column .form-row.field-xs_col .field-md_ms label,.djangocms-frontend-column .form-row.field-xs_col .field-sm_me label,.djangocms-frontend-column .form-row.field-xs_col .field-sm_ms label,.djangocms-frontend-column .form-row.field-xs_col .field-xl_me label,.djangocms-frontend-column .form-row.field-xs_col .field-xl_ms label,.djangocms-frontend-column .form-row.field-xs_col .field-xs_me label,.djangocms-frontend-column .form-row.field-xs_col .field-xs_ms label,.djangocms-frontend-column .form-row.field-xs_col .field-xxl_me label,.djangocms-frontend-column .form-row.field-xs_col .field-xxl_ms label,.djangocms-frontend-column .form-row.field-xs_me .field-lg_me label,.djangocms-frontend-column .form-row.field-xs_me .field-lg_ms label,.djangocms-frontend-column .form-row.field-xs_me .field-md_me label,.djangocms-frontend-column .form-row.field-xs_me .field-md_ms label,.djangocms-frontend-column .form-row.field-xs_me .field-sm_me label,.djangocms-frontend-column .form-row.field-xs_me .field-sm_ms label,.djangocms-frontend-column .form-row.field-xs_me .field-xl_me label,.djangocms-frontend-column .form-row.field-xs_me .field-xl_ms label,.djangocms-frontend-column .form-row.field-xs_me .field-xs_me label,.djangocms-frontend-column .form-row.field-xs_me .field-xs_ms label,.djangocms-frontend-column .form-row.field-xs_me .field-xxl_me label,.djangocms-frontend-column .form-row.field-xs_me .field-xxl_ms label,.djangocms-frontend-column .form-row.field-xs_ms .field-lg_me label,.djangocms-frontend-column .form-row.field-xs_ms .field-lg_ms label,.djangocms-frontend-column .form-row.field-xs_ms .field-md_me label,.djangocms-frontend-column .form-row.field-xs_ms .field-md_ms label,.djangocms-frontend-column .form-row.field-xs_ms .field-sm_me label,.djangocms-frontend-column .form-row.field-xs_ms .field-sm_ms label,.djangocms-frontend-column .form-row.field-xs_ms .field-xl_me label,.djangocms-frontend-column .form-row.field-xs_ms .field-xl_ms label,.djangocms-frontend-column .form-row.field-xs_ms .field-xs_me label,.djangocms-frontend-column .form-row.field-xs_ms .field-xs_ms label,.djangocms-frontend-column .form-row.field-xs_ms .field-xxl_me label,.djangocms-frontend-column .form-row.field-xs_ms .field-xxl_ms label,.djangocms-frontend-column .form-row.field-xs_offset .field-lg_me label,.djangocms-frontend-column .form-row.field-xs_offset .field-lg_ms label,.djangocms-frontend-column .form-row.field-xs_offset .field-md_me label,.djangocms-frontend-column .form-row.field-xs_offset .field-md_ms label,.djangocms-frontend-column .form-row.field-xs_offset .field-sm_me label,.djangocms-frontend-column .form-row.field-xs_offset .field-sm_ms label,.djangocms-frontend-column .form-row.field-xs_offset .field-xl_me label,.djangocms-frontend-column .form-row.field-xs_offset .field-xl_ms label,.djangocms-frontend-column .form-row.field-xs_offset .field-xs_me label,.djangocms-frontend-column .form-row.field-xs_offset .field-xs_ms label,.djangocms-frontend-column .form-row.field-xs_offset .field-xxl_me label,.djangocms-frontend-column .form-row.field-xs_offset .field-xxl_ms label,.djangocms-frontend-column .form-row.field-xs_order .field-lg_me label,.djangocms-frontend-column .form-row.field-xs_order .field-lg_ms label,.djangocms-frontend-column .form-row.field-xs_order .field-md_me label,.djangocms-frontend-column .form-row.field-xs_order .field-md_ms label,.djangocms-frontend-column .form-row.field-xs_order .field-sm_me label,.djangocms-frontend-column .form-row.field-xs_order .field-sm_ms label,.djangocms-frontend-column .form-row.field-xs_order .field-xl_me label,.djangocms-frontend-column .form-row.field-xs_order .field-xl_ms label,.djangocms-frontend-column .form-row.field-xs_order .field-xs_me label,.djangocms-frontend-column .form-row.field-xs_order .field-xs_ms label,.djangocms-frontend-column .form-row.field-xs_order .field-xxl_me label,.djangocms-frontend-column .form-row.field-xs_order .field-xxl_ms label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-lg_me label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-lg_ms label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-md_me label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-md_ms label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-sm_me label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-sm_ms label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xl_me label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xl_ms label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xs_me label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xs_ms label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xxl_me label,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xxl_ms label{inset-inline-start:30px;inset-block-start:14px}.djangocms-frontend-column .form-row.field-xs_col .field-lg_me input,.djangocms-frontend-column .form-row.field-xs_col .field-lg_ms input,.djangocms-frontend-column .form-row.field-xs_col .field-md_me input,.djangocms-frontend-column .form-row.field-xs_col .field-md_ms input,.djangocms-frontend-column .form-row.field-xs_col .field-sm_me input,.djangocms-frontend-column .form-row.field-xs_col .field-sm_ms input,.djangocms-frontend-column .form-row.field-xs_col .field-xl_me input,.djangocms-frontend-column .form-row.field-xs_col .field-xl_ms input,.djangocms-frontend-column .form-row.field-xs_col .field-xs_me input,.djangocms-frontend-column .form-row.field-xs_col .field-xs_ms input,.djangocms-frontend-column .form-row.field-xs_col .field-xxl_me input,.djangocms-frontend-column .form-row.field-xs_col .field-xxl_ms input,.djangocms-frontend-column .form-row.field-xs_me .field-lg_me input,.djangocms-frontend-column .form-row.field-xs_me .field-lg_ms input,.djangocms-frontend-column .form-row.field-xs_me .field-md_me input,.djangocms-frontend-column .form-row.field-xs_me .field-md_ms input,.djangocms-frontend-column .form-row.field-xs_me .field-sm_me input,.djangocms-frontend-column .form-row.field-xs_me .field-sm_ms input,.djangocms-frontend-column .form-row.field-xs_me .field-xl_me input,.djangocms-frontend-column .form-row.field-xs_me .field-xl_ms input,.djangocms-frontend-column .form-row.field-xs_me .field-xs_me input,.djangocms-frontend-column .form-row.field-xs_me .field-xs_ms input,.djangocms-frontend-column .form-row.field-xs_me .field-xxl_me input,.djangocms-frontend-column .form-row.field-xs_me .field-xxl_ms input,.djangocms-frontend-column .form-row.field-xs_ms .field-lg_me input,.djangocms-frontend-column .form-row.field-xs_ms .field-lg_ms input,.djangocms-frontend-column .form-row.field-xs_ms .field-md_me input,.djangocms-frontend-column .form-row.field-xs_ms .field-md_ms input,.djangocms-frontend-column .form-row.field-xs_ms .field-sm_me input,.djangocms-frontend-column .form-row.field-xs_ms .field-sm_ms input,.djangocms-frontend-column .form-row.field-xs_ms .field-xl_me input,.djangocms-frontend-column .form-row.field-xs_ms .field-xl_ms input,.djangocms-frontend-column .form-row.field-xs_ms .field-xs_me input,.djangocms-frontend-column .form-row.field-xs_ms .field-xs_ms input,.djangocms-frontend-column .form-row.field-xs_ms .field-xxl_me input,.djangocms-frontend-column .form-row.field-xs_ms .field-xxl_ms input,.djangocms-frontend-column .form-row.field-xs_offset .field-lg_me input,.djangocms-frontend-column .form-row.field-xs_offset .field-lg_ms input,.djangocms-frontend-column .form-row.field-xs_offset .field-md_me input,.djangocms-frontend-column .form-row.field-xs_offset .field-md_ms input,.djangocms-frontend-column .form-row.field-xs_offset .field-sm_me input,.djangocms-frontend-column .form-row.field-xs_offset .field-sm_ms input,.djangocms-frontend-column .form-row.field-xs_offset .field-xl_me input,.djangocms-frontend-column .form-row.field-xs_offset .field-xl_ms input,.djangocms-frontend-column .form-row.field-xs_offset .field-xs_me input,.djangocms-frontend-column .form-row.field-xs_offset .field-xs_ms input,.djangocms-frontend-column .form-row.field-xs_offset .field-xxl_me input,.djangocms-frontend-column .form-row.field-xs_offset .field-xxl_ms input,.djangocms-frontend-column .form-row.field-xs_order .field-lg_me input,.djangocms-frontend-column .form-row.field-xs_order .field-lg_ms input,.djangocms-frontend-column .form-row.field-xs_order .field-md_me input,.djangocms-frontend-column .form-row.field-xs_order .field-md_ms input,.djangocms-frontend-column .form-row.field-xs_order .field-sm_me input,.djangocms-frontend-column .form-row.field-xs_order .field-sm_ms input,.djangocms-frontend-column .form-row.field-xs_order .field-xl_me input,.djangocms-frontend-column .form-row.field-xs_order .field-xl_ms input,.djangocms-frontend-column .form-row.field-xs_order .field-xs_me input,.djangocms-frontend-column .form-row.field-xs_order .field-xs_ms input,.djangocms-frontend-column .form-row.field-xs_order .field-xxl_me input,.djangocms-frontend-column .form-row.field-xs_order .field-xxl_ms input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-lg_me input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-lg_ms input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-md_me input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-md_ms input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-sm_me input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-sm_ms input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xl_me input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xl_ms input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xs_me input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xs_ms input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xxl_me input,.djangocms-frontend-row .form-row.field-row_cols_xs .field-xxl_ms input{position:relative;box-sizing:border-box;top:-3px}.grid-reset{position:absolute;inset-inline-end:5px;inset-block-start:0}.icon-thead{text-align:center;margin-bottom:15px}.icon-thead .icon{font-size:30px}.icon-thead .icon-size-sm{transform:rotate(90deg)}.icon-title{display:block;font-size:12px;color:#999;padding:5px 0 0}.djangocms-frontend-preview{position:fixed;inset-block-start:0;inset-inline-end:0;z-index:10;text-align:center;border-radius:0 0 0 3px;padding:10px 20px 27px;border:1px solid var(--dca-gray,var(--hairline-color,#ccc));border-block-start:none;border-inline-end:none;background:var(--body-bg,#fff)}@media (prefers-color-scheme:dark){.djangocms-frontend-preview{background:var(--body-bg,#000)}}.djangocms-frontend-preview h2{font-size:14px;min-width:150px;margin:0 0 12px}.djangocms-frontend-preview .b4-preview{margin:0 0 -15px}.djangocms-frontend-preview .b4-close{position:absolute;inset-inline-end:10px;inset-block-start:8px;z-index:100;display:block;color:#5e5e5e;font-size:12px;line-height:20px;font-weight:700;text-transform:uppercase;width:20px;height:20px;border-radius:3px;background:#ddd}.djangocms-frontend-preview .b4-close:hover{color:#fff!important;text-decoration:none;background:#0bf}.djangocms-frontend-preview .btn>span{vertical-align:middle}.djangocms-frontend-preview .btn>span>.icon{vertical-align:middle}.djangocms-frontend-preview .btn>span svg,.djangocms-frontend-preview .btn>span use{fill:currentColor}.djangocms-frontend-blockquote textarea{height:110px}#id_link_type{padding:0;margin:0;border:none}#id_link_type li{padding:0;margin:0 15px 5px 0;border:none}#id_link_type label input{position:relative;top:-4px}a[data-pk]{position:relative}a[data-pk]:after{content:attr(data-pk);visibility:hidden;width:auto;font-weight:400;font-size:80%;background-color:var(--dca-white,var(--body-bg,#fff));color:var(--dca-gray,var(--body-fg,#333));border:solid 1px var(--dca-gray,var(--body-fg,#333));text-align:center;padding:5px 10px;position:absolute;z-index:1;top:110%;inset-inline-start:50%;margin-inline-start:-50%}a[data-pk]:hover:after{visibility:visible}.djangocms-admin-style .form-row.field-plugin_title input[name=plugin_title_0]{margin-bottom:.5em!important}.djangocms-admin-style .form-row.field-plugin_title input[name=plugin_title_1]{width:calc(100% - 2em)!important}body:not(.djangocms-admin-style) .form-row.field-plugin_title input[name=plugin_title_1]{width:calc(100% - 200px - 1em)!important;margin-inline-start:1em}.frontend-icon-picker{text-align:center;display:inline-block}.frontend-icon-picker .icon-container{position:relative;margin-bottom:.5em;margin-left:auto;margin-right:auto;width:7em;height:7em;border:1px var(--dca-gray-light,var(--border-color,#d3d3d3)) solid;transition:background-color .15s,color .15s}.frontend-icon-picker .icon-container .icon-preview{width:7em;height:7em;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}.frontend-icon-picker .icon-container .icon-preview .icon-box{font-size:500%;line-height:1.3;margin:0;text-align:center}.frontend-icon-picker .icon-container .icon-preview .icon-box i,.frontend-icon-picker .icon-container .icon-preview .icon-box span{font-size:unset}.frontend-icon-picker .icon-container .icon-preview .empty-box{text-align:center;overflow:hidden;text-overflow:ellipsis;line-height:1;font-size:100%}.frontend-icon-picker .icon-container .icon-preview .empty-box.hidden{display:none}.frontend-icon-picker .icon-container .icon-preview:hover{background:var(--dca-gray-light,var(--border-color,#d3d3d3));cursor:pointer}.frontend-icon-picker .icon-container .icon-close-indicator{display:block;border-radius:50%;color:var(--dca-black,var(--body-fg,#000));background-color:var(--dca-white,var(--body-bg,#fff));padding:.3rem;border:1px solid var(--dca-black,var(--body-fg,#000));transform:translate(-50%,-50%);top:0;inset-inline-start:100%;width:.6em;height:.6em;line-height:.5em;position:absolute;transition:background-color .15s}.frontend-icon-picker .icon-container .icon-close-indicator:before{content:"×"}.frontend-icon-picker .icon-container .icon-close-indicator:hover{background:var(--delete-button-bg,red);color:var(--delete-button-fg,#fff);cursor:pointer}.uip-modal{position:fixed;height:100%;width:100%;inset-block-end:0;inset-inline-start:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-ms-user-select:none;user-select:none;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.uip-modal *,.uip-modal :after,.uip-modal :before{box-sizing:border-box}.uip-modal.uip-close{opacity:0;visibility:hidden;transition:all .4s ease-in-out}.uip-modal.uip-open{opacity:1;visibility:visible;transition:all .4s ease-in-out}.uip-modal .uip-modal--content{position:absolute;border-radius:3px;box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:var(--dca-gray-lightest,var(--darkened-bg,#f8f8f8));width:100%;margin:auto;left:0;right:0;margin-bottom:2em}.uip-modal .uip-modal--content .uip-modal--header{padding:15px 15px;background-color:var(--dca-white,var(--bg-color,#fff));box-shadow:0 0 8px rgba(0,0,0,.1);position:relative;z-index:1;font-size:15px;color:var(--dca-gray,var(--body-quiet-color,#666));font-weight:500;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.uip-modal .uip-modal--content .uip-modal--header .uip-modal--header-logo-title{padding-top:2px;line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.uip-modal .uip-modal--content .uip-modal--header .uip-modal--header-close-btn{cursor:pointer}.uip-modal .uip-modal--content .uip-modal--body{font-size:12px;line-height:1.5;box-sizing:border-box;padding:0;height:70vh;display:-ms-flexbox;display:flex;min-height:50px;max-height:85vh;overflow:auto}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar{-ms-flex-negative:0;flex-shrink:0;max-width:25%}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs{margin-top:30px}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item{padding:15px;font-size:14px;color:var(--dca-gray,var(--body-quiet-color,#666));text-align:start;cursor:pointer;position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;text-transform:capitalize}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item i{font-size:20px;padding-inline-end:15px;color:var(--dca-gray-lighter,var(--border-color,#ccc))}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item img{padding-inline-end:15px}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item.universal-active{background-color:var(--dca-white,var(--bg-color,#fff));box-shadow:0 6px 20px 0 rgba(0,0,0,.1)}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item.universal-active:after{content:"";position:absolute;height:100%;width:5px;inset-block-start:0;inset-inline-start:0;background-color:#0bf}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item.universal-active i{color:#0bf}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--sidebar .uip-modal--sidebar-tabs .uip-modal--sidebar-tab-item:only-child{display:none}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding:30px 80px 0;width:100%}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner{overflow:auto;margin:25px -15px 0;padding:0 15px 15px}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview{display:-ms-grid;display:grid;grid-gap:20px;margin:20px 0}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item{position:relative;padding:10px;background-color:var(--dca-white,var(--bg-color,#fff));box-shadow:0 1px 12px rgba(0,0,0,.05);border-radius:3px;cursor:pointer;transition:all .3s;overflow:hidden}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item:hover{box-shadow:0 1px 14px rgba(0,0,0,.16)}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item.universal-selected{box-shadow:0 1px 12px rgba(0,0,0,.05),0 0 0 3px #0bf}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item .uip-icon-item-inner{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;padding:1px}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item .uip-icon-item-inner .uip-icon-item__icon,.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item .uip-icon-item-inner i{font-size:25px;color:var(--dca-gray-darkest,var(--body-fg,#333))}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-preview-inner .uip-modal--icon-preview .uip-icon-item .uip-icon-item-inner .uip-icon-item-name{color:var(--dca-gray,var(--body-quiet-color,#666));font-size:11px;padding:13px 0 0;max-width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;text-transform:capitalize}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-search{position:relative}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-search input{width:100%;padding:8px 15px;background-color:var(--dca-white,var(--bg-color,#fff));border:none}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-search input:-ms-input-placeholder{font-style:italic}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-search input::placeholder{font-style:italic}.uip-modal .uip-modal--content .uip-modal--body .uip-modal--icon-preview-wrap .uip-modal--icon-search img{position:absolute;top:50%;transform:translateY(-50%);inset-inline-end:10px}.uip-modal .uip-modal--footer{border-top:1px solid var(--dca-gray-lighter,var(--border-color,#ccc));text-align:center;background-color:var(--dca-white,var(--bg-color,#fff));border:none;display:none;-ms-flex-pack:end;justify-content:flex-end;padding:5px;box-shadow:0 0 8px rgba(0,0,0,.1);position:relative;display:-ms-flexbox;display:flex}.uip-modal .uip-modal--footer button.uip-insert-icon-button{padding:10px 35px!important;color:var(--dca-white,var(--bg-color,#fff))!important;background-color:#0bf!important;border:none;cursor:pointer;outline:0}.uip-modal .uip-modal--footer .universal-button{height:40px;margin-inline-start:5px}.uip-modal .uip-modal--footer .universal-button-success{padding:12px 36px;color:var(--dca-white,var(--bg-color,#fff));width:initial}.uip-modal .uip-modal--footer .universal-button-success:hover{background-color:#0bf}@media (min-width:1440px){body:not(.cms-admin-modal) .uip-modal .uip-modal--content{max-width:1200px}}@media (max-width:1439px){body:not(.cms-admin-modal) .uip-modal .uip-modal--content{max-width:990px}.uip-modal--icon-preview-wrap{padding:30px 50px 0}}@media (max-width:1023px){body:not(.cms-admin-modal) .uip-modal .uip-modal--content{max-width:740px}}@media (max-width:767px){.uip-modal--icon-preview-wrap{padding:15px!important}.uip-modal--sidebar{display:none}}@media (min-width:1440px){.uip-modal--icon-preview{-ms-grid-columns:(1fr)[7];grid-template-columns:repeat(7,1fr)}}@media (max-width:1439px){.uip-modal--icon-preview{-ms-grid-columns:(1fr)[6];grid-template-columns:repeat(6,1fr)}}@media (max-width:1024px){.uip-modal--icon-preview{-ms-grid-columns:(1fr)[5];grid-template-columns:repeat(5,1fr)}}@media (max-width:767px){.uip-modal--icon-preview{-ms-grid-columns:(1fr)[4];grid-template-columns:repeat(4,1fr)}}@media (max-width:479px){.uip-modal--icon-preview{-ms-grid-columns:(1fr)[3];grid-template-columns:repeat(3,1fr)}}@media (max-width:1439px){.uip-modal--sidebar-tab-item{padding:15px 15px 15px 25px;font-size:11px}.uip-modal--sidebar-tab-item i{font-size:15px}}@media (max-width:1024px){.uip-modal--sidebar-tab-item i,.uip-modal--sidebar-tab-item img{display:none}}.sr-only{position:absolute!important;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}ul.nav{margin-bottom:1em}ul.nav>li.nav-item{list-style-type:none;padding:inherit}.colM ul:not(.object-tools).nav{margin-top:0;margin-bottom:20px}ul.nav .nav-item{margin-inline-end:1rem}ul.nav .nav-link{position:relative;text-decoration:none}ul.nav .nav-link span.indicator{display:none;border-radius:50%;padding:.5rem;border:1px solid var(--dca-white,var(--body-bg,#fff));transform:translate(-50%,-50%);inset-block-start:0;inset-inline-start:100%;position:absolute}ul.nav .nav-link span.indicator.error{background-color:var(--bs-danger)}ul.nav .nav-link span.indicator.attributes{background-color:var(--bs-info);display:block}ul.nav .nav-link.error>span.indicator{display:block}ul.nav.nav-pills .nav-link:not(.active){border-style:solid;border-width:1px}body:not(.djangocms-admin-style) ul.djangocms-frontend.nav-tabs+div.tab-content .tab-pane{border-left-style:solid;border-bottom-style:solid;border-right-style:solid;border-left-color:var(--hairline-color);border-bottom-color:var(--hairline-color);border-right-color:var(--hairline-color);border-width:1px}body:not(.djangocms-admin-style) ul.djangocms-frontend.nav-tabs+div.tab-content .tab-pane fieldset:last-child{margin-bottom:0}div.tab-pk{-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center;color:var(--dca-gray-darker,var(--body-fg,#333));font-size:80%;margin-inline-start:auto}.djangocms-admin-style .colM ul.nav:not(.object-tools):not(.messagelist){margin-top:0}.djangocms-admin-style .colM ul.nav:not(.object-tools):not(.messagelist) li.nav-item{border-top:none}input[type=number].auto-field+span{display:none;position:absolute;inset-block-end:0;inset-inline-end:0;text-align:end;margin-inline-end:31px;margin-block-end:23px;cursor:pointer}body:not(.djangocms-admin-style) input[type=number].auto-field+span{margin-bottom:23px}@media (max-width:1024px){body:not(.djangocms-admin-style) input[type=number].auto-field+span{margin-bottom:24px}}input[type=number].auto-field+span:after{content:"auto"}input[type=number].auto-field.auto{color:var(--dca-white,var(--body-bg,#fff));caret-color:var(--dca-black,var(--body-fg,#000))}input[type=number].auto-field.auto+span{display:block}
\ No newline at end of file
diff --git a/djangocms_frontend/static/djangocms_frontend/css/button_group.css b/djangocms_frontend/static/djangocms_frontend/css/button_group.css
index 73d38d6c..1b89e0d8 100644
--- a/djangocms_frontend/static/djangocms_frontend/css/button_group.css
+++ b/djangocms_frontend/static/djangocms_frontend/css/button_group.css
@@ -5,4 +5,4 @@
/private/sass instead
*/
-form .form-row div.frontend-button-group.frontend-button-group-block{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}form .form-row div.frontend-button-group.frontend-button-group-block label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;-ms-flex-preferred-size:calc(25% - 6px);flex-basis:calc(25% - 6px)}@media (min-width:820px){form .form-row div.frontend-button-group.frontend-button-group-block label{-ms-flex-preferred-size:calc(20% - 6px);flex-basis:calc(20% - 6px)}}form .form-row div.frontend-button-group label.btn-grp{margin:3px;padding:4px 7px;text-transform:none;text-align:center!important;outline:2px solid transparent;width:auto!important;font-weight:400!important;display:inline-block}form .form-row div.frontend-button-group input[property=color]+label.btn-grp[style="--fe-value: ;"]{color:var(--dca-black,#333)!important}@media (prefers-color-scheme:dark){form .form-row div.frontend-button-group input[property=color]+label.btn-grp[style="--fe-value: ;"]{color:var(--dca-black,#eee)!important}}form .form-row div.frontend-button-group input[property=color][value=transparent]+label.btn-grp{color:var(--dca-black,#333)!important}@media (prefers-color-scheme:dark){form .form-row div.frontend-button-group input[property=color][value=transparent]+label.btn-grp{color:var(--dca-black,#eee)!important}}form .form-row div.frontend-button-group input[property=text]+label.btn-grp{color:var(--dca-black,#333)!important}@media (prefers-color-scheme:dark){form .form-row div.frontend-button-group input[property=text]+label.btn-grp{color:var(--dca-black,#eee)!important}}form .form-row div.frontend-button-group input[type=checkbox]:checked+label.btn-grp,form .form-row div.frontend-button-group input[type=radio]:checked+label.btn-grp{outline:2px solid #0bf;border-color:#fff;border-radius:0}form .form-row div.frontend-button-group input[property=icon]:checked+label.btn-grp,form .form-row div.frontend-button-group input[property=text]:checked+label.btn-grp{background:#0bf}form .form-row div.frontend-button-group input[property=opacity]+label.btn-grp{width:3.5em!important;padding-left:0!important;padding-right:0!important;color:var(--dca-black,#eee)!important;overflow:hidden;white-space:nowrap;background:rgba(var(--bs-secondary-rgb),calc(var(--fe-value)/ 100))}@media (prefers-color-scheme:light){form .form-row div.frontend-button-group input[property=opacity][value="10"]+label.btn-grp,form .form-row div.frontend-button-group input[property=opacity][value="25"]+label.btn-grp,form .form-row div.frontend-button-group input[property=opacity][value="50"]+label.btn-grp{color:#000!important}}form .form-row div.frontend-button-group input[property=link-size][value=btn-lg]+label.btn-grp{padding:.5rem 1rem!important;font-size:1.25rem;border-radius:.3rem}form .form-row div.frontend-button-group input[property=link-size][value=btn-sm]+label.btn-grp{padding:.25rem .5rem!important;font-size:.875rem;border-radius:.2rem}form .form-row div.frontend-button-group input[property=list_state]+label.btn-grp[style="--fe-value: ;"]{color:var(--dca-black,#333)!important}@media (prefers-color-scheme:dark){form .form-row div.frontend-button-group input[property=list_state]+label.btn-grp[style="--fe-value: ;"]{color:var(--dca-black,#eee)}}form .form-row div.frontend-button-group input[property=list_state][value=active]+label.btn-grp{background:var(--bs-primary);color:#fff}form .form-row div.frontend-button-group input[property=list_state][value=disabled]+label.btn-grp{color:var(--bs-gray-600)!important;background:#fff}form .form-row div.frontend-button-group input[property=shadow]+label.btn-grp{margin-right:1em;width:3.5em!important;padding-left:0!important;padding-right:0!important;background:var(--bs-secondary);color:#fff!important;text-align:center!important;border:var(--bs-secondary) 1px solid!important;overflow:hidden;white-space:nowrap}form .form-row div.frontend-button-group input[property=shadow][value=lg]+label.btn-grp{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}form .form-row div.frontend-button-group input[property=shadow][value=reg]+label.btn-grp{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}form .form-row div.frontend-button-group input[property=shadow][value=sm]+label.btn-grp{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}form .form-row div.frontend-button-group input[property=nav-design][value=light]+label.btn-grp{background:var(--bs-light);color:var(--bs-gray-900)!important}form .form-row div.frontend-button-group input[property=nav-design][value=dark]+label.btn-grp{background:var(--bs-dark);color:var(--bs-white)}form .form-row div.frontend-button-group .btn-white{background:#fff;color:#000!important}form .form-row div.frontend-button-group .btn-light{color:#000!important}form .form-row div.frontend-button-group .btn-dark{color:#fff!important}form .form-row div.frontend-button-group .btn-transparent{color:var(--dca-black,var(--body-fg,#000))}body:not(.djangocms-admin-style) .frontend-button-group .optgroup{clear:left}
\ No newline at end of file
+form .form-row div.frontend-button-group.frontend-button-group-block{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}form .form-row div.frontend-button-group.frontend-button-group-block label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;-ms-flex-preferred-size:calc(25% - 6px);flex-basis:calc(25% - 6px)}@media (min-width:820px){form .form-row div.frontend-button-group.frontend-button-group-block label{-ms-flex-preferred-size:calc(20% - 6px);flex-basis:calc(20% - 6px)}}form .form-row div.frontend-button-group label.btn-grp{margin:3px;padding:4px 7px;text-transform:none;text-align:center!important;outline:2px solid transparent;width:auto!important;font-weight:400!important;display:inline-block}form .form-row div.frontend-button-group input[property=color]+label.btn-grp[style="--fe-value: ;"]{color:var(--dca-black,#333)!important}@media (prefers-color-scheme:dark){form .form-row div.frontend-button-group input[property=color]+label.btn-grp[style="--fe-value: ;"]{color:var(--dca-black,#eee)!important}}form .form-row div.frontend-button-group input[property=color][value=transparent]+label.btn-grp{color:var(--dca-black,#333)!important}@media (prefers-color-scheme:dark){form .form-row div.frontend-button-group input[property=color][value=transparent]+label.btn-grp{color:var(--dca-black,#eee)!important}}form .form-row div.frontend-button-group input[property=text]+label.btn-grp{color:var(--dca-black,#333)!important}@media (prefers-color-scheme:dark){form .form-row div.frontend-button-group input[property=text]+label.btn-grp{color:var(--dca-black,#eee)!important}}form .form-row div.frontend-button-group input[type=checkbox]:checked+label.btn-grp,form .form-row div.frontend-button-group input[type=radio]:checked+label.btn-grp{outline:2px solid #0bf;border-color:#fff;border-radius:0}form .form-row div.frontend-button-group input[property=icon]:checked+label.btn-grp,form .form-row div.frontend-button-group input[property=text]:checked+label.btn-grp{background:#0bf}form .form-row div.frontend-button-group input[property=opacity]+label.btn-grp{width:3.5em!important;padding-inline-start:0!important;padding-inline-end:0!important;color:var(--dca-black,#eee)!important;overflow:hidden;white-space:nowrap;background:rgba(var(--bs-secondary-rgb),calc(var(--fe-value)/ 100))}@media (prefers-color-scheme:light){form .form-row div.frontend-button-group input[property=opacity][value="10"]+label.btn-grp,form .form-row div.frontend-button-group input[property=opacity][value="25"]+label.btn-grp,form .form-row div.frontend-button-group input[property=opacity][value="50"]+label.btn-grp{color:#000!important}}form .form-row div.frontend-button-group input[property=link-size][value=btn-lg]+label.btn-grp{padding:.5rem 1rem!important;font-size:1.25rem;border-radius:.3rem}form .form-row div.frontend-button-group input[property=link-size][value=btn-sm]+label.btn-grp{padding:.25rem .5rem!important;font-size:.875rem;border-radius:.2rem}form .form-row div.frontend-button-group input[property=list_state]+label.btn-grp[style="--fe-value: ;"]{color:var(--dca-black,#333)!important}@media (prefers-color-scheme:dark){form .form-row div.frontend-button-group input[property=list_state]+label.btn-grp[style="--fe-value: ;"]{color:var(--dca-black,#eee)}}form .form-row div.frontend-button-group input[property=list_state][value=active]+label.btn-grp{background:var(--bs-primary);color:#fff}form .form-row div.frontend-button-group input[property=list_state][value=disabled]+label.btn-grp{color:var(--bs-gray-600)!important;background:#fff}form .form-row div.frontend-button-group input[property=shadow]+label.btn-grp{margin-inline-end:1em;width:3.5em!important;padding-left:0!important;padding-right:0!important;background:var(--bs-secondary);color:#fff!important;text-align:center!important;border:var(--bs-secondary) 1px solid!important;overflow:hidden;white-space:nowrap}form .form-row div.frontend-button-group input[property=shadow][value=lg]+label.btn-grp{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}form .form-row div.frontend-button-group input[property=shadow][value=reg]+label.btn-grp{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}form .form-row div.frontend-button-group input[property=shadow][value=sm]+label.btn-grp{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}form .form-row div.frontend-button-group input[property=nav-design][value=light]+label.btn-grp{background:var(--bs-light);color:var(--bs-gray-900)!important}form .form-row div.frontend-button-group input[property=nav-design][value=dark]+label.btn-grp{background:var(--bs-dark);color:var(--bs-white)!important}form .form-row div.frontend-button-group .btn-white{background:#fff;color:#000!important}form .form-row div.frontend-button-group .btn-light{color:#000!important}form .form-row div.frontend-button-group .btn-dark{color:#fff!important}form .form-row div.frontend-button-group .btn-transparent{color:var(--dca-black,var(--body-fg,#000))}body:not(.djangocms-admin-style) .frontend-button-group .optgroup{clear:both}
\ No newline at end of file
diff --git a/djangocms_frontend/templates/bootstrap5/menu.html b/djangocms_frontend/templates/bootstrap5/menu.html
index 5193a5a1..22d6f201 100644
--- a/djangocms_frontend/templates/bootstrap5/menu.html
+++ b/djangocms_frontend/templates/bootstrap5/menu.html
@@ -1,12 +1,12 @@
{% load i18n menu_tags cache %}{% spaceless %}
{% for child in children %}
-
- {% if child.children %}{{ child.get_menu_title }}
+ {% if child.children %}{{ child.get_menu_title }}
{% show_menu from_level to_level extra_inactive extra_active "bootstrap5/dropdown.html" "" "" child %}
{% else %}
- {{ child.get_menu_title }}
+ {{ child.get_menu_title }}
{% endif %}
{% endfor %}
diff --git a/djangocms_frontend/templates/djangocms_frontend/admin/deprecated.html b/djangocms_frontend/templates/djangocms_frontend/admin/deprecated.html
new file mode 100644
index 00000000..02040806
--- /dev/null
+++ b/djangocms_frontend/templates/djangocms_frontend/admin/deprecated.html
@@ -0,0 +1,12 @@
+{% extends "djangocms_frontend/admin/base.html" %}
+{% load i18n %}
+{% block custom_class %}djangocms-frontend-deprecated{% endblock %}
+{% block content %}
+ {% blocktranslate %}
+ Deprecated
+ This plugin has been deprecated. It will be removed in a future version of djangocms-frontend.
+ It is a no-op.
+ To avoid an error message in the future, move all child plugins - if any - one level up and
+ delete this plugin.
+ {% endblocktranslate %}
+{% endblock %}
diff --git a/docs/source/components.rst b/docs/source/components.rst
index 33a60954..19acfe13 100644
--- a/docs/source/components.rst
+++ b/docs/source/components.rst
@@ -538,3 +538,20 @@ from their cdn
...,
}
+**********
+Navigation
+**********
+
+.. warning::
+
+ The navigation plugin is still experimental. We believe for most use
+ cases it is better to create custom navigation using the standard,
+ template-based django CMS template tags like ``show_menu``.
+
+ If your navigation deviates from you tree structure and needs to be managed
+ by hand, you may want to consider using the navigation plugin.
+
+The navigation plugin is a plugin that allows you to create a navigation. All navigation elements are
+child plugins of the navigation plugin: The navigation plugin itself is just a
+container for the navigation elements.
+
diff --git a/private/sass/base.scss b/private/sass/base.scss
index cc5e64e3..0762b1a8 100644
--- a/private/sass/base.scss
+++ b/private/sass/base.scss
@@ -31,11 +31,11 @@ ul.nav {
input[type="number"].auto-field + span {
display: none;
position: absolute;
- bottom: 0;
- right: 0;
- text-align: right;
- margin-right: 31px;
- margin-bottom: 23px;
+ inset-block-end: 0;
+ inset-inline-end: 0;
+ text-align: end;
+ margin-inline-end: 31px;
+ margin-block-end: 23px;
cursor: pointer;
}
diff --git a/private/sass/button_group.scss b/private/sass/button_group.scss
index 2e18a1cf..948f6b9e 100644
--- a/private/sass/button_group.scss
+++ b/private/sass/button_group.scss
@@ -69,8 +69,8 @@ form .form-row div.frontend-button-group {
input[property="opacity"] + label.btn-grp {
width: 3.5em !important;
- padding-left: 0 !important;
- padding-right: 0 !important;
+ padding-inline-start: 0 !important;
+ padding-inline-end: 0 !important;
color: var(--dca-black, $django-dark-color) !important;
overflow: hidden;
white-space: nowrap;
@@ -115,7 +115,7 @@ form .form-row div.frontend-button-group {
}
input[property="shadow"] + label.btn-grp {
- margin-right: 1em;
+ margin-inline-end: 1em;
width: 3.5em !important;
padding-left: 0 !important;
padding-right: 0 !important;
@@ -146,7 +146,7 @@ form .form-row div.frontend-button-group {
input[property="nav-design"][value="dark"] + label.btn-grp {
background: var(--bs-dark);
- color: var(--bs-white);
+ color: var(--bs-white) !important;
}
.btn-white {
@@ -168,5 +168,5 @@ form .form-row div.frontend-button-group {
}
body:not(.djangocms-admin-style) .frontend-button-group .optgroup {
- clear: left; // Bug in django 3.2?
+ clear: both; // Bug in django 3.2?
}
diff --git a/private/sass/components/_grid-layout.scss b/private/sass/components/_grid-layout.scss
index b8dd4ed1..642d93a7 100644
--- a/private/sass/components/_grid-layout.scss
+++ b/private/sass/components/_grid-layout.scss
@@ -8,14 +8,14 @@
.form-row.field-create .icon {
position: absolute;
font-size: 30px;
- margin-top: 28px;
- margin-left: 4px;
+ margin-block-start: 28px;
+ margin-inline-start: 4px;
}
.form-row.field-create input[name="create"] {
width: 130px !important;
- padding-right: 5px !important;
- text-align: right;
+ padding-inline-end: 5px !important;
+ text-align: start;
}
}
@@ -45,8 +45,8 @@
float: left !important;
input:not([type="checkbox"]) {
- text-align: right;
- padding-right: 5px !important;
+ text-align: end;
+ padding-inline-end: 5px !important;
box-sizing: border-box;
width: 100%;
}
@@ -56,8 +56,8 @@
font-weight: normal !important;
color: #ccc !important;
position: absolute;
- left: 15px;
- bottom: 17px;
+ inset-inline-start: 15px;
+ inset-block-end: 17px;
text-transform: lowercase;
}
@@ -67,7 +67,7 @@
}
&:last-child {
- border-right: none;
+ border-inline-end: none;
}
}
@@ -120,11 +120,11 @@
.field-lg_me,
.field-xl_me,
.field-xxl_me {
- text-align: left;
+ text-align: start;
label {
- left: 30px;
- bottom: 14px;
+ inset-inline-start: 30px;
+ inset-block-start: 14px;
}
input {
@@ -137,8 +137,8 @@
.grid-reset {
position: absolute;
- right: 5px;
- top: 0;
+ inset-inline-end: 5px;
+ inset-block-start: 0;
}
.icon-thead {
diff --git a/private/sass/components/_icon-picker.scss b/private/sass/components/_icon-picker.scss
index 92d7c492..d7815239 100644
--- a/private/sass/components/_icon-picker.scss
+++ b/private/sass/components/_icon-picker.scss
@@ -49,11 +49,11 @@
border-radius: 50%;
color: var(--dca-black, var(--body-fg, $black));
background-color: var(--dca-white, var(--body-bg, $white));
- padding: 0.5rem;
+ padding: 0.3rem;
border: 1px solid var(--dca-black, var(--body-fg, $black));
transform: translate(-50%, -50%);
top: 0;
- left: 100%;
+ inset-inline-start: 100%;
width: 0.6em;
height: 0.6em;
line-height: 0.5em;
@@ -79,8 +79,8 @@
position: fixed;
height: 100%;
width: 100%;
- bottom: 0;
- left: 0;
+ inset-block-end: 0;
+ inset-inline-start: 0;
background-color: rgba(0, 0, 0, 0.8);
z-index: 9999;
user-select: none;
@@ -168,7 +168,7 @@
padding: 15px;
font-size: 14px;
color: var(--dca-gray, var(--body-quiet-color, #666));
- text-align: left;
+ text-align: start;
cursor: pointer;
position: relative;
display: flex;
@@ -176,11 +176,11 @@
text-transform: capitalize;
i {
font-size: 20px;
- padding-right: 15px;
+ padding-inline-end: 15px;
color: var(--dca-gray-lighter, var(--border-color, #ccc));
}
img {
- padding-right: 15px;
+ padding-inline-end: 15px;
}
&.universal-active {
background-color: var(--dca-white, var(--bg-color, #fff));
@@ -191,8 +191,8 @@
position: absolute;
height: 100%;
width: 5px;
- top: 0;
- left: 0;
+ inset-block-start: 0;
+ inset-inline-start: 0;
background-color: $cms-primary;
}
i {
@@ -301,7 +301,7 @@
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
- right: 10px;
+ inset-inline-end: 10px;
}
}
}
@@ -332,7 +332,7 @@
}
.universal-button {
height: 40px;
- margin-left: 5px;
+ margin-inline-start: 5px;
}
.universal-button-success {
padding: 12px 36px;
diff --git a/private/sass/components/_icons.scss b/private/sass/components/_icons.scss
index 7e670457..3505a18c 100644
--- a/private/sass/components/_icons.scss
+++ b/private/sass/components/_icons.scss
@@ -45,5 +45,5 @@ $svg-colors: (
}
.djangocms-icon .caret {
- margin-left: 8px;
+ margin-inline-start: 8px;
}
diff --git a/private/sass/components/_preview-generator.scss b/private/sass/components/_preview-generator.scss
index 46c85dbe..9497349c 100644
--- a/private/sass/components/_preview-generator.scss
+++ b/private/sass/components/_preview-generator.scss
@@ -3,15 +3,15 @@
.djangocms-frontend-preview {
position: fixed;
- top: 0;
- right: 0;
+ inset-block-start: 0;
+ inset-inline-end: 0;
z-index: 10;
text-align: center;
border-radius: 0 0 0 3px;
padding: 10px 20px 27px;
border: 1px solid var(--dca-gray, var(--hairline-color, #ccc));
- border-top: none;
- border-right: none;
+ border-block-start: none;
+ border-inline-end: none;
background: var(--body-bg, white);
@media (prefers-color-scheme: dark) {
background: var(--body-bg, black);
@@ -29,8 +29,8 @@
.b4-close {
position: absolute;
- right: 10px;
- top: 8px;
+ inset-inline-end: 10px;
+ inset-block-start: 8px;
z-index: 100;
display: block;
color: darken($cms-gray, 50%);
diff --git a/private/sass/components/_tabs.scss b/private/sass/components/_tabs.scss
index 7ef70838..1be37e14 100644
--- a/private/sass/components/_tabs.scss
+++ b/private/sass/components/_tabs.scss
@@ -5,7 +5,7 @@
ul.nav {
.nav-item {
- margin-right: 1rem;
+ margin-inline-end: 1rem;
}
// margin-bottom: 0;
.nav-link {
@@ -28,8 +28,8 @@ ul.nav {
padding: 0.5rem;
border: 1px solid var(--dca-white, var(--body-bg, $white));
transform: translate(-50%, -50%);
- top: 0;
- left: 100%;
+ inset-block-start: 0;
+ inset-inline-start: 100%;
position: absolute;
}
@@ -62,7 +62,7 @@ div.tab-pk {
align-self: center;
color: var(--dca-gray-darker, var(--body-fg, $django-fg));
font-size: 80%;
- margin-left: auto;
+ margin-inline-start: auto;
}
.djangocms-admin-style .colM ul.nav:not(.object-tools):not(.messagelist) {
diff --git a/private/sass/components/_title.scss b/private/sass/components/_title.scss
index 7c236643..130558e2 100644
--- a/private/sass/components/_title.scss
+++ b/private/sass/components/_title.scss
@@ -11,6 +11,6 @@
body:not(.djangocms-admin-style) .form-row.field-plugin_title {
input[name="plugin_title_1"] {
width: calc(100% - 200px - 1em) !important;
- margin-left: 1em;
+ margin-inline-start: 1em;
}
}
diff --git a/private/sass/components/_tooltip.scss b/private/sass/components/_tooltip.scss
index e111c9af..fd05f610 100644
--- a/private/sass/components/_tooltip.scss
+++ b/private/sass/components/_tooltip.scss
@@ -15,8 +15,8 @@ a[data-pk] {
position: absolute;
z-index: 1;
top: 110%;
- left: 50%;
- margin-left: -50%;
+ inset-inline-start: 50%;
+ margin-inline-start: -50%;
}
&:hover:after {
diff --git a/tests/navigation/test_plugins.py b/tests/navigation/test_plugins.py
index d7e335e5..0677c2e0 100644
--- a/tests/navigation/test_plugins.py
+++ b/tests/navigation/test_plugins.py
@@ -2,13 +2,11 @@
from cms.test_utils.testcases import CMSTestCase
from djangocms_frontend.contrib.navigation.cms_plugins import (
- NavContainerPlugin,
NavigationPlugin,
NavLinkPlugin,
PageTreePlugin,
)
from djangocms_frontend.contrib.navigation.forms import (
- NavContainerForm,
NavigationForm,
NavLinkForm,
PageTreeForm,
@@ -48,32 +46,16 @@ def test_plugin(self):
or ''
in response.content.decode("utf-8")
)
- self.assertContains(response, '
')
-
- # add more options
- container = add_plugin(
- placeholder=self.placeholder,
- plugin_type=NavContainerPlugin.__name__,
- target=nav,
- language=self.language,
- config=dict(),
- )
- container.initialize_from_form(NavContainerForm).save()
- self.publish(self.page, self.language)
-
- with self.login_user_context(self.superuser):
- response = self.client.get(self.request_url)
-
- self.assertEqual(response.status_code, 200)
- self.assertContains(response, '
')
- self.assertContains(response, '